Gestion des autorisations et des contrôles d’accès dans Babelfish pour Aurora PostgreSQL - Amazon Aurora

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.

Gestion des autorisations et des contrôles d’accès dans Babelfish pour Aurora PostgreSQL

Dans Babelfish pour Aurora PostgreSQL, vous pouvez gérer les autorisations et le contrôle d’accès pour les bases de données, les schémas et les objets. Le tableau suivant décrit les commandes SQL spécifiques permettant d’accorder des autorisations dans Babelfish afin de réaliser différents scénarios de contrôle d’accès. Il couvre les cas d’utilisation pris en charge qui peuvent être mis en œuvre ainsi que les solutions de contournement pour les scénarios qui ne sont pas encore pris en charge. Cela vous permettra de configurer les autorisations appropriées pour répondre à vos exigences de sécurité et de conformité lors de l’utilisation de bases de données Babelfish.

Cas d’utilisation pris en charge

Le tableau suivant explique les cas d’utilisation pris en charge par Babelfish. Pour chaque cas d’utilisation, le tableau indique l’action nécessaire pour y parvenir ainsi que des exemples de commandes SQL.

Cas d’utilisation Action Commandes SQL Commentaires Compatibilité des versions Babelfish

Autoriser l’identifiant à effectuer des instructions SELECT/DML/DDL dans n’importe quelle base de données

Ajouter l’identifiant au rôle serveur sysadmin

ALTER SERVER ROLE sysadmin ADD MEMBER login

Aucun

Toutes les versions

Autoriser l’identifiant à effectuer des instructions SELECT/DML/DDL dans une base de données

Faire de l’identifiant le propriétaire de la base de données

ALTER AUTHORIZATION ON DATABASE::database TO login

Une base de données ne peut avoir qu’un seul propriétaire.

Versions 3.4 et ultérieures

Autoriser l’utilisateur de la base de données à effectuer des instructions SELECT/DML sur un schéma

Accorder l’autorisation à l’utilisateur de base de données sur le schéma

GRANT SELECT/EXECUTE/INSERT/UPDATE/DELETE ON SCHEMA::schema TO user

Aucun

Versions 3.6 et ultérieures, 4.2 et ultérieures

Autoriser l’utilisateur de la base de données à effectuer des instructions SELECT/DML sur un schéma

Rendre l’utilisateur de base de données propriétaire du schéma au moment de sa création

CREATE SCHEMA schema AUTHORIZATION user

La modification de la propriété d’un schéma après sa création n’est actuellement pas prise en charge.

Versions 1.2 et ultérieures

Autoriser l’utilisateur de la base de données à effectuer des instructions SELECT/DML pour un objet

Accorder l’autorisation à l’utilisateur de base de données sur l’objet

GRANT SELECT/EXECUTE/INSERT/UPDATE/DELETE ON OBJECT::object TO user

Aucun

Toutes les versions

Autoriser l’utilisateur de la base de données à effectuer des instructions SELECT/DML/DDL dans une base de données, y compris supprimer la base de données

Ajouter un utilisateur au rôle de base de données fixe db_owner

ALTER ROLE db_owner ADD MEMBER user

Seuls les utilisateurs peuvent recevoir le rôle de base de données fixe db_owner. L’ajout de rôles au rôle db_owner n’est pas encore pris en charge.

Versions 4.5 et ultérieures, 5.1 et ultérieures

Autoriser l’utilisateur ou les membres d’un rôle de base de données personnalisé à exécuter uniquement des instructions SELECT dans une base de données

Ajouter un utilisateur ou un rôle au rôle de base de données fixe db_datareader

ALTER ROLE db_datareader ADD MEMBER user / role

Aucun

Versions 4.5 et ultérieures, 5.1 et ultérieures

Autoriser l’utilisateur ou les membres d’un rôle de base de données personnalisé à exécuter uniquement des instructions DML dans une base de données

Ajouter un utilisateur ou un rôle au rôle de base de données fixe db_datawriter

ALTER ROLE db_datawriter ADD MEMBER user / role

Aucun

Versions 4.5 et ultérieures, 5.1 et ultérieures

Autoriser l’utilisateur ou les membres d’un rôle de base de données personnalisé à exécuter uniquement des instructions DDL dans une base de données

Ajouter un utilisateur ou un rôle au rôle de base de données fixe db_accessadmin

