Stored procedure per la concessione e la revoca dei privilegi per RDS per Db2 - Amazon Relational Database Service

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

Stored procedure per la concessione e la revoca dei privilegi per RDS per Db2

Le stored procedure integrate descritte in questo argomento gestiscono utenti, ruoli, gruppi e autorizzazioni per i database Amazon RDS per Db2. Per eseguire queste procedure, l’utente master deve prima connettersi al database rdsadmin.

Per le attività che utilizzano queste stored procedure, consulta Concessione e revoca dei privilegi e Configurazione dell’autenticazione Kerberos.

Fai riferimento alle seguenti stored procedure integrate per informazioni sulla sintassi, i parametri, le note per l’utilizzo e gli esempi.

rdsadmin.create_role

Crea un ruolo.

Sintassi

db2 "call rdsadmin.create_role( 'database_name', 'role_name')"

Parametri

I parametri seguenti sono obbligatori:

database_name

Il nome del database su cui verrà eseguito il comando. Il tipo di dati è varchar.

role_name

Il nome del ruolo da creare. Il tipo di dati è varchar.

Note per l'utilizzo

Per informazioni su come verificare lo stato della creazione di un ruolo, consulta rdsadmin.get_task_status.

Esempi

L’esempio seguente crea un ruolo denominato MY_ROLE per il database DB2DB.

db2 "call rdsadmin.create_role( 'DB2DB', 'MY_ROLE')"

rdsadmin.grant_role

Assegna un ruolo a un ruolo, a un utente o a un gruppo.

Sintassi

db2 "call rdsadmin.grant_role( ?, 'database_name', 'role_name', 'grantee', 'admin_option')"

Parametri

Il parametro di output seguente è obbligatorio:

?

Un indicatore di parametro che restituisce l’identificatore univoco dell’attività. Questo parametro accetta solo ?.

I parametri di input seguenti sono obbligatori:

database_name

Il nome del database su cui verrà eseguito il comando. Il tipo di dati è varchar.

role_name

Il nome del ruolo da creare. Il tipo di dati è varchar.

grantee

Il ruolo, l’utente o il gruppo che riceverà l’autorizzazione. Il tipo di dati è varchar. Valori validi: ROLE, USER, GROUP, PUBLIC.

Il formato deve essere un valore seguito dal nome. Per separare più valori e nomi, utilizza le virgole. Esempio: 'USER user1, user2, GROUP group1, group2'. Sostituisci i nomi con le tue informazioni.

Il parametro di input seguente è facoltativo:

admin_option

Specifica se l’assegnatario ROLE dispone dell’autorizzazione DBADM per assegnare ruoli. Il tipo di dati è char. Il valore predefinito è N.

Note per l'utilizzo

Per informazioni su come verificare lo stato dell’assegnazione di un ruolo, consulta rdsadmin.get_task_status.

Esempi

Esempio 1: assegnazione di un ruolo a un ruolo, a un utente e a un gruppo e concessione dell’autorizzazione

L’esempio seguente assegna un ruolo denominato ROLE_TEST per il database TESTDB al ruolo role1, all’utente user1 e al gruppo group1. ROLE_TEST riceve l’autorizzazione di amministratore per l’assegnazione di ruoli.

db2 "call rdsadmin.grant_role( ?, 'TESTDB', 'ROLE_TEST', 'ROLE role1, USER user1, GROUP group1', 'Y')"

Esempio 2: assegnazione di un ruolo a PUBLIC senza concessione dell’autorizzazione

L’esempio seguente assegna un ruolo denominato ROLE_TEST per il database TESTDB a PUBLIC. ROLE_TEST non riceve l’autorizzazione di amministratore per l’assegnazione di ruoli.

db2 "call rdsadmin.grant_role( ?, 'TESTDB', 'ROLE_TEST', 'PUBLIC')"

rdsadmin.revoke_role

Revoca un ruolo a un ruolo, a un utente o a un gruppo.

Sintassi

db2 "call rdsadmin.revoke_role( ?, 'database_name', 'role_name', 'grantee')"

Parametri

Il parametro di output seguente è obbligatorio:

?

Un indicatore di parametro che restituisce l’identificatore univoco dell’attività. Questo parametro accetta solo ?.

I parametri di input seguenti sono obbligatori:

database_name

Il nome del database su cui verrà eseguito il comando. Il tipo di dati è varchar.

role_name

Il nome del ruolo da revocare. Il tipo di dati è varchar.

grantee

Il ruolo, l’utente o il gruppo che perderà l’autorizzazione. Il tipo di dati è varchar. Valori validi: ROLE, USER, GROUP, PUBLIC.

Il formato deve essere un valore seguito dal nome. Per separare più valori e nomi, utilizza le virgole. Esempio: 'USER user1, user2, GROUP group1, group2'. Sostituisci i nomi con le tue informazioni.

