Notes
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de vous connecter ou de modifier des répertoires.
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de modifier des répertoires.
S’applique à :SQL Server
Azure SQL Database
Azure SQL Managed Instance
Azure Synapse Analytics
Analytics Platform System (PDW)
Point de terminaison d’analytique SQL dans Microsoft Fabric
Entrepôt dans Microsoft Fabric
Base de données SQL dans Microsoft Fabric Preview
Chaque élément sécurisable de SQL Server dispose d’autorisations associées qui peuvent être accordées à un principal. Les autorisations dans le moteur de base de données sont gérées au niveau du serveur pour les connexions et les rôles de serveur, et au niveau de la base de données pour les utilisateurs de base de données et les rôles de base de données. Le modèle pour Azure SQL Database a le même système pour les autorisations de base de données, mais les autorisations de niveau serveur ne sont pas disponibles. Cet article comporte la liste complète des autorisations. Pour obtenir une implémentation classique des autorisations, consultez Prise en main des autorisations du moteur de base de données.
Le nombre total d’autorisations pour SQL Server 2022 (16.x) est de 292. Azure SQL Database expose 292 autorisations. La plupart des autorisations s’appliquent à toutes les plateformes, mais ce n’est pas le cas pour certaines d’entre elles. Par exemple,la plupart des autorisations au niveau du serveur ne peuvent pas être accordées sur Azure SQL Database et seules quelques autorisations sont pertinentes sur Azure SQL Database. De nouvelles autorisations sont introduites progressivement avec de nouvelles versions. SQL Server 2019 (15.x) expose 248 autorisations. SQL Server 2017 (14.x) a exposé 238 autorisations. SQL Server 2016 (13.x) a exposé 230 autorisations. SQL Server 2014 (12.x) a exposé 219 autorisations. SQL Server 2012 (11.x) a exposé 214 autorisations. SQL Server 2008 R2 (10.50.x) a exposé 195 autorisations. L’article sys.fn_builtin_permissions spécifie les permissions nouvelles dans les versions récentes.
Dans la base de données SQL dans Microsoft Fabric Preview, seuls les utilisateurs et rôles au niveau de la base de données sont pris en charge. Les connexions au niveau du serveur, les rôles et le sa compte ne sont pas disponibles. Dans la base de données SQL dans Microsoft Fabric Preview, l’ID Microsoft Entra pour les utilisateurs de base de données est la seule méthode d’authentification prise en charge. Pour en savoir plus, consultez Autorisation dans la base de données SQL de Microsoft Fabric.
Une fois que vous comprenez les autorisations requises, vous pouvez appliquer des autorisations au niveau du serveur aux connexions ou aux rôles serveur, et des autorisations au niveau de la base de données aux utilisateurs ou aux rôles de base de données, à l’aide des instructions GRANT, REVOKE et DENY. For example:
GRANT SELECT ON SCHEMA::HumanResources TO role_HumanResourcesDept;
REVOKE SELECT ON SCHEMA::HumanResources TO role_HumanResourcesDept;
Pour obtenir des conseils sur la planification d’un système d’autorisations, consultez Prise en main des autorisations du moteur de base de données.
Conventions de noms d’autorisations
La section ci-après décrit les conventions générales qui sont suivies pour affecter des noms aux autorisations.
CONTROL
Confère des fonctionnalités de type propriété au bénéficiaire de l’autorisation. Le bénéficiaire dispose effectivement de toutes les autorisations définies sur l’élément sécurisable. Un principal qui dispose de l’autorisation CONTROL peut aussi accorder des autorisations sur l’élément sécurisable. Le modèle de sécurité de SQL Server étant hiérarchique, l’autorisation CONTROL sur une étendue particulière inclut implicitement CONTROL sur tous les éléments sécurisables inclus dans cette étendue. Par exemple, CONTROL sur une base de données implique toutes les autorisations sur la base de données, toutes les autorisations sur tous les assemblys de la base de données, toutes les autorisations sur tous les schémas de la base de données et toutes les autorisations sur les objets de tous les schémas de la base de données.
ALTER
Confère la capacité de modifier les propriétés, excepté l’appartenance, d’un élément sécurisable particulier. Lorsque ALTER est accordé sur une portée, ALTER octroie également la capacité de modifier, de créer ou de supprimer tous les éléments sécurisables contenus dans cette portée. Par exemple, l’autorisation ALTER sur un schéma inclut la capacité de créer, de modifier et de supprimer les objets du schéma.
ALTER ANY <Élément sécurisable du serveur>, où Élément sécurisable du serveur peut être tout élément sécurisable du serveur.
Confère la capacité de créer, de modifier ou de supprimer des instances individuelles de l’ Élément sécurisable du serveur. Par exemple, ALTER ANY LOGIN confère la capacité de créer, de modifier ou de supprimer n’importe quelle connexion dans l’instance.
ALTER ANY <Élément sécurisable de base de données>, où Élément sécurisable de base de données peut être tout élément sécurisable au niveau de la base de données.
Confère la capacité de créer, de modifier ou de supprimer des instances individuelles de l’ Élément sécurisable de base de données. Par exemple, ALTER ANY SCHEMA confère la capacité de créer, de modifier ou de supprimer n’importe quel schéma dans la base de données.
TAKE OWNERSHIP
Permet au bénéficiaire d’obtenir la propriété de l’élément sécurisable sur lequel cette autorisation est accordée.
IMPERSONATE <Connexion>
Permet au bénéficiaire d’emprunter l’identité impliquée dans la connexion.
IMPERSONATE <Utilisateur>
Permet au bénéficiaire d’emprunter l’identité de l’utilisateur.
CREATE <Élément sécurisable du serveur>
Confère au bénéficiaire la capacité de créer l’ Élément sécurisable du serveur.
CREATE <Élément sécurisable de base de données>
Confère au bénéficiaire la capacité de créer l’ Élément sécurisable de base de données.
CREATE <Élément sécurisable contenu dans le schéma>
Confère la capacité de créer l’élément sécurisable contenu dans le schéma. Toutefois, l’autorisation ALTER sur le schéma est requise pour créer l’élément sécurisable dans un schéma particulier.
VIEW DEFINITION
Permet au bénéficiaire d’accéder aux métadonnées.
REFERENCES
L’autorisation REFERENCES sur une table est obligatoire pour pouvoir créer une contrainte FOREIGN KEY qui référence cette table.
L’autorisation REFERENCES est obligatoire sur un objet pour pouvoir créer une FONCTION ou une VUE avec la clause
WITH SCHEMABINDINGqui référence cet objet.
Graphique des autorisations SQL Server
L’image suivante illustre les autorisations et leurs relations. Certaines des autorisations de niveau supérieur (telles que CONTROL SERVER) figurent plusieurs fois. Dans cet article, l’affiche est trop petite pour être lue correctement. Vous pouvez télécharger le poster des autorisations de moteur de base de données en taille réelle au format PDF.
Autorisations applicables à des éléments sécurisables spécifiques
Le tableau suivant répertorie les principales classes d’autorisations et les types d’éléments sécurisables auxquels elles peuvent s’appliquer :
| Permission | Applies to |
|---|---|
| ALTER | Toutes les classes d’objets, à l’exception de TYPE. |
| CONTROL | Toutes les classes d’objets : AGGREGATE, APPLICATION ROLE, ASSEMBLY, ASYMMETRIC KEY, AVAILABILITY GROUP, CERTIFICATE, CONTRACT, CREDENTIALS, DATABASE, CRÉDENTIEL LIÉ À LA BASE DE DONNÉES DEFAULT, ENDPOINT, FULLTEXT CATALOG, FULLTEXT STOPLIST, FUNCTION, LOGIN, MESSAGE TYPE, PROCEDURE, QUEUE, LIAISON DE SERVICE DISTANT, ROLE, ROUTE, RULE, SCHEMA, Rechercher une liste de propriétés SERVER, SERVER ROLE, SERVICE, SYMMETRIC KEY, SYNONYM, TABLE, TYPE, USER, VIEW, and COLLECTION DE SCHÉMAS XML |
| DELETE | Toutes les classes d’objets, à l’exception de DATABASE SCOPED CONFIGURATION, SERVER et TYPE. |
| EXECUTE | Types CLR, scripts externes, procédures (Transact-SQL et CLR), fonctions scalaires et d’agrégation (Transact-SQL et CLR) et synonymes |
| IMPERSONATE | Connexions et utilisateurs |
| INSERT | Synonymes, tables et colonnes, vues et colonnes. l’autorisation peut être accordée au niveau de la base de données, du schéma ou de l’objet. |
| RECEIVE | Files d’attente Service Broker |
| REFERENCES | AGGREGATE, ASSEMBLY, ASYMMETRIC KEY, CERTIFICATE, CONTRACT, CREDENTIAL (s’applique à SQL Server 2022 (16.x) et versions ultérieures), DATABASE, CRÉDENTIEL LIÉ À LA BASE DE DONNÉES FULLTEXT CATALOG, FULLTEXT STOPLIST, FUNCTION, MESSAGE TYPE, PROCEDURE, QUEUE, RULE, SCHEMA, Rechercher une liste de propriétés SEQUENCE OBJECT, SYMMETRIC KEY, TABLE, TYPE, VIEW, and COLLECTION DE SCHÉMAS XML |
| SELECT | Synonymes, tables et colonnes, vues et colonnes. l’autorisation peut être accordée au niveau de la base de données, du schéma ou de l’objet. |
| TAKE OWNERSHIP | Toutes les classes d’objets, à l’exception de DATABASE SCOPED CONFIGURATION, LOGIN, SERVER et USER. |
| UPDATE | Synonymes, tables et colonnes, vues et colonnes. l’autorisation peut être accordée au niveau de la base de données, du schéma ou de l’objet. |
| AFFICHER LE SUIVI DES MODIFICATIONS | Schémas et tables |
| VIEW DEFINITION | Toutes les classes d’objets, à l’exception de DATABASE SCOPED CONFIGURATION et SERVER. |
Caution
Les autorisations par défaut accordées aux objets système au moment de l’installation sont évaluées avec soin par rapport aux menaces potentielles et ne doivent pas être modifiées dans le cadre du renforcement de l’installation SQL Server. Les modifications apportées aux autorisations sur les objets système peuvent limiter ou rompre le fonctionnement et pourraient potentiellement laisser votre installation SQL Server dans un état non pris en charge.
Autorisations SQL Server
Le tableau suivant fournit la liste complète des autorisations SQL Server. Les autorisations Azure SQL Database sont uniquement disponibles pour les éléments sécurisables de base pris en charge. Les autorisations au niveau du serveur ne peuvent pas être accordées dans Azure SQL Database ; toutefois, dans certains cas, les autorisations de base de données sont disponibles à la place.
| Base securable | Autorisations granulaires sur les éléments sécurisables de base | Code du type d’autorisation | Élément sécurisable qui contient un élément sécurisable de base | Autorisation sur l’élément sécurisable conteneur, qui implique une autorisation granulaire sur l’élément sécurisable de base |
|---|---|---|---|---|
| APPLICATION ROLE | ALTER | AL | DATABASE | MODIFIER N’IMPORTE QUEL RÔLE D’APPLICATION |
| APPLICATION ROLE | CONTROL | CL | DATABASE | CONTROL |
| APPLICATION ROLE | VIEW DEFINITION | VW | DATABASE | VIEW DEFINITION |
| ASSEMBLY | ALTER | AL | DATABASE | MODIFIER TOUT ASSEMBLAGE |
| ASSEMBLY | CONTROL | CL | DATABASE | CONTROL |
| ASSEMBLY | REFERENCES | RF | DATABASE | REFERENCES |
| ASSEMBLY | TAKE OWNERSHIP | TO | DATABASE | CONTROL |
| ASSEMBLY | VIEW DEFINITION | VW | DATABASE | VIEW DEFINITION |
| ASYMMETRIC KEY | ALTER | AL | DATABASE | MODIFIER N’IMPORTE QUELLE CLÉ ASYMÉTRIQUE |
| ASYMMETRIC KEY | CONTROL | CL | DATABASE | CONTROL |
| ASYMMETRIC KEY | REFERENCES | RF | DATABASE | REFERENCES |
| ASYMMETRIC KEY | TAKE OWNERSHIP | TO | DATABASE | CONTROL |
| ASYMMETRIC KEY | VIEW DEFINITION | VW | DATABASE | VIEW DEFINITION |
| AVAILABILITY GROUP | ALTER | AL | SERVER | MODIFIER N'IMPORTE QUEL GROUPE DE DISPONIBILITÉ |
| AVAILABILITY GROUP | CONTROL | CL | SERVER | CONTROL SERVER |
| AVAILABILITY GROUP | TAKE OWNERSHIP | TO | SERVER | CONTROL SERVER |
| AVAILABILITY GROUP | VIEW DEFINITION | VW | SERVER | Voir n'importe quelle définition |
| CERTIFICATE | ALTER | AL | DATABASE | MODIFIER TOUT CERTIFICAT |
| CERTIFICATE | CONTROL | CL | DATABASE | CONTROL |
| CERTIFICATE | REFERENCES | RF | DATABASE | REFERENCES |
| CERTIFICATE | TAKE OWNERSHIP | TO | DATABASE | CONTROL |
| CERTIFICATE | VIEW DEFINITION | VW | DATABASE | VIEW DEFINITION |
| CONTRACT | ALTER | AL | DATABASE | Modifier tout contrat |
| CONTRACT | CONTROL | CL | DATABASE | CONTROL |
| CONTRACT | REFERENCES | RF | DATABASE | REFERENCES |
| CONTRACT | TAKE OWNERSHIP | TO | DATABASE | CONTROL |
| CONTRACT | VIEW DEFINITION | VW | DATABASE | VIEW DEFINITION |
| CREDENTIAL | CONTROL | CL | SERVER | CONTROL SERVER |
| CREDENTIAL | REFERENCES | RF | SERVER | MODIFIER LES INFORMATIONS D’IDENTIFICATION |
| DATABASE | ADMINISTRER DES OPÉRATIONS EN BLOC DE BASE DE DONNÉES | DABO | SERVER | CONTROL SERVER |
| DATABASE | ALTER | AL | SERVER | MODIFIER TOUTE BASE DE DONNÉES |
| DATABASE | MODIFIER N’IMPORTE QUEL RÔLE D’APPLICATION | ALAR | SERVER | CONTROL SERVER |
| DATABASE | MODIFIER TOUT ASSEMBLAGE | ALAS | SERVER | CONTROL SERVER |
| DATABASE | MODIFIER N’IMPORTE QUELLE CLÉ ASYMÉTRIQUE | ALAK | SERVER | CONTROL SERVER |
| DATABASE | MODIFIER TOUT CERTIFICAT | ALCF | SERVER | CONTROL SERVER |
| DATABASE | MODIFIER UNE CLÉ DE CHIFFREMENT DE COLONNE | ALCK S’applique à SQL Server (de SQL Server 2016 (13.x) à la version actuelle), Azure SQL Database. |
SERVER | CONTROL SERVER |
| DATABASE | MODIFIER N'IMPORTE QUELLE CLÉ MAÎTRE DE COLONNE | ALCM S’applique à SQL Server (de SQL Server 2016 (13.x) à la version actuelle), Azure SQL Database. |
SERVER | CONTROL SERVER |
| DATABASE | Modifier tout contrat | ALSC | SERVER | CONTROL SERVER |
| DATABASE | Modifier n'importe quel audit de base de données | ALDA | SERVER | ALTER ANY SERVER AUDIT |
| DATABASE | ALTERER N'IMPORTE QUEL DÉCLENCHEUR DDL DE BASE DE DONNÉES | ALTG | SERVER | CONTROL SERVER |
| DATABASE | MODIFIER TOUTE NOTIFICATION D'ÉVÉNEMENT DE BASE DE DONNÉES | ALED | SERVER | MODIFIER TOUTE NOTIFICATION D'ÉVÉNEMENT |
| DATABASE | ALTERER TOUTE SESSION D'ÉVÉNEMENT DE BASE DE DONNÉES | AADS | SERVER | MODIFIER TOUTE SESSION D'ÉVÉNEMENT |
| DATABASE | ALTER ANY DATABASE EVENT SESSION ADD EVENT | LDAE | SERVER | ALTER ANY EVENT SESSION AJOUTER ÉVÉNEMENT |
| DATABASE | ALTER ANY DATABASE EVENT SESSION ADD TARGET | LDAT | SERVER | MODIFIER TOUTE SESSION D'ÉVÉNEMENTS AJOUTER CIBLE |
| DATABASE | ALTER ANY DATABASE EVENT SESSION DISABLE | DDES | SERVER | MODIFIER TOUTE SESSION D'ÉVÉNEMENT DÉSACTIVER |
| DATABASE | ALTER ANY SESSION D'ÉVÉNEMENT DE BASE DE DONNÉES SUPPRIMER ÉVÉNEMENT | LDDE | SERVER | ALTERER N'IMPORTE QUELLE SESSION D'ÉVÉNEMENT SUPPRIMER L'ÉVÉNEMENT |
| DATABASE | MODIFIER UNE SESSION D'ÉVÉNEMENT DE BASE DE DONNÉES SUPPRIMER CIBLE | LDDT | SERVER | ALTER ANY EVENT SESSION DROP TARGET |
| DATABASE | ALTER ANY DATABASE EVENT SESSION ENABLE | EDES | SERVER | MODIFIER TOUTE SESSION D'ÉVÉNEMENT ACTIVER |
| DATABASE | MODIFIER TOUTE OPTION DE SESSION D'ÉVÉNEMENT DE BASE DE DONNÉES | LDSO | SERVER | MODIFIER TOUTE OPTION DE SESSION D'ÉVÉNEMENT |
| DATABASE | ALTER ANY DATABASE SCOPED CONFIGURATION | ALDC S’applique à SQL Server (de SQL Server 2016 (13.x) à la version actuelle), Azure SQL Database. |
SERVER | CONTROL SERVER |
| DATABASE | MODIFIER TOUT ESPACE DE DONNÉES | ALDS | SERVER | CONTROL SERVER |
| DATABASE | MODIFIER TOUTE SOURCE DE DONNÉES EXTERNE | AEDS | SERVER | CONTROL SERVER |
| DATABASE | MODIFIER TOUT FORMAT DE FICHIER EXTERNE | AEFF | SERVER | CONTROL SERVER |
| DATABASE | MODIFIER TOUTE TÂCHE EXTERNE | AESJ | SERVER | CONTROL SERVER |
| DATABASE | MODIFIER TOUTE LANGUE EXTERNE | ALLA | SERVER | CONTROL SERVER |
| DATABASE | MODIFIER N'IMPORTE QUELLE BIBLIOTHÈQUE EXTERNE | ALEL | SERVER | CONTROL SERVER |
| DATABASE | MODIFIER TOUT FLUX EXTERNE | AEST | SERVER | CONTROL SERVER |
| DATABASE | MODIFIER N'IMPORTE QUEL CATALOGUE DE TEXTE INTÉGRAL | ALFT | SERVER | CONTROL SERVER |
| DATABASE | MODIFIER TOUT MASQUE | AAMK S’applique à SQL Server (de SQL Server 2016 (13.x) à la version actuelle), Azure SQL Database. |
SERVER | CONTROL SERVER |
| DATABASE | MODIFIER N’IMPORTE QUEL TYPE DE MESSAGE | ALMT | SERVER | CONTROL SERVER |
| DATABASE | MODIFIER TOUT LIEN DE SERVICE À DISTANCE | ALSB | SERVER | CONTROL SERVER |
| DATABASE | MODIFIER N’IMPORTE QUEL RÔLE | ALRL | SERVER | CONTROL SERVER |
| DATABASE | MODIFIER TOUTE ROUTE | ALRT | SERVER | CONTROL SERVER |
| DATABASE | MODIFIER TOUT SCHÉMA | ALSM | SERVER | CONTROL SERVER |
| DATABASE | MODIFIER UNE STRATÉGIE DE SÉCURITÉ | ALSP S’applique à SQL Server (de SQL Server 2016 (13.x) à la version actuelle), Azure SQL Database. |
SERVER | CONTROL SERVER |
| DATABASE | MODIFIER TOUTE CLASSIFICATION DE CONFIDENTIALITÉ | AASC S’applique à SQL Server (de SQL Server 2019 (15.x) à la version actuelle), Azure SQL Database. |
SERVER | CONTROL SERVER |
| DATABASE | MODIFIER N'IMPORTE QUEL SERVICE | ALSV | SERVER | CONTROL SERVER |
| DATABASE | MODIFIER TOUTE CLÉ SYMÉTRIQUE | ALSK | SERVER | CONTROL SERVER |
| DATABASE | MODIFIER TOUS LES UTILISATEURS | ALUS | SERVER | CONTROL SERVER |
| DATABASE | ALTER LEDGER | ALR | SERVER | CONTROL |
| DATABASE | MODIFIER LA CONFIGURATION DU GRAND LIVRE | ALC | SERVER | CONTROL SERVER |
| DATABASE | AUTHENTICATE | AUTH | SERVER | AUTHENTICATE SERVER |
| DATABASE | BACKUP DATABASE | BADB | SERVER | CONTROL SERVER |
| DATABASE | BACKUP LOG | BALO | SERVER | CONTROL SERVER |
| DATABASE | CHECKPOINT | CP | SERVER | CONTROL SERVER |
| DATABASE | CONNECT | CO | SERVER | CONTROL SERVER |
| DATABASE | CONNECT REPLICATION | CORP | SERVER | CONTROL SERVER |
| DATABASE | CONTROL | CL | SERVER | CONTROL SERVER |
| DATABASE | CREATE AGGREGATE | CRAG | SERVER | CONTROL SERVER |
| DATABASE | CRÉER UNE SESSION D'ÉVÉNEMENT DE BASE DE DONNÉES | CRDS | SERVER | CRÉER UNE SESSION D’ÉVÉNEMENTS |
| DATABASE | CREATE ASSEMBLY | CRAS | SERVER | CONTROL SERVER |
| DATABASE | CRÉER UNE CLÉ ASYMÉTRIQUE | CRAK | SERVER | CONTROL SERVER |
| DATABASE | CREATE CERTIFICATE | CRCF | SERVER | CONTROL SERVER |
| DATABASE | CREATE CONTRACT | CRSC | SERVER | CONTROL SERVER |
| DATABASE | CREATE DATABASE | CRDB | SERVER | CRÉER UNE BASE DE DONNÉES |
| DATABASE | CRÉER UNE NOTIFICATION D'ÉVÉNEMENT DDL DE BASE DE DONNÉES | CRED | SERVER | CRÉER UNE NOTIFICATION D'ÉVÉNEMENT DDL |
| DATABASE | CREATE DEFAULT | CRDF | SERVER | CONTROL SERVER |
| DATABASE | CREATE EXTERNAL LANGUAGE | CRLA | SERVER | CONTROL SERVER |
| DATABASE | CRÉER UNE BIBLIOTHÈQUE EXTERNE | CREL | SERVER | CONTROL SERVER |
| DATABASE | CRÉER UN CATALOGUE DE TEXTE INTÉGRAL | CRFT | SERVER | CONTROL SERVER |
| DATABASE | CREATE FUNCTION | CRFN | SERVER | CONTROL SERVER |
| DATABASE | CRÉER UN TYPE DE MESSAGE | CRMT | SERVER | CONTROL SERVER |
| DATABASE | CREATE PROCEDURE | CRPR | SERVER | CONTROL SERVER |
| DATABASE | CREATE QUEUE | CRQU | SERVER | CONTROL SERVER |
| DATABASE | CRÉER UN LIEN DE SERVICE DISTANT | CRSB | SERVER | CONTROL SERVER |
| DATABASE | CREATE ROLE | CRRL | SERVER | CONTROL SERVER |
| DATABASE | CREATE ROUTE | CRRT | SERVER | CONTROL SERVER |
| DATABASE | CREATE RULE | CRRU | SERVER | CONTROL SERVER |
| DATABASE | CREATE SCHEMA | CRSM | SERVER | CONTROL SERVER |
| DATABASE | CREATE SERVICE | CRSV | SERVER | CONTROL SERVER |
| DATABASE | CREATE SYMMETRIC KEY (créer une clé symétrique) | CRSK | SERVER | CONTROL SERVER |
| DATABASE | CREATE SYNONYM | CRSN | SERVER | CONTROL SERVER |
| DATABASE | CREATE TABLE | CRTB | SERVER | CONTROL SERVER |
| DATABASE | CREATE TYPE | CRTY | SERVER | CONTROL SERVER |
| DATABASE | CREATE USER | CUSR | SERVER | CONTROL SERVER |
| DATABASE | CREATE VIEW | CRVW | SERVER | CONTROL SERVER |
| DATABASE | CRÉER UNE COLLECTION DE SCHÉMA XML | CRXS | SERVER | CONTROL SERVER |
| DATABASE | DELETE | DL | SERVER | CONTROL SERVER |
| DATABASE | SUPPRIMER TOUTE SESSION D'ÉVÉNEMENTS DE BASE DE DONNÉES | DRDS | SERVER | SUPPRIMER TOUTE SESSION D’ÉVÉNEMENTS |
| DATABASE | ENABLE LEDGER | EL | SERVER | CONTROL |
| DATABASE | EXECUTE | EX | SERVER | CONTROL SERVER |
| DATABASE | EXÉCUTER TOUT POINT D'ACCÈS EXTERNE | EAEE | SERVER | CONTROL SERVER |
| DATABASE | EXÉCUTER UN SCRIPT EXTERNE | EAES S’applique à SQL Server (de SQL Server 2016 (13.x) à la version actuelle). |
SERVER | CONTROL SERVER |
| DATABASE | INSERT | IN | SERVER | CONTROL SERVER |
| DATABASE | TERMINER LA CONNEXION À LA BASE DE DONNÉES | KIDC S’applique uniquement à Azure SQL Database. Utilisez ALTER ANY CONNECTION dans SQL Server. |
SERVER | MODIFIER N’IMPORTE QUELLE CONNEXION |
| DATABASE | REFERENCES | RF | SERVER | CONTROL SERVER |
| DATABASE | SELECT | SL | SERVER | CONTROL SERVER |
| DATABASE | SHOWPLAN | SPLN | SERVER | ALTER TRACE |
| DATABASE | NOTIFICATIONS DE REQUÊTE D’ABONNEMENT | SUQN | SERVER | CONTROL SERVER |
| DATABASE | TAKE OWNERSHIP | TO | SERVER | CONTROL SERVER |
| DATABASE | UNMASK | UMSK S’applique à SQL Server (de SQL Server 2016 (13.x) à la version actuelle), Azure SQL Database. |
SERVER | CONTROL SERVER |
| DATABASE | UPDATE | UP | SERVER | CONTROL SERVER |
| DATABASE | AFFICHER LA DÉFINITION DE TOUTE CLÉ DE CHIFFREMENT DE COLONNE | VWCK S’applique à SQL Server (de SQL Server 2016 (13.x) à la version actuelle), Azure SQL Database. |
SERVER | AFFICHER L’ÉTAT DU SERVEUR |
| DATABASE | AFFICHER UNE DÉFINITION DE CLÉ PRINCIPALE DE COLONNE | VWCM S’applique à SQL Server (de SQL Server 2016 (13.x) à la version actuelle), Azure SQL Database. |
SERVER | AFFICHER L’ÉTAT DU SERVEUR |
| DATABASE | AFFICHER TOUTE CLASSIFICATION DE CONFIDENTIALITÉ | VASC | SERVER | CONTROL SERVER |
| DATABASE | AFFICHER LA DÉFINITION SÉCURISÉE PAR CHIFFREMENT | VCD | SERVER | AFFICHER UNE DÉFINITION SÉCURISÉE PAR CHIFFREMENT |
| DATABASE | AFFICHER L’ÉTAT DES PERFORMANCES DE LA BASE DE DONNÉES | VDP | SERVER | AFFICHER L’ÉTAT DES PERFORMANCES DU SERVEUR |
| DATABASE | AFFICHER L’AUDIT DE SÉCURITÉ DE LA BASE DE DONNÉES | VDSA | SERVER | CONTROL SERVER |
| DATABASE | AFFICHER L’ÉTAT DE SÉCURITÉ DE LA BASE DE DONNÉES | VDS | SERVER | AFFICHER L’ÉTAT DE SÉCURITÉ DU SERVEUR |
| DATABASE | AFFICHER LE STATUT DE LA BASE DE DONNÉES | VWDS | SERVER | AFFICHER L’ÉTAT DU SERVEUR |
| DATABASE | VIEW DEFINITION | VW | SERVER | Voir n'importe quelle définition |
| DATABASE | AFFICHER LE CONTENU DU REGISTRE | VLC | SERVER | CONTROL |
| DATABASE | AFFICHER LA DÉFINITION DE SÉCURITÉ | VWS | SERVER | AFFICHER TOUTE DÉFINITION DE SÉCURITÉ |
| DATABASE | AFFICHER LA DÉFINITION DES PERFORMANCES | VWP | SERVER | AFFICHER N’IMPORTE QUELLE DÉFINITION DE PERFORMANCES |
| IDENTIFIANT DE BASE DE DONNÉES | ALTER | AL | DATABASE | CONTROL |
| IDENTIFIANT DE BASE DE DONNÉES | CONTROL | CL | DATABASE | CONTROL |
| IDENTIFIANT DE BASE DE DONNÉES | REFERENCES | RF | DATABASE | REFERENCES |
| IDENTIFIANT DE BASE DE DONNÉES | TAKE OWNERSHIP | TO | DATABASE | CONTROL |
| IDENTIFIANT DE BASE DE DONNÉES | VIEW DEFINITION | VW | DATABASE | VIEW DEFINITION |
| ENDPOINT | ALTER | AL | SERVER | MODIFIER N'IMPORTE QUEL POINT D'ACCÈS |
| ENDPOINT | CONNECT | CO | SERVER | CONTROL SERVER |
| ENDPOINT | CONTROL | CL | SERVER | CONTROL SERVER |
| ENDPOINT | TAKE OWNERSHIP | TO | SERVER | CONTROL SERVER |
| ENDPOINT | VIEW DEFINITION | VW | SERVER | Voir n'importe quelle définition |
| FULLTEXT CATALOG | ALTER | AL | DATABASE | MODIFIER N'IMPORTE QUEL CATALOGUE DE TEXTE INTÉGRAL |
| FULLTEXT CATALOG | CONTROL | CL | DATABASE | CONTROL |
| FULLTEXT CATALOG | REFERENCES | RF | DATABASE | REFERENCES |
| FULLTEXT CATALOG | TAKE OWNERSHIP | TO | DATABASE | CONTROL |
| FULLTEXT CATALOG | VIEW DEFINITION | VW | DATABASE | VIEW DEFINITION |
| FULLTEXT STOPLIST | ALTER | AL | DATABASE | MODIFIER N'IMPORTE QUEL CATALOGUE DE TEXTE INTÉGRAL |
| FULLTEXT STOPLIST | CONTROL | CL | DATABASE | CONTROL |
| FULLTEXT STOPLIST | REFERENCES | RF | DATABASE | REFERENCES |
| FULLTEXT STOPLIST | TAKE OWNERSHIP | TO | DATABASE | CONTROL |
| FULLTEXT STOPLIST | VIEW DEFINITION | VW | DATABASE | VIEW DEFINITION |
| LOGIN | ALTER | AL | SERVER | MODIFIER N'IMPORTE QUELLE CONNEXION |
| LOGIN | CONTROL | CL | SERVER | CONTROL SERVER |
| LOGIN | IMPERSONATE | IM | SERVER | CONTROL SERVER |
| LOGIN | VIEW DEFINITION | VW | SERVER | Voir n'importe quelle définition |
| MESSAGE TYPE | ALTER | AL | DATABASE | MODIFIER N’IMPORTE QUEL TYPE DE MESSAGE |
| MESSAGE TYPE | CONTROL | CL | DATABASE | CONTROL |
| MESSAGE TYPE | REFERENCES | RF | DATABASE | REFERENCES |
| MESSAGE TYPE | TAKE OWNERSHIP | TO | DATABASE | CONTROL |
| MESSAGE TYPE | VIEW DEFINITION | VW | DATABASE | VIEW DEFINITION |
| OBJECT | ALTER | AL | SCHEMA | ALTER |
| OBJECT | CONTROL | CL | SCHEMA | CONTROL |
| OBJECT | DELETE | DL | SCHEMA | DELETE |
| OBJECT | EXECUTE | EX | SCHEMA | EXECUTE |
| OBJECT | INSERT | IN | SCHEMA | INSERT |
| OBJECT | RECEIVE | RC | SCHEMA | CONTROL |
| OBJECT | REFERENCES | RF | SCHEMA | REFERENCES |
| OBJECT | SELECT | SL | SCHEMA | SELECT |
| OBJECT | TAKE OWNERSHIP | TO | SCHEMA | CONTROL |
| OBJECT | UNMASK | UMSK | SCHEMA | UNMASK |
| OBJECT | UPDATE | UP | SCHEMA | UPDATE |
| OBJECT | AFFICHER LE SUIVI DES MODIFICATIONS | VWCT | SCHEMA | AFFICHER LE SUIVI DES MODIFICATIONS |
| OBJECT | VIEW DEFINITION | VW | SCHEMA | VIEW DEFINITION |
| LIAISON DE SERVICE À DISTANCE | ALTER | AL | DATABASE | MODIFIER TOUT LIEN DE SERVICE À DISTANCE |
| LIAISON DE SERVICE À DISTANCE | CONTROL | CL | DATABASE | CONTROL |
| LIAISON DE SERVICE À DISTANCE | TAKE OWNERSHIP | TO | DATABASE | CONTROL |
| LIAISON DE SERVICE À DISTANCE | VIEW DEFINITION | VW | DATABASE | VIEW DEFINITION |
| ROLE | ALTER | AL | DATABASE | MODIFIER N’IMPORTE QUEL RÔLE |
| ROLE | CONTROL | CL | DATABASE | CONTROL |
| ROLE | TAKE OWNERSHIP | TO | DATABASE | CONTROL |
| ROLE | VIEW DEFINITION | VW | DATABASE | VIEW DEFINITION |
| ROUTE | ALTER | AL | DATABASE | MODIFIER TOUTE ROUTE |
| ROUTE | CONTROL | CL | DATABASE | CONTROL |
| ROUTE | TAKE OWNERSHIP | TO | DATABASE | CONTROL |
| ROUTE | VIEW DEFINITION | VW | DATABASE | VIEW DEFINITION |
| SCHEMA | ALTER | AL | DATABASE | MODIFIER TOUT SCHÉMA |
| SCHEMA | CONTROL | CL | DATABASE | CONTROL |
| SCHEMA | CREATE SEQUENCE | CRSO | DATABASE | CONTROL |
| SCHEMA | DELETE | DL | DATABASE | DELETE |
| SCHEMA | EXECUTE | EX | DATABASE | EXECUTE |
| SCHEMA | INSERT | IN | DATABASE | INSERT |
| SCHEMA | REFERENCES | RF | DATABASE | REFERENCES |
| SCHEMA | SELECT | SL | DATABASE | SELECT |
| SCHEMA | TAKE OWNERSHIP | TO | DATABASE | CONTROL |
| SCHEMA | UNMASK | UMSK | DATABASE | UNMASK |
| SCHEMA | UPDATE | UP | DATABASE | UPDATE |
| SCHEMA | AFFICHER LE SUIVI DES MODIFICATIONS | VWCT | DATABASE | AFFICHER LE SUIVI DES MODIFICATIONS |
| SCHEMA | VIEW DEFINITION | VW | DATABASE | VIEW DEFINITION |
| LISTE DES BIENS À RECHERCHER | ALTER | AL | SERVER | MODIFIER N'IMPORTE QUEL CATALOGUE DE TEXTE INTÉGRAL |
| LISTE DES BIENS À RECHERCHER | CONTROL | CL | SERVER | CONTROL |
| LISTE DES BIENS À RECHERCHER | REFERENCES | RF | SERVER | REFERENCES |
| LISTE DES BIENS À RECHERCHER | TAKE OWNERSHIP | TO | SERVER | CONTROL |
| LISTE DES BIENS À RECHERCHER | VIEW DEFINITION | VW | SERVER | VIEW DEFINITION |
| SERVER | ADMINISTRER DES OPÉRATIONS GROUPÉES | ADBO | Not applicable | Not applicable |
| SERVER | MODIFIER N'IMPORTE QUEL GROUPE DE DISPONIBILITÉ | ALAG | Not applicable | Not applicable |
| SERVER | MODIFIER N’IMPORTE QUELLE CONNEXION | ALCO | Not applicable | Not applicable |
| SERVER | MODIFIER LES INFORMATIONS D’IDENTIFICATION | ALCD | Not applicable | Not applicable |
| SERVER | MODIFIER TOUTE BASE DE DONNÉES | ALDB | Not applicable | Not applicable |
| SERVER | MODIFIER N'IMPORTE QUEL POINT D'ACCÈS | ALHE | Not applicable | Not applicable |
| SERVER | MODIFIER TOUTE NOTIFICATION D'ÉVÉNEMENT | ALES | Not applicable | Not applicable |
| SERVER | MODIFIER TOUTE SESSION D'ÉVÉNEMENT | AAES | Not applicable | Not applicable |
| SERVER | ALTER ANY EVENT SESSION AJOUTER ÉVÉNEMENT | LSAE | Not applicable | Not applicable |
| SERVER | MODIFIER TOUTE SESSION D'ÉVÉNEMENTS AJOUTER CIBLE | LSAT | Not applicable | Not applicable |
| SERVER | MODIFIER TOUTE SESSION D'ÉVÉNEMENT DÉSACTIVER | DES | Not applicable | Not applicable |
| SERVER | ALTERER N'IMPORTE QUELLE SESSION D'ÉVÉNEMENT SUPPRIMER L'ÉVÉNEMENT | LSDE | Not applicable | Not applicable |
| SERVER | ALTER ANY EVENT SESSION DROP TARGET | LSDT | Not applicable | Not applicable |
| SERVER | MODIFIER TOUTE SESSION D'ÉVÉNEMENT ACTIVER | EES | Not applicable | Not applicable |
| SERVER | MODIFIER TOUTE OPTION DE SESSION D'ÉVÉNEMENT | LESO | Not applicable | Not applicable |
| SERVER | MODIFIER N’IMPORTE QUEL SERVEUR LIÉ | ALLS | Not applicable | Not applicable |
| SERVER | MODIFIER N'IMPORTE QUELLE CONNEXION | ALLG | Not applicable | Not applicable |
| SERVER | ALTER ANY SERVER AUDIT | ALAA | Not applicable | Not applicable |
| SERVER | MODIFIER N’IMPORTE QUEL RÔLE SERVEUR | ALSR | Not applicable | Not applicable |
| SERVER | ALTER RESOURCES | ALRS | Not applicable | Not applicable |
| SERVER | MODIFIER L'ÉTAT DU SERVEUR | ALSS | Not applicable | Not applicable |
| SERVER | ALTER SETTINGS | ALST | Not applicable | Not applicable |
| SERVER | ALTER TRACE | ALTR | Not applicable | Not applicable |
| SERVER | AUTHENTICATE SERVER | AUTH | Not applicable | Not applicable |
| SERVER | CONNECTER N’IMPORTE QUELLE BASE DE DONNÉES | CADB | Not applicable | Not applicable |
| SERVER | CONNECT SQL | COSQ | Not applicable | Not applicable |
| SERVER | CONTROL SERVER | CL | Not applicable | Not applicable |
| SERVER | CRÉER UNE BASE DE DONNÉES | CRDB | Not applicable | Not applicable |
| SERVER | Créer un groupe de disponibilité | CRAC | Not applicable | Not applicable |
| SERVER | CRÉER UNE NOTIFICATION D'ÉVÉNEMENT DDL | CRDE | Not applicable | Not applicable |
| SERVER | CREATE ENDPOINT | CRHE | Not applicable | Not applicable |
| SERVER | CRÉER UN RÔLE SERVEUR | CRSR | Not applicable | Not applicable |
| SERVER | CRÉER UNE NOTIFICATION D'ÉVÉNEMENT DE TRACE | CRTE | Not applicable | Not applicable |
| SERVER | ASSEMBLY D’ACCÈS EXTERNE | XA | Not applicable | Not applicable |
| SERVER | EMPRUNTER L’IDENTITÉ DE N’IMPORTE QUELLE CONNEXION | IAL | Not applicable | Not applicable |
| SERVER | SÉLECTIONNER TOUS LES ÉLÉMENTS SÉCURISABLES DE L’UTILISATEUR | SUS | Not applicable | Not applicable |
| SERVER | SHUTDOWN | SHDN | Not applicable | Not applicable |
| SERVER | UNSAFE ASSEMBLY | XU | Not applicable | Not applicable |
| SERVER | VOIR TOUTE BASE DE DONNÉES | VWDB | Not applicable | Not applicable |
| SERVER | Voir n'importe quelle définition | VWAD | Not applicable | Not applicable |
| SERVER | AFFICHER L’ÉTAT DU SERVEUR | VWSS | Not applicable | Not applicable |
| SERVER ROLE | ALTER | AL | SERVER | MODIFIER N’IMPORTE QUEL RÔLE SERVEUR |
| SERVER ROLE | CONTROL | CL | SERVER | CONTROL SERVER |
| SERVER ROLE | TAKE OWNERSHIP | TO | SERVER | CONTROL SERVER |
| SERVER ROLE | VIEW DEFINITION | VW | SERVER | Voir n'importe quelle définition |
| SERVICE | ALTER | AL | DATABASE | MODIFIER N'IMPORTE QUEL SERVICE |
| SERVICE | CONTROL | CL | DATABASE | CONTROL |
| SERVICE | SEND | SN | DATABASE | CONTROL |
| SERVICE | TAKE OWNERSHIP | TO | DATABASE | CONTROL |
| SERVICE | VIEW DEFINITION | VW | DATABASE | VIEW DEFINITION |
| SYMMETRIC KEY | ALTER | AL | DATABASE | MODIFIER TOUTE CLÉ SYMÉTRIQUE |
| SYMMETRIC KEY | CONTROL | CL | DATABASE | CONTROL |
| SYMMETRIC KEY | REFERENCES | RF | DATABASE | REFERENCES |
| SYMMETRIC KEY | TAKE OWNERSHIP | TO | DATABASE | CONTROL |
| SYMMETRIC KEY | VIEW DEFINITION | VW | DATABASE | VIEW DEFINITION |
| TYPE | CONTROL | CL | SCHEMA | CONTROL |
| TYPE | EXECUTE | EX | SCHEMA | EXECUTE |
| TYPE | REFERENCES | RF | SCHEMA | REFERENCES |
| TYPE | TAKE OWNERSHIP | TO | SCHEMA | CONTROL |
| TYPE | VIEW DEFINITION | VW | SCHEMA | VIEW DEFINITION |
| USER | ALTER | AL | DATABASE | MODIFIER TOUS LES UTILISATEURS |
| USER | CONTROL | CL | DATABASE | CONTROL |
| USER | IMPERSONATE | IM | DATABASE | CONTROL |
| USER | VIEW DEFINITION | VW | DATABASE | VIEW DEFINITION |
| COLLECTION DE SCHÉMAS XML | ALTER | AL | SCHEMA | ALTER |
| COLLECTION DE SCHÉMAS XML | CONTROL | CL | SCHEMA | CONTROL |
| COLLECTION DE SCHÉMAS XML | EXECUTE | EX | SCHEMA | EXECUTE |
| COLLECTION DE SCHÉMAS XML | REFERENCES | RF | SCHEMA | REFERENCES |
| COLLECTION DE SCHÉMAS XML | TAKE OWNERSHIP | TO | SCHEMA | CONTROL |
| COLLECTION DE SCHÉMAS XML | VIEW DEFINITION | VW | SCHEMA | VIEW DEFINITION |
Nouvelles autorisations granulaires ajoutées à SQL Server 2022
Les autorisations suivantes sont ajoutées à SQL Server 2022 :
10 nouvelles autorisations ont été ajoutées pour autoriser l’accès aux métadonnées système.
18 nouvelles autorisations ont été ajoutées pour les événements étendus.
9 nouvelles autorisations ont été ajoutées en ce qui concerne les objets liés à la sécurité.
4 autorisations ont été ajoutées pour le registre.
3 autorisations de base de données supplémentaires.
Pour en savoir plus, consultez Nouvelles autorisations granulaires pour SQL Server 2022 et Azure SQL permettant d’améliorer l’adhésion à PoLP.
Accès aux autorisations de métadonnées système
Server level:
- AFFICHER TOUTE DÉFINITION DE SÉCURITÉ
- AFFICHER N’IMPORTE QUELLE DÉFINITION DE PERFORMANCES
- AFFICHER L’ÉTAT DE SÉCURITÉ DU SERVEUR
- AFFICHER L’ÉTAT DES PERFORMANCES DU SERVEUR
- AFFICHER UNE DÉFINITION SÉCURISÉE PAR CHIFFREMENT
Database level:
- AFFICHER L’ÉTAT DE SÉCURITÉ DE LA BASE DE DONNÉES
- AFFICHER L’ÉTAT DES PERFORMANCES DE LA BASE DE DONNÉES
- AFFICHER LA DÉFINITION DE SÉCURITÉ
- AFFICHER LA DÉFINITION DES PERFORMANCES
- AFFICHER LA DÉFINITION SÉCURISÉE PAR CHIFFREMENT
Autorisations d’événements étendus
Server level:
- CRÉER UNE SESSION D’ÉVÉNEMENTS
- SUPPRIMER TOUTE SESSION D’ÉVÉNEMENTS
- MODIFIER TOUTE OPTION DE SESSION D'ÉVÉNEMENT
- ALTER ANY EVENT SESSION AJOUTER ÉVÉNEMENT
- ALTERER N'IMPORTE QUELLE SESSION D'ÉVÉNEMENT SUPPRIMER L'ÉVÉNEMENT
- MODIFIER TOUTE SESSION D'ÉVÉNEMENT ACTIVER
- MODIFIER TOUTE SESSION D'ÉVÉNEMENT DÉSACTIVER
- MODIFIER TOUTE SESSION D'ÉVÉNEMENTS AJOUTER CIBLE
- ALTER ANY EVENT SESSION DROP TARGET
Toutes ces autorisations sont sous la même autorisation parente : ALTER ANY EVENT SESSION
Database level:
- CRÉER UNE SESSION D'ÉVÉNEMENT DE BASE DE DONNÉES
- SUPPRIMER TOUTE SESSION D'ÉVÉNEMENTS DE BASE DE DONNÉES
- MODIFIER TOUTE OPTION DE SESSION D'ÉVÉNEMENT DE BASE DE DONNÉES
- ALTER ANY DATABASE EVENT SESSION ADD EVENT
- ALTER ANY SESSION D'ÉVÉNEMENT DE BASE DE DONNÉES SUPPRIMER ÉVÉNEMENT
- ALTER ANY DATABASE EVENT SESSION ENABLE
- ALTER ANY DATABASE EVENT SESSION DISABLE
- ALTER ANY DATABASE EVENT SESSION ADD TARGET
- MODIFIER UNE SESSION D'ÉVÉNEMENT DE BASE DE DONNÉES SUPPRIMER CIBLE
Toutes ces autorisations sont sous la même autorisation parente : ALTER ANY DATABASE EVENT SESSION
Autorisations d’objet relatives à la sécurité
- CONTROL (CREDENTIAL)
- CREATE LOGIN
- CREATE USER
- REFERENCES (CREDENTIAL)
- UNMASK (OBJECT)
- UNMASK (SCHEMA)
- AFFICHER TOUT JOURNAL DES ERREURS
- AUDIT DE SÉCURITÉ DU SERVEUR
- AFFICHER L’AUDIT DE SÉCURITÉ DE LA BASE DE DONNÉES
Ledger permissions
- ALTER LEDGER
- MODIFIER LA CONFIGURATION DU GRAND LIVRE
- ENABLE LEDGER
- AFFICHER LE CONTENU DU REGISTRE
Autres autorisations de base de données
- MODIFIER TOUTE TÂCHE EXTERNE
- MODIFIER TOUT FLUX EXTERNE
- EXÉCUTER TOUT POINT D'ACCÈS EXTERNE
Résumé de l’algorithme de vérification des autorisations
La vérification des autorisations peut être complexe. L’algorithme de vérification des autorisations englobe les membres de groupes qui se chevauchent et le chaînage des propriétés, l’autorisation explicite et implicite, et peut être affecté par les autorisations sur les classes sécurisables qui contiennent l’entité sécurisable. Le processus général de l’algorithme consiste à collecter toutes les autorisations pertinentes. Si aucun blocage DENY n’est rencontré, l’algorithme recherche une instruction GRANT fournissant un accès suffisant. L’algorithme contient trois éléments essentiels : le contexte de sécurité, l’espace d’autorisation et l’autorisation requise.
Note
Vous ne pouvez pas accorder, refuser ou révoquer des autorisations pour sa, dbole propriétaire de l’entité, information_schemasysou vous-même.
Security context
Il s’agit du groupe de principaux qui apporte les autorisations à la vérification d’accès. Ces autorisations sont liées à la connexion ou à l’utilisateur actif, à moins que le contexte de sécurité n’ait été modifié au profit d’une autre connexion ou d’un autre utilisateur par le biais de l’instruction EXECUTE AS. Le contexte de sécurité se compose des principaux suivants :
The login
The user
Role memberships
les appartenances aux groupes Windows ;
si la signature de module est utilisée, toute connexion ou compte d’utilisateur du certificat utilisé pour signer le module actuellement exécuté par l’utilisateur, ainsi que les appartenances aux rôles associées de ce principal.
Permission space
Correspond à l’entité sécurisable et aux classes sécurisables qui contiennent l’élément sécurisable. Par exemple, une table (entité sécurisable) est contenue par la classe sécurisable de schéma et par la classe sécurisable de base de données. L’accès peut être affecté par des autorisations de niveau table, schéma, base de données et serveur. Pour en savoir plus, consultez Hiérarchie des autorisations (moteur de base de données).
Required permission
Correspond au type d’autorisation requise. Il peut s’agir, par exemple, d’une autorisation INSERT, UPDATE, DELETE, SELECT, EXECUTE, ALTER, CONTROL, etc.
L’accès peut nécessiter plusieurs autorisations, comme l’illustrent les exemples suivants :
Une procédure stockée peut nécessiter une autorisation EXECUTE sur la procédure stockée et une autorisation INSERT sur plusieurs tables référencées par la procédure stockée.
Une vue de gestion dynamique peut nécessiter à la fois une autorisation VIEW SERVER STATE et une autorisation SELECT sur la vue.
Étapes générales de l’algorithme
Au moment de déterminer si l’accès à un élément sécurisable doit être autorisé, l’algorithme peut suivre différentes étapes en fonction des principaux et des éléments sécurisables concernés. Cependant, l’algorithme exécute les étapes générales suivantes :
Contournement de la procédure de vérification des autorisations si la connexion est membre du rôle serveur fixe sysadmin ou si l’utilisateur est l’utilisateur dbo dans la base de données active.
Autorisation de l’accès si le chaînage des propriétés est applicable et si la vérification de l’accès sur l’objet plus tôt dans la chaîne a passé avec succès le contrôle de sécurité.
Agrégation des identités de niveau serveur, base de données et du module signé qui sont associées à l’appelant pour créer le contexte de sécurité.
Pour ce contexte de sécurité, collecte de toutes les autorisations accordées ou refusées pour l’ espace d’autorisation. L’autorisation peut être explicitement déclarée comme une autorisation GRANT, GRANT WITH GRANT ou DENY ; les autorisations peuvent également correspondre à une autorisation implicite ou couvrante GRANT ou DENY. Par exemple, l’autorisation CONTROL sur un schéma implique une autorisation CONTROL sur une table. Et une autorisation CONTROL sur une table implique une autorisation SELECT. Par conséquent, si l’autorisation CONTROL a été accordée sur le schéma, l’autorisation SELECT l’est également sur la table. Si l’autorisation CONTROL a été refusée sur la table, l’autorisation SELECT l’est tout autant sur la table.
Note
Une instruction GRANT associée à une autorisation au niveau colonne se substitue à une instruction DENY au niveau objet. Pour plus d’informations, consultez DENY Object Permissions.
Identification de l’ autorisation requise.
Échec de la vérification des autorisations si l’ autorisation requise est directement ou implicitement refusée à l’une des identités dans le contexte de sécurité pour les objets contenus dans l’ espace d’autorisation.
Succès de la vérification des autorisations si l’autorisation requise n’a pas été refusée et si l’autorisation requise comporte une autorisation GRANT ou GRANT WITH GRANT directement ou implicitement accordée à l’une des identités dans le contexte de sécurité pour un objet de l’espace d’autorisation.
Considérations spéciales relatives aux autorisations au niveau des colonnes
Les autorisations au niveau des colonnes sont accordées avec la syntaxe <table_name>(<column _name>). For example:
GRANT SELECT ON OBJECT::Customer(CustomerName) TO UserJoe;
Une instruction DENY sur la table est remplacée par une instruction GRANT sur une colonne. Toutefois, une instruction DENY ultérieure sur la table supprime la colonne GRANT.
Examples
Les exemples de cette section montrent comment récupérer des informations relatives aux autorisations.
A. Renvoyer la liste complète des autorisations accordables
L’instruction suivante renvoie toutes les autorisations de moteur de base de données à l’aide de la fonction fn_builtin_permissions. Pour plus d’informations, consultez sys.fn_builtin_permissions.
SELECT * FROM fn_builtin_permissions(default);
GO
B. Renvoyer les autorisations sur une classe d’objets particulière
L’exemple suivant utilise la fonction fn_builtin_permissions pour consulter toutes les autorisations disponibles pour une catégorie d’élément sécurisable donnée. L’exemple retourne les autorisations sur les assemblys.
SELECT * FROM fn_builtin_permissions('assembly');
GO
C. Renvoyer les autorisations accordées au principal en cours d’exécution sur un objet
L’exemple suivant utilise la fonction fn_my_permissions pour retourner la liste des autorisations effectives détenues par le principal appelant sur un élément sécurisable spécifié. L’exemple retourne les autorisations sur un objet nommé Orders55. Pour plus d’informations, consultez sys.fn_my_permissions.
SELECT * FROM fn_my_permissions('Orders55', 'object');
GO
D. Renvoyer les autorisations applicables à un objet spécifié
L’exemple suivant retourne les autorisations applicables à un objet nommé Yttrium. La fonction intégrée OBJECT_ID permet de récupérer l’ID de l’objet Yttrium.
SELECT * FROM sys.database_permissions
WHERE major_id = OBJECT_ID('Yttrium');
GO