GRANT – Octroyer des autorisations sur les informations d’identification délimitées à la base de données (Transact-SQL)
S’applique à : SQL Server 2017 (14.x) et versions ultérieures Azure SQL Database Azure SQL Managed Instance Azure Synapse Analytics
Permet d’accorder des autorisations sur des informations d’identification délimitées à la base de données.
Conventions de la syntaxe Transact-SQL
Syntaxe
GRANT permission [ ,...n ]
ON DATABASE SCOPED CREDENTIAL :: credential_name
TO principal [ ,...n ] [ WITH GRANT OPTION ]
[ AS granting_principal ]
Arguments
permission
Spécifie une autorisation qui peut être accordée sur des informations d’identification délimitées à la base de données. Voir ci-dessous.
ON DATABASE SCOPED CREDENTIAL ::credential_name
Spécifie les informations d’identification délimitées à la base de données sur lesquelles l’autorisation est accordée. Le qualificateur d'étendue "::" est indispensable.
database_principal
Spécifie le principal auquel l'autorisation est accordée. Celui-ci peut avoir l'une des valeurs suivantes :
- d'un utilisateur de base de données ;
- d'un rôle de base de données ;
- d'un rôle d'application ;
- d'un utilisateur de base de données mappé sur une connexion Windows ;
- d'un utilisateur de base de données mappé sur un groupe Windows ;
- d'un utilisateur de base de données mappé sur un certificat ;
- d'un utilisateur de base de données mappé à une clé asymétrique ;
- d'un utilisateur de base de données qui n'est pas mappé sur le principal d'un serveur.
GRANT OPTION
Indique que le principal a également la possibilité d'accorder l'autorisation spécifiée à d'autres principaux.
AS granting_principal
Spécifie un principal dont le principal qui exécute cette requête dérive son droit d'accorder l'autorisation. Celui-ci peut avoir l'une des valeurs suivantes :
- d'un utilisateur de base de données ;
- d'un rôle de base de données ;
- d'un rôle d'application ;
- d'un utilisateur de base de données mappé sur une connexion Windows ;
- d'un utilisateur de base de données mappé sur un groupe Windows ;
- d'un utilisateur de base de données mappé sur un certificat ;
- d'un utilisateur de base de données mappé à une clé asymétrique ;
- d'un utilisateur de base de données qui n'est pas mappé sur le principal d'un serveur.
Notes
Les informations d’identification délimitées à la base de données sont des éléments sécurisables au niveau base de données inclus dans la base de données qui est son parent dans la hiérarchie des autorisations. Les autorisations les plus spécifiques et limitées qui peuvent être accordées sur des informations d’identification incluses dans l’étendue de base de données sont indiquées ci-dessous, avec les autorisations plus générales qui les incluent implicitement.
Autorisation sur des informations d’identification délimitées à la base de données | Implicite avec l’autorisation sur les informations d’identification délimitées à la base de données | Impliquée par une autorisation de base de données |
---|---|---|
CONTROL | CONTROL | CONTROL |
TAKE OWNERSHIP | CONTROL | CONTROL |
ALTER | CONTROL | CONTROL |
REFERENCES | CONTROL | REFERENCES |
VIEW DEFINITION | CONTROL | VIEW DEFINITION |
Notes
Dans Azure Synapse Analytics, l’autorisation GRANT sur les informations d’identification délimitées à la base de données est prise en charge uniquement pour les pools SQL serverless.
Autorisations
Le fournisseur d'autorisations (ou le principal spécifié avec l'option AS) doit posséder l'autorisation elle-même avec l'option GRANT OPTION ou une autorisation plus élevée qui implique l'autorisation accordée.
En cas d'utilisation de l'option AS, ces critères s'appliquent.
AS granting_principal | Autres autorisations nécessaires |
---|---|
Utilisateur de base de données | Autorisation IMPERSONATE sur l’utilisateur, appartenance au rôle de base de données fixe db_securityadmin, appartenance au rôle de base de données fixe db_owner ou appartenance au rôle serveur fixe sysadmin. |
Utilisateur de base de données mappé à une connexion Windows | Autorisation IMPERSONATE sur l’utilisateur, appartenance au rôle de base de données fixe db_securityadmin, appartenance au rôle de base de données fixe db_owner ou appartenance au rôle serveur fixe sysadmin. |
Utilisateur de base de données mappé à un groupe Windows | Appartenance au groupe Windows, appartenance au rôle de base de données fixes db_securityadmin, appartenance au rôle de base de données fixe db_owner ou appartenance au rôle serveur fixe sysadmin. |
Utilisateur de base de données mappé à un certificat | Appartenance au rôle de base de données fixe db_securityadmin, appartenance au rôle de base de données fixe db_owner ou appartenance au rôle serveur fixe sysadmin. |
Utilisateur de base de données mappé à une clé asymétrique | Appartenance au rôle de base de données fixe db_securityadmin, appartenance au rôle de base de données fixe db_owner ou appartenance au rôle serveur fixe sysadmin. |
Utilisateur de base de données qui n'est mappé sur aucun principal d'un serveur | Autorisation IMPERSONATE sur l’utilisateur, appartenance au rôle de base de données fixe db_securityadmin, appartenance au rôle de base de données fixe db_owner ou appartenance au rôle serveur fixe sysadmin. |
Rôle de base de données | Autorisation ALTER sur le rôle, appartenance au rôle de base de données fixe db_securityadmin, appartenance au rôle de base de données fixe db_owner ou appartenance au rôle serveur fixe sysadmin. |
Rôle d'application | Autorisation ALTER sur le rôle, appartenance au rôle de base de données fixe db_securityadmin, appartenance au rôle de base de données fixe db_owner ou appartenance au rôle serveur fixe sysadmin. |
Les propriétaires d'objets peuvent accorder des autorisations sur les objets qu'ils possèdent. Les principaux ayant l'autorisation CONTROL sur un élément sécurisable peuvent accorder une autorisation sur cet élément.
Les bénéficiaires de l’autorisation CONTROL SERVER, comme les membres du rôle serveur fixe sysadmin, peuvent accorder n’importe quelle autorisation sur n’importe quel sécurisable du serveur. Les bénéficiaires de l’autorisation CONTROL sur une base de données, comme les membres du rôle de base de données fixe db_owner, peuvent accorder n’importe quelle autorisation sur n’importe quel sécurisable de la base de données. Les détenteurs de l'autorisation CONTROL sur un schéma peuvent accorder une autorisation sur n'importe quel objet dans ce schéma.
Étapes suivantes
GRANT (Transact-SQL)
REVOKE - Révoquer des autorisations sur les informations d’identification délimitées à la base de données (Transact-SQL)
DENY - Refuser des autorisations sur des informations d’identification délimitées à la base de données (Transact-SQL)
Autorisations (moteur de base de données)
Principaux (moteur de base de données)
Hiérarchie de chiffrement