sys.fn_builtin_permissions (Transact-SQL)

S’applique à :SQL ServerAzure SQL DatabaseAzure SQL Managed InstanceBase de données SQL dans Microsoft Fabric

Retourne une description de la hiérarchie des autorisations intégrées du serveur. sys.fn_builtin_permissions ne peut être appelé que sur SQL Server et Azure SQL Database, et il retourne toutes les autorisations, qu’elles soient prises en charge sur la plateforme actuelle. La plupart des autorisations s’appliquent à toutes les plates-formes, mais ce n’est pas le cas pour certaines d’entre elles. Par exemple, les autorisations au niveau du serveur ne peuvent pas être accordées sur SQL Database. Pour plus d’informations sur les plateformes qui prennent en charge chaque autorisation, consultez Autorisations (Moteur de base de données).

Conventions de la syntaxe Transact-SQL

Syntax

sys.fn_builtin_permissions ( [ DEFAULT | NULL ]
    | empty_string | '<securable_class>' } )
  
<securable_class> ::=
      APPLICATION ROLE | ASSEMBLY | ASYMMETRIC KEY | AVAILABILITY GROUP
    | CERTIFICATE | CONTRACT | DATABASE | DATABASE SCOPED CREDENTIAL
    | ENDPOINT | FULLTEXT CATALOG | FULLTEXT STOPLIST | LOGIN
    | MESSAGE TYPE | OBJECT | REMOTE SERVICE BINDING | ROLE | ROUTE
    | SCHEMA | SEARCH PROPERTY LIST | SERVER | SERVER ROLE | SERVICE
    | SYMMETRIC KEY | TYPE | USER | XML SCHEMA COLLECTION

Arguments

[ DEFAULT | NULL ]

Lorsqu’elle est appelée avec l’option DEFAULT (sans guillemets), la fonction renverra une liste complète des autorisations intégrées.

NULL est équivalent à DEFAULT.

empty_string

Équivalent à DEFAULT.

’<securable_class>’

Lorsqu’elle est appelée avec le nom d’une classe sécurisable, sys.fn_builtin_permissions retourne toutes les autorisations qui s’appliquent à la classe. '<securable_class>' est un littéral de chaîne de type nvarchar(60) qui nécessite des guillemets.

Retour des tables

Nom de colonne Type de données Collation Description
class_desc nvarchar(60) Classement du serveur. Description de la classe sécurisable.
permission_name nvarchar(60) Classement du serveur. Nom de permission.
type varchar(4) Classement du serveur. Code du type d'autorisation compacte. Consultez le tableau qui suit.
covering_permission_name nvarchar(60) Classement du serveur. S'il n'est pas NULL, il s'agit du nom de l'autorisation de cette classe, qui implique les autres autorisations de la classe.
parent_class_desc nvarchar(60) Classement du serveur. S'il n'est pas NULL, il s'agit du nom de la classe parente qui contient la classe actuelle.
parent_covering_permission_name nvarchar(60) Classement du serveur. S'il n'est pas NULL, il s'agit du nom de l'autorisation de la classe parente, qui implique toutes les autres autorisations de cette classe.

Types d’autorisations

Type d'autorisation Nom de l’autorisation S'applique à un élément sécurisable ou une classe
AADS MODIFIER TOUT DATABASEEVENT SESSION

S’applique à : SQL Server 2014 (12.x) et versions ultérieures.
DATABASE
AAES MODIFIER TOUT EVENT SESSION SERVER
AAMK MODIFIER TOUT MASQUE

S’applique à : SQL Server 2016 (13.x) et versions ultérieures.
DATABASE
ADBO ADMINISTRER DES OPÉRATIONS GROUPÉES SERVER
AEDS MODIFIER TOUT EXTERNAL DATA SOURCE

S’applique à : SQL Server 2016 (13.x) et versions ultérieures.
DATABASE
AEFF MODIFIER TOUT EXTERNAL FILE FORMAT

S’applique à : SQL Server 2016 (13.x) et versions ultérieures.
DATABASE
AL ALTER APPLICATION ROLE
AL ALTER ASSEMBLY
AL ALTER

