CREATE APPLICATION ROLE (Transact-SQL)CREATE APPLICATION ROLE (Transact-SQL)

S’applique à :Applies to: ouiSQL ServerSQL Server (toutes les versions prises en charge) yesSQL ServerSQL Server (all supported versions) OuiAzure SQL DatabaseAzure SQL DatabaseYesAzure SQL DatabaseAzure SQL DatabaseS’applique à :Applies to: ouiSQL ServerSQL Server (toutes les versions prises en charge) yesSQL ServerSQL Server (all supported versions) OuiAzure SQL DatabaseAzure SQL DatabaseYesAzure SQL DatabaseAzure SQL Database

Ajoute un rôle d'application à la base de données active.Adds an application role to the current database.

Icône Lien de rubrique Conventions de la syntaxe Transact-SQLTopic link icon Transact-SQL Syntax Conventions

SyntaxeSyntax

  
CREATE APPLICATION ROLE application_role_name   
    WITH PASSWORD = 'password' [ , DEFAULT_SCHEMA = schema_name ]  

Notes

Pour afficher la syntaxe Transact-SQL pour SQL Server 2014 et versions antérieures, consultez Versions antérieures de la documentation.To view Transact-SQL syntax for SQL Server 2014 and earlier, see Previous versions documentation.

ArgumentsArguments

application_role_nameapplication_role_name
Indique le nom du rôle d'application.Specifies the name of the application role. Ce nom ne doit pas être déjà utilisé pour référencer un principal dans la base de données.This name must not already be used to refer to any principal in the database.

PASSWORD =' password 'PASSWORD ='password'
Spécifie le mot de passe que les utilisateurs de base de données doivent utiliser pour activer le rôle d'application.Specifies the password that database users will use to activate the application role. Vous devez toujours utiliser des mots de passe forts.You should always use strong passwords. password doit satisfaire aux critères de la stratégie de mot de passe Windows de l’ordinateur qui exécute l’instance de SQL ServerSQL Server.password must meet the Windows password policy requirements of the computer that is running the instance of SQL ServerSQL Server.

DEFAULT_SCHEMA = schéma_nomDEFAULT_SCHEMA =schema_name
Indique le premier schéma dans lequel le serveur doit effectuer des recherches lorsqu'il résout les noms des objets pour ce rôle.Specifies the first schema that will be searched by the server when it resolves the names of objects for this role. Si DEFAULT_SCHEMA n'est pas défini, le rôle d'application utilise DBO comme schéma par défaut.If DEFAULT_SCHEMA is left undefined, the application role will use DBO as its default schema. schema_name peut être un schéma qui n’existe pas dans la base de données.schema_name can be a schema that does not exist in the database.

NotesRemarks

Important

La complexité des mots de passe est vérifiée lors de la définition des mots de passe des rôles d'application.Password complexity is checked when application role passwords are set. Les applications qui appellent des rôles d'application doivent stocker leurs mots de passe.Applications that invoke application roles must store their passwords. Les mots de passe des rôles d'application doivent toujours être stockés sous forme chiffrée.Application role passwords should always be stored encrypted.

Les rôles d’application sont consultables dans la vue de catalogue sys.database_principals.Application roles are visible in the sys.database_principals catalog view.

Pour plus d’informations sur l’utilisation des rôles d’application, consultez Rôles d’application.For information about how to use application roles, see Application Roles.

Attention

Avec l'arrivée de SQL Server 2005, le comportement des schémas a changé.Beginning with SQL Server 2005, the behavior of schemas changed. Ainsi, le code qui suppose que les schémas sont équivalents aux utilisateurs de base de données peut ne plus renvoyer des résultats corrects.As a result, code that assumes that schemas are equivalent to database users may no longer return correct results. Vous ne devez pas recourir aux anciens affichages catalogue, notamment sysobjects, dans une base de données où une des instructions DDL suivantes a été utilisée : CREATE SCHEMA, ALTER SCHEMA, DROP SCHEMA, CREATE USER, ALTER USER, DROP USER, CREATE ROLE, ALTER ROLE, DROP ROLE, CREATE APPROLE, ALTER APPROLE, DROP APPROLE, ALTER AUTHORIZATION.Old catalog views, including sysobjects, should not be used in a database in which any of the following DDL statements have ever been used: CREATE SCHEMA, ALTER SCHEMA, DROP SCHEMA, CREATE USER, ALTER USER, DROP USER, CREATE ROLE, ALTER ROLE, DROP ROLE, CREATE APPROLE, ALTER APPROLE, DROP APPROLE, ALTER AUTHORIZATION. Dans ces bases de données, vous devez utiliser les nouveaux affichages catalogue.In such databases you must instead use the new catalog views. Les nouveaux affichages catalogue tiennent compte de la séparation des principaux et des schémas introduite dans SQL Server 2005The new catalog views take into account the separation of principals and schemas that was introduced in SQL Server 2005. Pour plus d’informations sur les affichages catalogue, consultez Affichages catalogue (Transact-SQL).For more information about catalog views, see Catalog Views (Transact-SQL).

AutorisationsPermissions

Nécessite l'autorisation ALTER ANY APPLICATION ROLE sur la base de données.Requires ALTER ANY APPLICATION ROLE permission on the database.

ExemplesExamples

Dans l'exemple ci-dessous, un rôle d'application nommé weekly_receipts est créé, doté du mot de passe 987Gbv876sPYY5m23 et du schéma Sales par défaut.The following example creates an application role called weekly_receipts that has the password 987Gbv876sPYY5m23 and Sales as its default schema.

CREATE APPLICATION ROLE weekly_receipts   
    WITH PASSWORD = '987G^bv876sPY)Y5m23'   
    , DEFAULT_SCHEMA = Sales;  
GO  

Voir aussiSee Also

Rôles d’application Application Roles
sp_setapprole (Transact-SQL) sp_setapprole (Transact-SQL)
ALTER APPLICATION ROLE (Transact-SQL) ALTER APPLICATION ROLE (Transact-SQL)
DROP APPLICATION ROLE (Transact-SQL) DROP APPLICATION ROLE (Transact-SQL)
Stratégie de mot de passe Password Policy
EVENTDATA (Transact-SQL)EVENTDATA (Transact-SQL)