Partager via


Accorder des autorisations sur une procédure stockée

S’applique à :SQL ServerAzure SQL DatabaseAzure SQL Managed InstanceAzure Synapse AnalyticsAnalytics Platform System (PDW)Base de données SQL dans Microsoft Fabric

Cet article explique comment accorder des autorisations sur une procédure stockée à l’aide de SQL Server Management Studio ou de Transact-SQL. Les autorisations peuvent être accordées à un utilisateur existant, à un rôle de base de données ou à un rôle d'application dans la base de données.

Limites

Autorisations

Le fournisseur d’autorisations (ou le principal spécifié avec l’option AS) doit disposer soit de l’autorisation elle-même avec GRANT OPTION, soit d’une autorisation plus élevée qui implique l’autorisation en cours d’octroi. Exige l’autorisation ALTER sur le schéma auquel la procédure appartient, ou l’autorisation CONTROL sur la procédure. Pour plus d’informations, consultez GRANT Object Permissions (Transact-SQL).

Utiliser SQL Server Management Studio

Accorder des autorisations sur une procédure stockée

  1. Dans l’Explorateur d’objets, connectez-vous à une instance du moteur de base de données et développez-la.

  2. Développez Bases de données, développez la base de données à laquelle appartient la procédure, puis développez Programmabilité.

  3. Développez Procédures stockées, cliquez avec le bouton droit sur la procédure sur laquelle vous voulez accorder des autorisations, puis sélectionnez Propriétés.

  4. Dans Propriétés de la procédure stockée, sélectionnez la page Autorisations .

  5. Pour accorder des autorisations à un utilisateur, à un rôle de base de données ou à un rôle d’application, sélectionnez Rechercher.

  6. Dans Sélectionner des utilisateurs ou des rôles, sélectionnez Types d’objets pour ajouter ou désactiver les utilisateurs et les rôles de votre choix.

  7. Sélectionnez Parcourir pour afficher la liste des utilisateurs ou des rôles. Sélectionnez les utilisateurs ou les rôles auxquels les autorisations doivent être accordées.

  8. Dans la grille Autorisations explicites , sélectionnez les autorisations à accorder à l'utilisateur ou au rôle spécifiés. Pour obtenir une description des autorisations, consultez Autorisations (moteur de base de données).

Sélectionner Accorder indique que le bénéficiaire recevra l'autorisation spécifiée. Sélectionner Accorder avec indique que le bénéficiaire de l'autorisation a également la possibilité d'accorder l'autorisation spécifiée à d'autres principaux.

Utiliser Transact-SQL

Accorder des autorisations sur une procédure stockée

  1. Connectez-vous au Moteur de base de données.

  2. Dans la barre d’outils, sélectionnez Nouvelle requête.

  3. Copiez et collez l’exemple suivant dans la fenêtre de requête, puis sélectionnez Exécuter. Dans cet exemple, l'autorisation EXECUTE sur la procédure stockée HumanResources.uspUpdateEmployeeHireInfo est accordée à un rôle d'application nommé Recruiting11.

USE AdventureWorks2022;
GRANT EXECUTE ON OBJECT::HumanResources.uspUpdateEmployeeHireInfo
    TO Recruiting11;
GO

Accorder des autorisations sur toutes les procédures stockées dans un schéma

  1. Connectez-vous au Moteur de base de données.

  2. Dans la barre d’outils standard, sélectionnez Nouvelle requête.

  3. Copiez et collez l’exemple suivant dans la fenêtre de requête, puis sélectionnez Exécuter. Cet exemple accorde l’autorisation EXECUTE à toutes les procédures stockées qui existent ou vont exister dans le schéma HumanResources à un rôle d’application nommé Recruiting11.

USE AdventureWorks2022;
GRANT EXECUTE ON SCHEMA::HumanResources
    TO Recruiting11;
GO