S’applique à : SQL Server 2012 (11.x) et versions ultérieures.
AVAILABILITY GROUP
AL ALTER ASYMMETRIC KEY
AL ALTER CERTIFICATE
AL ALTER CONTRACT
AL ALTER DATABASE
AL ALTER

S’applique à : SQL Server 2017 (14.x) et versions ultérieures et Azure SQL Database.
DATABASE SCOPED CREDENTIAL
AL ALTER ENDPOINT
AL ALTER FULLTEXT CATALOG
AL ALTER FULLTEXT STOPLIST
AL ALTER LOGIN
AL ALTER MESSAGE TYPE
AL ALTER OBJECT
AL ALTER REMOTE SERVICE BINDING
AL ALTER ROLE
AL ALTER ROUTE
AL ALTER SCHEMA
AL ALTER SEARCH PROPERTY LIST
AL ALTER

S’applique à : SQL Server 2012 (11.x) et versions ultérieures.
SERVER ROLE
AL ALTER SERVICE
AL ALTER SYMMETRIC KEY
AL ALTER USER
AL ALTER XML SCHEMA COLLECTION
ALAA MODIFIER TOUT SERVER AUDIT SERVER
ALAG MODIFIER TOUT AVAILABILITY GROUP

S’applique à : SQL Server 2012 (11.x) et versions ultérieures.
SERVER
ALAK MODIFIER TOUT ASYMMETRIC KEY DATABASE
ALAR MODIFIER TOUT APPLICATION ROLE DATABASE
ALAS MODIFIER TOUT ASSEMBLY DATABASE
ALCD MODIFIER TOUT CREDENTIAL SERVER
ALCF MODIFIER TOUT CERTIFICATE DATABASE
ALCK MODIFIER TOUT COLUMN ENCRYPTION KEY

S’applique à : SQL Server 2016 (13.x) et versions ultérieures.
DATABASE
ALCM MODIFIER TOUT COLUMN MASTER KEY

S’applique à : SQL Server 2016 (13.x) et versions ultérieures.
DATABASE
ALCO MODIFIER N’IMPORTE QUELLE CONNEXION SERVER
ALDA MODIFIER TOUT DATABASE AUDIT DATABASE
ALDB MODIFIER TOUT DATABASE SERVER
ALDC MODIFIER TOUT DATABASE SCOPED CONFIGURATION

S’applique à : SQL Server 2016 (13.x) et versions ultérieures.
DATABASE
ALDS MODIFIER TOUT ESPACE DE DONNÉES DATABASE
ALED MODIFIER TOUT DATABASEEVENT NOTIFICATION DATABASE
ALES MODIFIER TOUT EVENT NOTIFICATION SERVER
ALFT MODIFIER TOUT FULLTEXT CATALOG DATABASE
ALHE MODIFIER TOUT ENDPOINT SERVER
ALLG MODIFIER TOUT LOGIN SERVER
ALLS MODIFIER N’IMPORTE QUEL SERVEUR LIÉ SERVER
ALMT MODIFIER TOUT MESSAGE TYPE DATABASE
ALRL MODIFIER TOUT ROLE DATABASE
ALRS MODIFIER RESSOURCES SERVER
ALRT MODIFIER TOUT ROUTE DATABASE
ALSB MODIFIER TOUT REMOTE SERVICE BINDING DATABASE
ALSC MODIFIER TOUT CONTRACT DATABASE
ALSK MODIFIER TOUT SYMMETRIC KEY DATABASE
ALSM MODIFIER TOUT SCHEMA DATABASE
ALSP MODIFIER TOUT SECURITY POLICY

S’applique à : SQL Server 2016 (13.x) et versions ultérieures.
DATABASE
ALSR MODIFIER TOUT SERVER ROLE

