DB2 - Ruoli

introduzione

Un ruolo è un oggetto di database che raggruppa più privilegi che possono essere assegnati a utenti, gruppi, PUBLIC o altri ruoli utilizzando l'istruzione GRANT.

Restrizioni sui ruoli

  • Un ruolo non può possedere oggetti di database.
  • Le autorizzazioni ei ruoli concessi ai gruppi non vengono considerati quando si creano i seguenti oggetti di database.
    • Pacchetto contenente SQL statico
    • Views
    • Tabelle di query materializzate (MQT)
    • Triggers
    • Routine SQL

Creazione e concessione di appartenenza a ruoli

Syntax: [Per creare un nuovo ruolo]

db2 create role <role_name>

Example: [Per creare un nuovo ruolo denominato "vendite" per aggiungere una tabella che deve essere gestita da qualche utente o gruppo]

db2 create role sales

Output:

DB20000I The SQL command completed successfully.

Concessione del ruolo da DBADM a una determinata tabella

Syntax: [Per concedere l'autorizzazione di un ruolo a una tabella]

db2 grant select on table <table_name> to role <role_name>

Example: [Per aggiungere l'autorizzazione a gestire una tabella "shope.books" al ruolo "vendite"]

db2 grant select on table shope.books to role sales

Output:

DB20000I  The SQL command completed successfully.

L'amministratore della sicurezza concede il ruolo agli utenti richiesti. (Prima di utilizzare questo comando, è necessario creare gli utenti.)

Syntax: [Per aggiungere utenti a un ruolo]

db2 grant role <role_name> to user <username>

Example: [Per aggiungere un utente "mastanvali" a un ruolo "vendite"]

db2 grant sales to user mastanvali

Output:

DB20000I  The SQL command completed successfully.

Gerarchie dei ruoli

Per la creazione di gerarchie per i ruoli, a ogni ruolo vengono concesse autorizzazioni / appartenenza a un altro ruolo.

Syntax: [prima di questa sintassi creare un nuovo ruolo con il nome di "produzione"]

db2 grant role <roll_name> to role <role_name>

Example: [Per fornire l'autorizzazione di un ruolo "vendite" a un altro ruolo "produzione"]

db2 grant sales to role production