Názor ke článku Chystá se Firebird 2.0.1 RC2 a 2.1 Preview od Pavel Císař - AD 1.Je ve Firebirdu2 mozne dat uzivateli (jinemu...

  • 2. 3. 2007 14:34

    Pavel Císař (neregistrovaný)

    AD 1.Je ve Firebirdu2 mozne dat uzivateli (jinemu nez SYSDBA) prava na pridavani dalsich uzivatelu do databaze? Ve verzi 1.x nebyl problem, proste se zmenily prava v security.fdb, ale od verze 2.0 je je security.fdb nepristupna. Je nejake reseni?

    Možné to samozřejmě je. Firebird se brání otevřít pouze aktuálně používanou bezpečnostní databázi. Stačí tedy provést následující:

    a) Přidat pomocí gsec uživatele, který má mít právo ostatní uživatele přidávat (např. USER1).
    b) Shodit Firebird.
    c) Překopírovat aktuální bezpečnostní databázi někam jinam.
    d) Nahodit Firebird.
    e) Připojit se ke kopii bezpečnostní databáze a provést:
    grant insert on users to USER1;
    a doporučuji i upravit definici VIEW USERS tak, aby WHERE podmínka zahrnovala i tohoto uživatele.
    f) Shodit Firebird.
    g) Zazálohovat bezpečnostní databázi a nahradit ji upravenou kopií.
    h) Nahodit Firebird.

    Možnost přidávat nové uživatele můžete snadno ověřit pomocí gsec.

    AD 2.Druhy dotaz je zrejme spolecny i pro verzi 1.x. Kterou rdb$ tabulku (resp. jeji sloupec) musim modifikovat, abych dovolil uzivateli (jinemu nez SYSDBA) provest ALTER TABLE na jinou tabulku? Proste chci mit moznost, aby si nekteri uzivatele mohli pridavat a mazat sloupce z jedne konkretni tabulky.

    Tak tohle pokud vím standard vůbec neumožňuje. Jediný kdo může měnit objekt (např. definici tabulky) je administrátor a vlastník objektu (uživatel, pod jehož účtem byl vytvořen).