Note per l'utilizzo

Per informazioni su come verificare lo stato della revoca di un ruolo, consulta rdsadmin.get_task_status.

Esempi

Esempio 1: revoca di un ruolo a un ruolo, a un utente e a un gruppo

L’esempio seguente revoca un ruolo denominato ROLE_TEST per il database TESTDB al ruolo role1, all’utente user1 e al gruppo group1.

db2 "call rdsadmin.revoke_role( ?, 'TESTDB', 'ROLE_TEST', 'ROLE role1, USER user1, GROUP group1')"

Esempio 2: revoca del ruolo a PUBLIC

L’esempio seguente revoca un ruolo denominato ROLE_TEST per il database TESTDB a PUBLIC.

db2 "call rdsadmin.revoke_role( ?, 'TESTDB', 'ROLE_TEST', 'PUBLIC')"

rdsadmin.drop_role

Elimina un ruolo.

Sintassi

db2 "call rdsadmin.drop_role( ?, 'database_name', 'role_name')"

Parametri

Il parametro di output seguente è obbligatorio:

?

Un indicatore di parametro che restituisce l’identificatore univoco dell’attività. Questo parametro accetta solo ?.

I parametri di input seguenti sono obbligatori:

database_name

Il nome del database su cui verrà eseguito il comando. Il tipo di dati è varchar.

role_name

Il nome del ruolo da eliminare. Il tipo di dati è varchar.

Note per l'utilizzo

Per informazioni su come verificare lo stato dell’eliminazione di un ruolo, consulta rdsadmin.get_task_status.

Esempi

L’esempio seguente elimina un ruolo denominato ROLE_TEST per il database TESTDB.

db2 "call rdsadmin.drop_role( ?, 'TESTDB', 'ROLE_TEST')"

rdsadmin.add_user

Aggiunge un utente a un elenco di autorizzazioni.

Sintassi

db2 "call rdsadmin.add_user( 'username', 'password', 'group_name,group_name')"

Parametri

I parametri seguenti sono obbligatori:

username

Il nome utente dell’utente. Il tipo di dati è varchar.

password

La password dell’utente. Il tipo di dati è varchar.

Il parametro seguente è facoltativo:

group_name

Il nome di un gruppo a cui aggiungere l’utente. Il tipo di dati è varchar. L’impostazione predefinita è una stringa vuota o null.

Note per l'utilizzo

Per aggiungere un utente a uno o più gruppi, separa i nomi dei gruppi con virgole.

Puoi creare un gruppo quando crei un nuovo utente o quando aggiungi un gruppo a un utente esistente. Non puoi creare un gruppo da solo.

Nota

Il numero massimo di utenti che puoi aggiungere chiamando rdsadmin.add_user è 5.000.

Per informazioni su come verificare lo stato dell’aggiunta di un utente, consulta rdsadmin.get_task_status.

Esempi

L’esempio seguente crea un utente denominato jorge_souza e assegna l’utente ai gruppi sales e inside_sales.

db2 "call rdsadmin.add_user( 'jorge_souza', '*******', 'sales,inside_sales')"

rdsadmin.change_password

Modifica la password di un utente.

Sintassi

db2 "call rdsadmin.change_password( 'username', 'new_password')"

Parametri

I parametri seguenti sono obbligatori:

username

Il nome utente dell’utente. Il tipo di dati è varchar.

new_password

La nuova password per l’utente. Il tipo di dati è varchar.

Note per l'utilizzo

Per informazioni su come verificare lo stato della modifica di una password, consulta rdsadmin.get_task_status.

Esempi

L’esempio seguente modifica la password per jorge_souza.

db2 "call rdsadmin.change_password( 'jorge_souza', '*******')"

rdsadmin.list_users

Inserisce gli utenti in un elenco di autorizzazioni.

Sintassi

db2 "call rdsadmin.list_users()"

Note per l'utilizzo

Per informazioni su come verificare lo stato dell’inserimento di utenti in un elenco, consulta rdsadmin.get_task_status.

rdsadmin.remove_user

Rimuove un utente dall’elenco di autorizzazioni.

Sintassi

db2 "call rdsadmin.remove_user('username')"

Parametri

Il parametro seguente è obbligatorio:

username

Il nome utente dell’utente. Il tipo di dati è varchar.

Note per l'utilizzo

Per informazioni su come verificare lo stato della rimozione di un utente, consulta rdsadmin.get_task_status.

Esempi

L’esempio seguente impedisce a jorge_souza di accedere ai database nelle istanze database RDS per Db2.

db2 "call rdsadmin.remove_user('jorge_souza')"

rdsadmin.add_groups

Aggiunge gruppi a un utente.