ALTER ROLE db_accessadmin ADD MEMBER user / role

Aucun

Versions 4.5 et ultérieures, 5.1 et ultérieures

Autoriser l’utilisateur ou les membres d’un rôle de base de données personnalisé à exécuter uniquement des instructions CREATE/ALTER/DROP pour des rôles personnalisés, des instructions GRANT/REVOKE pour les autorisations liées aux objets d’une base de données et/ou des instructions CREATE SCHEMA dans une base de données

Ajouter un utilisateur ou un rôle au rôle de base de données fixe db_securityadmin

ALTER ROLE db_securityadmin ADD MEMBER user / role

Aucun

Versions 4.5 et ultérieures, 5.1 et ultérieures

Autoriser un utilisateur ou les membres d’un rôle de base de données personnalisé à exécuter uniquement des instructions CREATE/ALTER/DROP pour les utilisateurs, à accorder et à révoquer l’accès à la base de données et à mapper les comptes utilisateur aux identifiants et/ou à exécuter une instruction CREATE SCHEMA dans une base de données

Ajouter un utilisateur ou un rôle au rôle de base de données fixe db_accessadmin

ALTER ROLE db_accessadmin ADD MEMBER user / role

Aucun

Versions 4.5 et ultérieures, 5.1 et ultérieures

Autoriser l’identifiant à exécuter uniquement des instructions CREATE/DROP/ALTER pour n’importe quelle base de données

Ajouter un identifiant au rôle serveur fixe dbcreator

ALTER SERVER ROLE dbcreator ADD MEMBER login

Seules les bases de données auxquelles l’identifiant dbcreator a accès pourront être modifiées.

Versions 4.5 et ultérieures, 5.1 et ultérieures

Autoriser l’identifiant à exécuter uniquement des instructions CREATE/DROP/ALTER pour n’importe quel identifiant

Ajouter un identifiant au rôle serveur fixe securityadmin

ALTER SERVER ROLE securityadmin ADD MEMBER login

Aucun

Versions 4.5 et ultérieures, 5.1 et ultérieures

Cas d’utilisation non pris en charge avec solutions de contournement

Le tableau suivant explique les cas d’utilisation qui ne sont pas pris en charge dans Babelfish, mais qui peuvent être mis en place à l’aide d’une solution de contournement.

Cas d’utilisation Action Commandes SQL Commentaires Versions Babelfish compatibles pour les solutions de contournement

Autoriser l’utilisateur à exécuter des instructions SELECT/DML sur un objet/schéma avec la possibilité d’accorder ces autorisations à d’autres utilisateurs avec GRANT

Exécuter l’instruction GRANT pour accorder les autorisations à tous les autres utilisateurs directement

GRANT SELECT/EXECUTE/INSERT/UPDATE/DELETE ON OBJECT/SCHEMA::object/schema TO user

GRANT ... WITH GRANT OPTION n’est actuellement pas pris en charge.

Versions 3.6 et ultérieures, 4.2 et ultérieures

Autoriser l’utilisateur de la base de données à effectuer des instructions SELECT/DML/DDL dans une base de données, y compris supprimer la base de données

Ajouter les membres du rôle au rôle de base de données fixe db_owner

ALTER ROLE db_owner ADD MEMBER user

L’ajout de rôles au rôle db_owner n’est actuellement pas pris en charge.

Versions 4.5 et ultérieures, 5.1 et ultérieures

Cas d’utilisation non pris en charge

Le tableau suivant explique les cas d’utilisation qui ne sont pas pris en charge dans Babelfish.

Cas d’utilisation Commentaires

Interdire à un utilisateur ou à des membres d’un rôle de base de données personnalisé d’exécuter des instructions SELECT dans une base de données

Le rôle de base de données fixe db_denydatareader n’est pas encore pris en charge

Interdire à un utilisateur ou à des membres d’un rôle de base de données personnalisé d’exécuter des instructions DML dans une base de données

Le rôle de base de données fixe db_denydatawriter n’est actuellement pas pris en charge.

Autoriser l’identifiant à exécuter uniquement une instruction KILL pour n’importe quelle connexion à la base de données

Le rôle serveur fixe processadmin n’est actuellement pas pris en charge.

Autoriser l’identifiant à ajouter ou supprimer uniquement des serveurs liés

Le rôle serveur fixe setupadmin n’est actuellement pas pris en charge.