Procédures stockées pour l’octroi et la révocation de privilèges pour RDS for Db2 - Amazon Relational Database Service

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

Procédures stockées pour l’octroi et la révocation de privilèges pour RDS for Db2

Les procédures stockées intégrées décrites dans cette rubrique gèrent les utilisateurs, les rôles, les groupes et les autorisations pour les bases de données Amazon RDS for Db2. Pour exécuter ces procédures, l’utilisateur principal doit d’abord se connecter à la base de données rdsadmin.

Pour les tâches utilisant ces procédures stockées, consultez Octroi et révocation de privilèges et Configuration de l’authentification Kerberos.

Reportez-vous aux procédures stockées intégrées suivantes pour obtenir des informations sur leur syntaxe, leurs paramètres, leurs notes d’utilisation et des exemples.

rdsadmin.create_role

Crée un rôle.

Syntaxe

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

Paramètres

Les paramètres suivants sont obligatoires :

database_name

Nom de la base de données sur laquelle la commande sera exécutée. Le type de données est varchar.

role_name

Nom du rôle que vous souhaitez créer. Le type de données est varchar.

Notes d’utilisation

Pour plus d’informations sur la vérification du statut de création d’un rôle, consultez rdsadmin.get_task_status.

Exemples

L’exemple suivant crée un rôle appelé MY_ROLE pour la base de données DB2DB.

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

rdsadmin.grant_role

Attribue un rôle à un rôle, à un utilisateur ou à un groupe.

Syntaxe

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

Paramètres

Les paramètres de sortie suivants sont obligatoires :

?

Marqueur de paramètre qui génère l’identifiant unique de la tâche. Ce paramètre accepte uniquement ?.

Les paramètres d’entrée suivants sont obligatoires :

database_name

Nom de la base de données sur laquelle la commande sera exécutée. Le type de données est varchar.

role_name

Nom du rôle que vous souhaitez créer. Le type de données est varchar.

grantee

Rôle, utilisateur ou groupe devant recevoir l’autorisation. Le type de données est varchar. Valeurs valides: ROLE, USER, GROUP, PUBLIC.

Le format doit être une valeur suivie d’un nom. S’il y a plusieurs valeurs et nom, séparez-les à l’aide de virgules. Exemple : « USER user1, user2, GROUP group1, group2 ». Remplacez les noms par vos propres informations.

Le paramètre d’entrée suivant est facultatif :

admin_option

Spécifie si le bénéficiaire ROLE a l’autorisation DBADM d’attribuer des rôles. Le type de données est char. La valeur par défaut est N.

Notes d’utilisation

Pour plus d’informations sur la vérification du statut d’attribution d’un rôle, consultez rdsadmin.get_task_status.

Exemples

Exemple 1 : attribuer un rôle à un rôle, à un utilisateur et à un groupe, et octroyer une autorisation

L’exemple suivant attribue un rôle appelé ROLE_TEST pour la base de données TESTDB au rôle appelé role1, à l’utilisateur appelé user1 et au groupe appelé group1. ROLE_TEST reçoit l’autorisation d’administrateur pour attribuer des rôles.

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

Exemple 2 : attribuer un rôle à PUBLIC et ne pas octroyer d’autorisation

L’exemple suivant attribue un rôle appelé ROLE_TEST pour la base de données TESTDB à PUBLIC. ROLE_TEST ne reçoit pas l’autorisation d’administrateur pour attribuer des rôles.

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

rdsadmin.revoke_role

Révoque un rôle assigné à un rôle, un utilisateur ou un groupe.

Syntaxe

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

Paramètres

Les paramètres de sortie suivants sont obligatoires :

?

Marqueur de paramètre qui génère l’identifiant unique de la tâche. Ce paramètre accepte uniquement ?.

Les paramètres d’entrée suivants sont obligatoires :

database_name

Nom de la base de données sur laquelle la commande sera exécutée. Le type de données est varchar.

role_name

Nom du rôle que vous souhaitez révoquer. Le type de données est varchar.

grantee

Rôle, utilisateur ou groupe à qui l’autorisation doit être retirée. Le type de données est varchar. Valeurs valides: ROLE, USER, GROUP, PUBLIC.