S’applique à : SQL Server 2012 (11.x) et versions ultérieures.
SERVER
ALSS MODIFIER L'ÉTAT DU SERVEUR SERVER
ALST MODIFIER LES RÉGLAGES SERVER
ALSV MODIFIER TOUT SERVICE DATABASE
ALTG MODIFIER N’IMPORTE QUEL DATABASE DDL TRIGGER DATABASE
ALTR ALTER TRACE SERVER
ALUS MODIFIER TOUT USER DATABASE
AUTH AUTHENTICATE DATABASE
AUTH AUTHENTIFIER SERVEUR SERVER
BADB BACKUP DATABASE DATABASE
BALO BACKUP JOURNAL DATABASE
CADB CONNECTER N’IMPORTE QUEL DATABASE

S’applique à : SQL Server 2014 (12.x) et ultérieur.
SERVER
CL CONTROL APPLICATION ROLE
CL CONTROL ASSEMBLY
CL CONTROL ASYMMETRIC KEY
CL CONTROL

S’applique à : SQL Server 2012 (11.x) et versions ultérieures.
AVAILABILITY GROUP
CL CONTROL CERTIFICATE
CL CONTROL CONTRACT
CL CONTROL DATABASE
CL CONTROL

S’applique à : SQL Server 2017 (14.x) et versions ultérieures et Azure SQL Database.
DATABASE SCOPED CREDENTIAL
CL CONTROL ENDPOINT
CL CONTROL FULLTEXT CATALOG
CL CONTROL FULLTEXT STOPLIST
CL CONTROL LOGIN
CL CONTROL MESSAGE TYPE
CL CONTROL OBJECT
CL CONTROL REMOTE SERVICE BINDING
CL CONTROL ROLE
CL CONTROL ROUTE
CL CONTROL SCHEMA
CL CONTROL SEARCH PROPERTY LIST
CL SERVEUR DE CONTRÔLE SERVER
CL CONTROL

S’applique à : SQL Server 2012 (11.x) et versions ultérieures.
SERVER ROLE
CL CONTROL SERVICE
CL CONTROL SYMMETRIC KEY
CL CONTROL TYPE
CL CONTROL USER
CL CONTROL XML SCHEMA COLLECTION
CO CONNECT DATABASE
CO CONNECT ENDPOINT
CORP RÉPLICATION DE CONNEXION DATABASE
COSQ CONNECT SQL SERVER
CP CHECKPOINT DATABASE
CRAC CREATE AVAILABILITY GROUP

S’applique à : SQL Server 2012 (11.x) et versions ultérieures.
SERVER
CRAG CREATE AGGREGATE DATABASE
CRAK CREATE ASYMMETRIC KEY DATABASE
CRAS CREATE ASSEMBLY DATABASE
CRCF CREATE CERTIFICATE DATABASE
CRDB CRÉEZ N’IMPORTE QUEL DATABASE SERVER
CRDB CREATE DATABASE DATABASE
CRDE CRÉER DDL EVENT NOTIFICATION SERVER
CRDF CREATE DEFAULT DATABASE
CRED CREATE DATABASE DDL EVENT NOTIFICATION DATABASE
CRFN CREATE FUNCTION DATABASE
CRFT CREATE FULLTEXT CATALOG DATABASE
CRHE CREATE ENDPOINT SERVER
CRMT CREATE MESSAGE TYPE DATABASE
CRPR CREATE PROCEDURE DATABASE
CRQU CREATE QUEUE DATABASE
CRRL CREATE ROLE DATABASE
CRRT CREATE ROUTE DATABASE
CRRU CREATE RULE DATABASE
CRSB CREATE REMOTE SERVICE BINDING DATABASE
CRSC CREATE CONTRACT DATABASE
CRSK CREATE SYMMETRIC KEY DATABASE
CRSM CREATE SCHEMA DATABASE
CRSN CREATE SYNONYM DATABASE
CRSO CREATE SEQUENCE SCHEMA
CRSR CREATE SERVER ROLE

S’applique à : SQL Server 2012 (11.x) et versions ultérieures.
SERVER
CRSV CREATE SERVICE DATABASE
CRTB CREATE TABLE DATABASE
CRTE CRÉER TRACE EVENT NOTIFICATION SERVER
CRTY CREATE TYPE DATABASE
CRVW CREATE VIEW DATABASE
CRXS CREATE XML SCHEMA COLLECTION DATABASE
DABO ADMINISTRATION DATABASE DES OPÉRATIONS EN VRAC