Sintassi

db2 "call rdsadmin.add_groups( 'username', 'group_name,group_name')"

Parametri

I parametri seguenti sono obbligatori:

username

Il nome utente dell’utente. Il tipo di dati è varchar.

group_name

Il nome di un gruppo a cui aggiungere l’utente. Il tipo di dati è varchar. L'impostazione predefinita è una stringa vuota.

Note per l'utilizzo

Per aggiungere uno o più gruppi a un utente, separa i nomi dei gruppi con virgole. Per informazioni su come verificare lo stato dell’aggiunta di gruppi, consulta rdsadmin.get_task_status.

Esempi

L’esempio seguente aggiunge i gruppi direct_sales e b2b_sales all’utente jorge_souza.

db2 "call rdsadmin.add_groups( 'jorge_souza', 'direct_sales,b2b_sales')"

rdsadmin.remove_groups

Rimuove gruppi da un utente.

Sintassi

db2 "call rdsadmin.remove_groups( 'username', 'group_name,group_name')"

Parametri

I parametri seguenti sono obbligatori:

username

Il nome utente dell’utente. Il tipo di dati è varchar.

group_name

Il nome di un gruppo da cui rimuovere l’utente. Il tipo di dati è varchar.

Note per l'utilizzo

Per rimuovere uno o più gruppi da un utente, separa i nomi dei gruppi con virgole.

Per informazioni su come verificare lo stato della rimozione di gruppi, consulta rdsadmin.get_task_status.

Esempi

L’esempio seguente rimuove i gruppi direct_sales e b2b_sales dall’utente jorge_souza.

db2 "call rdsadmin.remove_groups( 'jorge_souza', 'direct_sales,b2b_sales')"

rdsadmin.dbadm_grant

Concede l’autorizzazione DBADM, ACCESSCTRL o DATAACCESS a un ruolo, a un utente o a un gruppo.

Sintassi

db2 "call rdsadmin.dbadm_grant( ?, 'database_name', 'authorization', 'grantee')"

Parametri

Il parametro di output seguente è obbligatorio:

?

Un indicatore di parametro che restituisce l’identificatore univoco dell’attività. Questo parametro accetta solo ?.

I parametri di input seguenti sono obbligatori:

database_name

Il nome del database su cui verrà eseguito il comando. Il tipo di dati è varchar.

authorization

Il tipo di autorizzazione da concedere. Il tipo di dati è varchar. Valori validi: DBADM, ACCESSCTRL, DATAACCESS.

Per separare più tipi, utilizza le virgole.

grantee

Il ruolo, l’utente o il gruppo che riceverà l’autorizzazione. Il tipo di dati è varchar. Valori validi: ROLE, USER, GROUP.

Il formato deve essere un valore seguito dal nome. Per separare più valori e nomi, utilizza le virgole. Esempio: 'USER user1, user2, GROUP group1, group2'. Sostituisci i nomi con le tue informazioni.

Note per l'utilizzo

Il ruolo che riceverà l’autorizzazione di accesso deve essere già presente.

Per informazioni su come verificare lo stato della concessione dell’autorizzazione di accesso come amministratore del database, consulta rdsadmin.get_task_status.

Esempi

Esempio 1: concessione dell’autorizzazione di accesso come amministratore del database a un ruolo

L’esempio seguente concede l’autorizzazione di accesso come amministratore del database TESTDB al ruolo ROLE_DBA.

db2 "call rdsadmin.dbadm_grant( ?, 'TESTDB', 'DBADM', 'ROLE ROLE_DBA')"

Esempio 2: concessione dell’autorizzazione di accesso come amministratore del database a un utente e a un gruppo

L’esempio seguente concede l’autorizzazione di accesso come amministratore del database TESTDB a user1 e group1.

db2 "call rdsadmin.dbadm_grant( ?, 'TESTDB', 'DBADM', 'USER user1, GROUP group1')"

Esempio 3: concessione dell’autorizzazione di accesso come amministratore del database a più utenti e gruppi

L’esempio seguente concede l’autorizzazione di accesso come amministratore del database TESTDB a user1, user2, group1 e group2.

db2 "call rdsadmin.dbadm_grant( ?, 'TESTDB', 'DBADM', 'USER user1, user2, GROUP group1, group2')"

rdsadmin.dbadm_revoke

Revoca l’autorizzazione DBADM, ACCESSCTRL o DATAACCESS a un ruolo, a un utente o a un gruppo.

Sintassi

db2 "call rdsadmin.dbadm_revoke( ?, 'database_name', 'authorization', 'grantee')"

Parametri

Il parametro di output seguente è obbligatorio:

?

Identificatore univoco dell'attività. Questo parametro accetta solo ?.

I parametri di input seguenti sono obbligatori:

database_name

Il nome del database su cui verrà eseguito il comando. Il tipo di dati è varchar.

authorization

Il tipo di autorizzazione da revocare. Il tipo di dati è varchar. Valori validi: DBADM, ACCESSCTRL, DATAACCESS.

Per separare più tipi, utilizza le virgole.

grantee

Il ruolo, l’utente o il gruppo a cui revocare l’autorizzazione. Il tipo di dati è varchar. Valori validi: ROLE, USER, GROUP.

Il formato deve essere un valore seguito dal nome. Per separare più valori e nomi, utilizza le virgole. Esempio: 'USER user1, user2, GROUP group1, group2'. Sostituisci i nomi con le tue informazioni.

Note per l'utilizzo

Per informazioni su come verificare lo stato della revoca dell’autorizzazione di accesso come amministratore del database, consulta rdsadmin.get_task_status.

Esempi

Esempio 1: revoca dell’autorizzazione di accesso come amministratore del database a un ruolo

L’esempio seguente revoca l’autorizzazione di accesso come amministratore del database TESTDB al ruolo ROLE_DBA.

db2 "call rdsadmin.dbadm_revoke( ?, 'TESTDB', 'DBADM', 'ROLE ROLE_DBA')"

Esempio 2: revoca dell’autorizzazione di accesso come amministratore del database a un utente e a un gruppo

L’esempio seguente revoca l’autorizzazione di accesso come amministratore del database TESTDB a user1 e group1.

db2 "call rdsadmin.dbadm_revoke( ?, 'TESTDB', 'DBADM', 'USER user1, GROUP group1')"

Esempio 3: revoca dell’autorizzazione di accesso come amministratore del database a più utenti e gruppi

L’esempio seguente revoca l’autorizzazione di accesso come amministratore del database TESTDB a user1, user2, group1 e group2.

db2 "call rdsadmin.dbadm_revoke( ?, 'TESTDB', 'DBADM', 'USER user1, user2, GROUP group1, group2')"

rdsadmin.set_sid_group_mapping

Crea una mappatura tra un ID di sicurezza (SID) e il gruppo Active Directory corrispondente.

Sintassi

db2 "call rdsadmin.set_sid_group_mapping( ?, 'SID', 'group_name')"

Parametri

Il parametro di output seguente è obbligatorio:

?

Un indicatore di parametro che genera un messaggio di errore. Questo parametro accetta solo ?.

I parametri di input seguenti sono obbligatori:

SID

L’ID di sicurezza. Il tipo di dati è varchar.

group_name

Il nome del gruppo Active Directory da mappare al SID. Il tipo di dati è varchar.

Note per l'utilizzo

Utilizza questa stored procedure per abilitare l’autenticazione Kerberos con i gruppi Active Directory. Se il valore di SID o group_name è già presente nella mappatura, questa stored procedure ha esito negativo.

Per informazioni su come trovare il SID per un gruppo, consulta Passaggio 8: recuperare il SID del gruppo Active Directory in PowerShell.

Per informazioni su come verificare lo stato della creazione di una mappatura, consulta rdsadmin.get_task_status.

Esempi

L’esempio seguente mappa un SID a un gruppo denominato my_group.

db2 "call rdsadmin.set_sid_group_mapping( ?, 'S-1-5-21-9146495592-531070549-834388463-513', 'my_group')"

rdsadmin.list_sid_group_mapping

Elenca tutte le mappature di SID e gruppi Active Directory configurate sull’istanza database.

Sintassi

db2 "call rdsadmin.list_sid_group_mapping()"

Note per l'utilizzo

Per informazioni su come verificare lo stato della creazione di un elenco di mappature, consulta rdsadmin.get_task_status.

rdsadmin.remove_sid_group_mapping

Rimuove una mappatura tra un SID e il gruppo Active Directory corrispondente da un’istanza database.

Sintassi

db2 "call rdsadmin.remove_sid_group_mapping( ?, 'SID')"

Parametri

Il parametro di output seguente è obbligatorio:

?

Un indicatore di parametro che genera un messaggio di errore. Questo parametro accetta solo ?.

Il parametro di input seguente è obbligatorio:

SID

L’ID di sicurezza. Il tipo di dati è varchar.

Note per l'utilizzo

Per informazioni su come trovare il SID per un gruppo, consulta Passaggio 8: recuperare il SID del gruppo Active Directory in PowerShell.

Per informazioni su come verificare lo stato della rimozione di mappature, consulta rdsadmin.get_task_status.

Esempi

L’esempio seguente rimuove la mappatura di un SID dal gruppo per cui è stata creata.

db2 "call rdsadmin.remove_sid_group_mapping( ?, 'S-1-5-21-9146495592-531070549-834388463-513')"