Le format doit être une valeur suivie d’un nom. S’il y a plusieurs valeurs et nom, séparez-les à l’aide de virgules. Exemple : « USER user1, user2, GROUP group1, group2 ». Remplacez les noms par vos propres informations.

Notes d’utilisation

Pour plus d’informations sur la vérification du statut de révocation d’un rôle, consultez rdsadmin.get_task_status.

Exemples

Exemple 1 : révocation du rôle assigné à un rôle, un utilisateur ou un groupe

L’exemple suivant révoque un rôle appelé ROLE_TEST pour la base de données TESTDB assigné au rôle appelé role1, à l’utilisateur appelé user1 et au groupe appelé group1.

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

Exemple 2 : révocation du rôle assigné à PUBLIC

L’exemple suivant révoque un rôle appelé ROLE_TEST pour la base de données TESTDB assigné à PUBLIC.

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

rdsadmin.drop_role

Supprime un rôle.

Syntaxe

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

Paramètres

Les paramètres de sortie suivants sont obligatoires :

?

Marqueur de paramètre qui génère l’identifiant unique de la tâche. Ce paramètre accepte uniquement ?.

Les paramètres d’entrée suivants sont obligatoires :

database_name

Nom de la base de données sur laquelle la commande sera exécutée. Le type de données est varchar.

role_name

Nom du rôle que vous souhaitez supprimer. Le type de données est varchar.

Notes d’utilisation

Pour plus d’informations sur la vérification du statut de suppression d’un rôle, consultez rdsadmin.get_task_status.

Exemples

L’exemple suivant supprime un rôle appelé ROLE_TEST pour la base de données TESTDB.

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

rdsadmin.add_user

Ajoute un utilisateur à une liste d’autorisations.

Syntaxe

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

Paramètres

Les paramètres suivants sont obligatoires :

nom d’utilisateur

Le nom d’utilisateur d’un utilisateur. Le type de données est varchar.

mot de passe

Le mot de passe d’un utilisateur. Le type de données est varchar.

Le paramètre suivant est facultatif :

nom_groupe

Le nom du groupe auquel vous souhaitez ajouter l’utilisateur. Le type de données est varchar. La valeur par défaut est une chaîne vide ou nulle.

Notes d’utilisation

Vous pouvez ajouter un utilisateur à un ou plusieurs groupes en séparant les noms des groupes par des virgules.

Vous pouvez créer un groupe lorsque vous créez un nouvel utilisateur ou lorsque vous ajoutez un groupe à un utilisateur existant. Vous ne pouvez pas créer un groupe tout seul.

Note

Le nombre maximum d’utilisateurs que vous pouvez ajouter en appelant rdsadmin.add_user est de 5 000.

Pour plus d’informations sur la vérification du statut d’ajout d’un rôle, consultez rdsadmin.get_task_status.

Exemples

L’exemple suivant crée un utilisateur appelé jorge_souza et l’affecte aux groupes appelés sales et inside_sales.

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

rdsadmin.change_password

Modifie le mot de passe d’un utilisateur.

Syntaxe

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

Paramètres

Les paramètres suivants sont obligatoires :

nom d’utilisateur

Le nom d’utilisateur d’un utilisateur. Le type de données est varchar.

new_password

Un nouveau mot de passe pour l’utilisateur. Le type de données est varchar.

Notes d’utilisation

Pour plus d’informations sur la vérification du statut de modification d’un mot de passe, consultez rdsadmin.get_task_status.

Exemples

L’exemple suivant modifie le mot de passe de jorge_souza.

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

rdsadmin.list_users

Répertorie les utilisateurs sur une liste d’autorisation.

Syntaxe

db2 "call rdsadmin.list_users()"

Notes d’utilisation

Pour plus d’informations sur la vérification du statut d’ajout d’utilisateurs à une liste, consultez rdsadmin.get_task_status.

rdsadmin.remove_user

Supprime l’utilisateur de la liste d’autorisation.

Syntaxe

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

Paramètres

Les paramètres suivants sont obligatoires :

nom d’utilisateur

Le nom d’utilisateur d’un utilisateur. Le type de données est varchar.

Notes d’utilisation

