Forum Delphi.cz

Databáze => Firebird a Interbase => Téma založeno: Stanislav Hruška 29-07-2021, 10:39:49

Název: Role pre Trigger
Přispěvatel: Stanislav Hruška 29-07-2021, 10:39:49
Vidím nastavenie práv len pre tabuľky a generátory. Pre spúšte nič také neviem nájsť. Existuje to tu?
Teraz som pre daný účel nastavil, že s vybranými tabuľkami nemôže užívateľ nič robiť.
Název: Re:Role pre Trigger
Přispěvatel: vandrovnik 29-07-2021, 12:50:25
Myslím, že pro triggery se práva nenastavují. Ale pokud trigger třeba dělá INSERT do jiné tabulky, potřebuje uživatel nebo jeho role mít právo i k oné tabulce, do které se dělá ten INSERT (podobně i SELECT atd.).
Název: Re:Role pre Trigger
Přispěvatel: Stanislav Hruška 29-07-2021, 14:11:37
Myslím, že pro triggery se práva nenastavují. Ale pokud trigger třeba dělá INSERT do jiné tabulky, potřebuje uživatel nebo jeho role mít právo i k oné tabulce, do které se dělá ten INSERT (podobně i SELECT atd.).
Je to tak. Aj som to tak urobil.
Název: Re:Role pre Trigger
Přispěvatel: Palino 03-08-2021, 09:27:18
Podla vsetkeho triggre maju opravnenia:


GRANT SELECT, INSERT, UPDATE ON TABLE TO TRIGGER XXXX
Název: Re:Role pre Trigger
Přispěvatel: Stanislav Hruška 03-08-2021, 10:06:35
Pre verziu 3 a nižšie určite nie.
Ako a kde si sa dostal k danému oprávneniu?
Môj/e DB manager/y ponúka možnosti podľa obrázka
Název: Re:Role pre Trigger
Přispěvatel: pepak 04-08-2021, 07:39:44
Pre verziu 3 a nižšie určite nie.
I verze 2.1 ten příkaz bez řečí přijme, takže očekávám, že by ho mohla umět i provést.

Citace
Môj/e DB manager/y ponúka možnosti podľa obrázka
Tvrdit, co databáze umí, na základě toho, co ti nabízí tvůj DB Manager, je hodně odvážné. O jídle také budeš prohlašovat, jestli je dobré nebo nedobré, na základě toho, jak chutná tvému křečkovi?
Název: Re:Role pre Trigger
Přispěvatel: pepak 04-08-2021, 07:41:00
Kromě toho tvůj výpis podle všeho ukazuje, k jakému objektu lze určit přístupy, ne který objekt může dostat přístupy. Je logické, že v takovém výpisu trigger nebude, protože k triggeru nikdy nepřistupuješ přímo.
Název: Re:Role pre Trigger
Přispěvatel: Palino 04-08-2021, 07:42:52
Vyskusal si alebo len namietas?

FB25_language_Reference -> Statements for Granting Privileges:

GRANT {
<privileges> ON
{tablename | viewname}
| EXECUTE ON PROCEDURE procname
}
TO <grantee_list>
[WITH GRANT OPTION]} | [{GRANTED BY | AS} [USER] grantor];
GRANT <role_granted>
TO <role_grantee_list> [WITH ADMIN OPTION]
[{GRANTED BY | AS} [USER] grantor]
<privileges> ::= ALL [PRIVILEGES] | <privilege_list>
<privilege_list> ::= {<privilege> [, <privilege> [, … ] ] }
<privilege> ::=
SELECT |
DELETE |
INSERT |
UPDATE [(col [, col [, …] ] ) ] |
REFERENCES (col [, …])
<grantee_list> ::= {<grantee> [, <grantee> [, …] ]}
<grantee> ::=
[USER] username | [ROLE] rolename | GROUP Unix_group
| PROCEDURE procname | TRIGGER trigname | VIEW viewname | PUBLIC
<role_granted> ::= rolename [, rolename …]
<role_grantee_list> ::= [USER] <role_grantee> [,[USER] <role_grantee> [, …]]
<role_grantee> ::= {username | PUBLIC }
Název: Re:Role pre Trigger
Přispěvatel: pf1957 04-08-2021, 08:44:11
Kromě toho tvůj výpis podle všeho ukazuje, k jakému objektu lze určit přístupy, ne který objekt může dostat přístupy. Je logické, že v takovém výpisu trigger nebude, protože k triggeru nikdy nepřistupuješ přímo.
Me po precteni jednim okem neni jasne, o jaka prava se v dotazu jedna:

* to, co se tu popisuje, dava prava triggeru manipulovat data na urovni DML tj. menit obsah tabulky, spoustet SP.
* druha vec je na urovni DDL tj. metadata privilegs ke create, drop, alter trigger.
Název: Re:Role pre Trigger
Přispěvatel: Stanislav Hruška 04-08-2021, 09:20:49
Citace
Vyskusal si alebo len namietas?
Skúšať som neskúšal. Nevedel som ako. Na vysvetlenie: ja som len taký lepič kódu, nie programátor. Nenamietam. Jednoducho chcem o tom vedieť viac.
Dôvody prečo som tvrdil, že to nejde:
Citace
Me po precteni jednim okem neni jasne, o jaka prava se v dotazu jedna:
* to, co se tu popisuje, dava prava triggeru manipulovat data na urovni DML tj. menit obsah tabulky, spoustet SP.
* druha vec je na urovni DDL tj. metadata privilegs ke create, drop, alter trigger.
O tie prvé. Vyprázdniť tabuľku a znova ju naplniť.