S’applique à : SQL Database.
DATABASE
DL DELETE DATABASE
DL DELETE OBJECT
DL DELETE SCHEMA
EAES EXÉCUTER UN SCRIPT EXTERNE

S’applique à : SQL Server 2016 (13.x) et versions ultérieures.
DATABASE
EX EXECUTE DATABASE
EX EXECUTE OBJECT
EX EXECUTE SCHEMA
EX EXECUTE TYPE
EX EXECUTE XML SCHEMA COLLECTION
IAL USURPER N’IMPORTE QUEL LOGIN

S’applique à : SQL Server 2014 (12.x) et ultérieur.
SERVER
IM IMPERSONATE LOGIN
IM IMPERSONATE USER
IN INSERT DATABASE
IN INSERT OBJECT
IN INSERT SCHEMA
KIDC KILL DATABASE CONNECTION

S’applique à : Azure SQL Database.
DATABASE
RC RECEIVE OBJECT
RF REFERENCES ASSEMBLY
RF REFERENCES ASYMMETRIC KEY
RF REFERENCES CERTIFICATE
RF REFERENCES CONTRACT
RF REFERENCES DATABASE
RF REFERENCES

S’applique à : SQL Server 2017 (14.x) et versions ultérieures et Azure SQL Database.
DATABASE SCOPED CREDENTIAL
RF REFERENCES FULLTEXT CATALOG
RF REFERENCES FULLTEXT STOPLIST
RF REFERENCES SEARCH PROPERTY LIST
RF REFERENCES MESSAGE TYPE
RF REFERENCES OBJECT
RF REFERENCES SCHEMA
RF REFERENCES SYMMETRIC KEY
RF REFERENCES TYPE
RF REFERENCES XML SCHEMA COLLECTION
SHDN SHUTDOWN SERVER
SL SELECT DATABASE
SL SELECT OBJECT
SL SELECT SCHEMA
SN SEND SERVICE
SPLN SHOWPLAN DATABASE
SUQN NOTIFICATIONS DE REQUÊTE D’ABONNEMENT DATABASE
SUS SÉLECTIONNEZ TOUS USER LES TITRES

S’applique à : SQL Server 2014 (12.x) et ultérieur.
SERVER
TO PRENDRE POSSESSION ASSEMBLY
TO PRENDRE POSSESSION ASYMMETRIC KEY
TO PRENDRE POSSESSION

S’applique à : SQL Server 2012 (11.x) et versions ultérieures.
AVAILABILITY GROUP
TO PRENDRE POSSESSION CERTIFICATE
TO PRENDRE POSSESSION CONTRACT
TO PRENDRE POSSESSION DATABASE
TO PRENDRE POSSESSION

S’applique à : SQL Server 2017 (14.x) et versions ultérieures et Azure SQL Database.
DATABASE SCOPED CREDENTIAL
TO PRENDRE POSSESSION ENDPOINT
TO PRENDRE POSSESSION FULLTEXT CATALOG
TO PRENDRE POSSESSION FULLTEXT STOPLIST
TO PRENDRE POSSESSION SEARCH PROPERTY LIST
TO PRENDRE POSSESSION MESSAGE TYPE
TO PRENDRE POSSESSION OBJECT
TO PRENDRE POSSESSION REMOTE SERVICE BINDING
TO PRENDRE POSSESSION ROLE
TO PRENDRE POSSESSION ROUTE
TO PRENDRE POSSESSION SCHEMA
TO PRENDRE POSSESSION

S’applique à : SQL Server 2012 (11.x) et versions ultérieures.
SERVER ROLE
TO PRENDRE POSSESSION SERVICE
TO PRENDRE POSSESSION SYMMETRIC KEY
TO PRENDRE POSSESSION TYPE
TO PRENDRE POSSESSION XML SCHEMA COLLECTION
UMSK UNMASK