Pour plus d’informations sur la vérification du statut de suppression d’un utilisateur, consultez rdsadmin.get_task_status.

Exemples

L’exemple suivant supprime la possibilité à jorge_souza d’accéder aux bases de données dans les instances de base de données RDS for Db2.

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

rdsadmin.add_groups

Ajoute un groupe à un utilisateur.

Syntaxe

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

Paramètres

Les paramètres suivants sont obligatoires :

nom d’utilisateur

Le nom d’utilisateur d’un utilisateur. Le type de données est varchar.

nom_groupe

Le nom du groupe auquel vous souhaitez ajouter l’utilisateur. Le type de données est varchar. La valeur par défaut est une chaîne vide.

Notes d’utilisation

Vous pouvez ajouter un ou plusieurs groupes à un utilisateur en séparant les noms des groupes par des virgules. Pour plus d’informations sur la vérification du statut d’ajout de groupes, consultez rdsadmin.get_task_status.

Exemples

L’exemple suivant ajoute les groupes direct_sales et b2b_sales à l’utilisateur jorge_souza.

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

rdsadmin.remove_groups

Supprime des groupes assignés à un utilisateur.

Syntaxe

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

Paramètres

Les paramètres suivants sont obligatoires :

nom d’utilisateur

Le nom d’utilisateur d’un utilisateur. Le type de données est varchar.

nom_groupe

Le nom du groupe duquel vous souhaitez supprimer l’utilisateur. Le type de données est varchar.

Notes d’utilisation

Vous pouvez supprimer un ou plusieurs groupes assignés à un utilisateur en séparant les noms des groupes par des virgules.

Pour plus d’informations sur la vérification du statut de suppression de groupes, consultez rdsadmin.get_task_status.

Exemples

L’exemple suivant supprime les groupes direct_sales et b2b_sales assignés à l’utilisateur jorge_souza.

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

rdsadmin.dbadm_grant

Octroie les autorisations DBADM, ACCESSCTRL ou DATAACCESS à un rôle, à un utilisateur ou à un groupe.

Syntaxe

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

Paramètres

Les paramètres de sortie suivants sont obligatoires :

?

Marqueur de paramètre qui génère l’identifiant unique de la tâche. Ce paramètre accepte uniquement ?.

Les paramètres d’entrée suivants sont obligatoires :

database_name

Nom de la base de données sur laquelle la commande sera exécutée. Le type de données est varchar.

authorization

Type d’autorisation à octroyer. Le type de données est varchar. Valeurs valides : DBADM, ACCESSCTRL, DATAACCESS.

S’il y a plusieurs types, séparez-les par des virgules.

grantee

Rôle, utilisateur ou groupe devant recevoir l’autorisation. Le type de données est varchar. Valeurs valides : ROLE, USER, GROUP.

Le format doit être une valeur suivie d’un nom. S’il y a plusieurs valeurs et nom, séparez-les à l’aide de virgules. Exemple : « USER user1, user2, GROUP group1, group2 ». Remplacez les noms par vos propres informations.

Notes d’utilisation

Le rôle qui doit recevoir l’accès doit exister.

Pour plus d’informations sur la vérification du statut d’octroi d’accès d’administrateur de base de données, consultez rdsadmin.get_task_status.

Exemples

Exemple 1 : octroi d’un accès d’administrateur de base de données au rôle

L’exemple suivant octroie l’accès d’administrateur de base de données à la base de données appelée TESTDB pour le rôle ROLE_DBA.

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

Exemple 2 : octroi d’un accès d’administrateur de base de données à un utilisateur et à un groupe

L’exemple suivant octroie l’accès d’administrateur de base de données à la base de données appelée TESTDB pour user1 et group1.

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

Exemple 3 : octroi d’un accès d’administrateur de base de données à plusieurs utilisateurs et groupes

L’exemple suivant octroie l’accès d’administrateur de base de données à la base de données appelée TESTDB pour user1, user2, group1 et group2.

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

rdsadmin.dbadm_revoke

Révoque l’autorisation DBADM, ACCESSCTRL ou DATAACCESS assignée à un rôle, un utilisateur ou un groupe.

Syntaxe

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

Paramètres

Les paramètres de sortie suivants sont obligatoires :

?

Identifiant unique de la tâche. Ce paramètre accepte uniquement ?.

Les paramètres d’entrée suivants sont obligatoires :

database_name

Nom de la base de données sur laquelle la commande sera exécutée. Le type de données est varchar.

authorization

Type d’autorisation à révoquer. Le type de données est varchar. Valeurs valides : DBADM, ACCESSCTRL, DATAACCESS.

S’il y a plusieurs types, séparez-les par des virgules.

grantee

Le rôle, l’utilisateur ou le groupe dont l’autorisation doit être révoquée. Le type de données est varchar. Valeurs valides : ROLE, USER, GROUP.

Le format doit être une valeur suivie d’un nom. S’il y a plusieurs valeurs et nom, séparez-les à l’aide de virgules. Exemple : « USER user1, user2, GROUP group1, group2 ». Remplacez les noms par vos propres informations.

Notes d’utilisation

Pour plus d’informations sur la vérification du statut de révocation d’accès d’administrateur de base de données, consultez rdsadmin.get_task_status.

Exemples

Exemple 1 : révocation de l’accès d’administrateur de base de données assigné à un rôle

L’exemple suivant révoque l’accès d’administrateur de base de données à la base de données appelée TESTDB pour le rôle ROLE_DBA.

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

Exemple 2 : révocation d’un accès d’administrateur de base de données assigné à un utilisateur et à un groupe

L’exemple suivant révoque l’accès d’administrateur de base de données à la base de données appelée TESTDB pour user1 et group1.

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

Exemple 3 : révocation d’un accès d’administrateur de base de données assigné à plusieurs utilisateurs et groupes

L’exemple suivant révoque l’accès d’administrateur de base de données à la base de données appelée TESTDB pour user1, user2, group1 et group2.

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

rdsadmin.set_sid_group_mapping

Crée un mappage entre un ID de sécurité (SID) et le groupe Active Directory correspondant.

Syntaxe

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

Paramètres

Les paramètres de sortie suivants sont obligatoires :

?

Marqueur de paramètre qui génère un message d’erreur. Ce paramètre accepte uniquement ?.

Les paramètres d’entrée suivants sont obligatoires :

SID

ID de sécurité (SID). Le type de données est varchar.

nom_groupe

Nom du groupe Active Directory à mapper au SID. Le type de données est varchar.

Notes d’utilisation

Utilisez cette procédure stockée pour activer l’authentification Kerberos auprès des groupes Active Directory. Si le SID ou group_name existe déjà dans le mappage, cette procédure stockée échoue.

Pour plus d’informations sur la recherche du SID d’un groupe, consultez Étape 8 : récupérer le SID du groupe Active Directory dans PowerShell.

Pour plus d’informations sur la vérification du statut de création d’un mappage, consultez rdsadmin.get_task_status.

Exemples

L’exemple suivant mappe un SID à un groupe appelé my_group.

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

rdsadmin.list_sid_group_mapping

Répertorie tous les mappages d’ID de sécurité (SID) et de groupes Active Directory configurés sur l’instance de base de données.

Syntaxe

db2 "call rdsadmin.list_sid_group_mapping()"

Notes d’utilisation

Pour plus d’informations sur la vérification du statut des mappages de listes, consultez rdsadmin.get_task_status.

rdsadmin.remove_sid_group_mapping

Supprime un ID de sécurité (SID) et le mappage de groupe Active Directory correspondant d’une instance de base de données.

Syntaxe

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

Paramètres

Les paramètres de sortie suivants sont obligatoires :

?

Marqueur de paramètre qui génère un message d’erreur. Ce paramètre accepte uniquement ?.

Le paramètre d’entrée suivant est obligatoire :

SID

ID de sécurité (SID). Le type de données est varchar.

Notes d’utilisation

Pour plus d’informations sur la recherche du SID d’un groupe, consultez Étape 8 : récupérer le SID du groupe Active Directory dans PowerShell.

Pour plus d’informations sur la vérification du statut de suppression des mappages, consultez rdsadmin.get_task_status.

Exemples

L’exemple suivant supprime le mappage d’un SID du groupe auquel il était mappé.

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