S’applique à : SQL Server 2016 (13.x) et versions ultérieures.
DATABASE
UP UPDATE DATABASE
UP UPDATE OBJECT
UP UPDATE SCHEMA
VW VIEW DÉFINITION APPLICATION ROLE
VW VIEW DÉFINITION ASSEMBLY
VW VIEW DÉFINITION ASYMMETRIC KEY
VW VIEW DÉFINITION

S’applique à : SQL Server 2012 (11.x) et versions ultérieures.
AVAILABILITY GROUP
VW VIEW DÉFINITION CERTIFICATE
VW VIEW DÉFINITION CONTRACT
VW VIEW DÉFINITION DATABASE
VW VIEW DÉFINITION

S’applique à : SQL Server 2017 (14.x) et versions ultérieures et Azure SQL Database.
DATABASE SCOPED CREDENTIAL
VW VIEW DÉFINITION ENDPOINT
VW VIEW DÉFINITION FULLTEXT CATALOG
VW VIEW DÉFINITION FULLTEXT STOPLIST
VW VIEW DÉFINITION LOGIN
VW VIEW DÉFINITION MESSAGE TYPE
VW VIEW DÉFINITION OBJECT
VW VIEW DÉFINITION REMOTE SERVICE BINDING
VW VIEW DÉFINITION ROLE
VW VIEW DÉFINITION ROUTE
VW VIEW DÉFINITION SCHEMA
VW VIEW DÉFINITION SEARCH PROPERTY LIST
VW VIEW DÉFINITION

S’applique à : SQL Server 2012 (11.x) et versions ultérieures.
SERVER ROLE
VW VIEW DÉFINITION SERVICE
VW VIEW DÉFINITION SYMMETRIC KEY
VW VIEW DÉFINITION TYPE
VW VIEW DÉFINITION USER
VW VIEW DÉFINITION XML SCHEMA COLLECTION
VWAD VIEW TOUTE DÉFINITION SERVER
VWCK VIEW TOUTE COLUMN ENCRYPTION KEY DÉFINITION

S’applique à : SQL Server 2016 (13.x) et versions ultérieures.
DATABASE
VWCM VIEW TOUTE COLUMN MASTER KEY DÉFINITION

S’applique à : SQL Server 2016 (13.x) et versions ultérieures.
DATABASE
VWCT VIEW SUIVI DES CHANGEMENTS OBJECT
VWCT VIEW SUIVI DES CHANGEMENTS SCHEMA
VWDB VIEW N’IMPORTE LA DATABASE SERVER
VWDS VIEW DATABASE ÉTAT DATABASE
VWSS VIEW ÉTAT DU SERVEUR SERVER
XA ACCÈS EXTERNE ASSEMBLY SERVER
XU INSÛR ASSEMBLY SERVER

Remarks

sys.fn_builtin_permissions est une fonction table qui émet une copie de la hiérarchie d'autorisations prédéfinies. Cette hiérarchie inclut les autorisations d'accompagnement. Le DEFAULT jeu de résultats décrit un graphique acyclique dirigé de la hiérarchie des autorisations, dont la racine est (classe = SERVER, permission = CONTROL SERVER).

sys.fn_builtin_permissions n'accepte pas de paramètres mis en corrélation.

sys.fn_builtin_permissions retournera un jeu vide s'il est appelé avec un nom de classe qui n'est pas valide.

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 du moteur de base de données au format PDF.

Capture d’écran du fichier PDF des autorisations du moteur de base de données.

Permissions

Nécessite l'appartenance au rôle public.

Examples

A. Répertorier toutes les autorisations intégrées

Utilisez DEFAULT ou une chaîne vide pour renvoyer toutes les autorisations.

SELECT * FROM sys.fn_builtin_permissions(DEFAULT);
SELECT * FROM sys.fn_builtin_permissions('');

B. Répertorier les autorisations qui peuvent être définies sur une clé symétrique

Spécifiez une classe pour retourner toutes les autorisations possibles pour cette classe.

SELECT * FROM sys.fn_builtin_permissions(N'SYMMETRIC KEY');

C. Répertorier les classes sur lesquelles il existe une autorisation SELECT

SELECT * FROM sys.fn_builtin_permissions(DEFAULT)
    WHERE permission_name = 'SELECT';

Voir aussi