Créer un proxy de SQL Server Agent

Cette rubrique explique comment créer un proxy de SQL Server Agent dans SQL Server 2012 à l'aide de SQL Server Management Studio ou de Transact-SQL.

Un compte proxy de l'Agent SQL Server définit un contexte de sécurité dans lequel une étape de travail peut être exécutée. Chaque proxy correspond à des informations d'identification de sécurité. Pour définir des autorisations pour une étape de travail particulière, créez un proxy possédant les autorisations requises pour un sous-système de l'Agent SQL Server, puis assignez ce proxy à l'étape de travail.

Dans cette rubrique

  • Avant de commencer :

    Limitations et restrictions

    Sécurité

  • Pour créer un proxy de SQL Server Agent, utilisez :

    SQL Server Management Studio

    Transact-SQL

Avant de commencer

Limitations et restrictions

  • Vous devez créer des informations d'identification avant de créer un proxy si elles ne sont pas disponibles.

  • Les proxys de l'Agent SQL Server utilisent les informations d'identification pour stocker les informations relatives aux comptes d'utilisateur Windows. L'utilisateur spécifié dans l'information d'identification doit être habilité à ouvrir une session en tant que programme de traitement par lots sur l'ordinateur sur lequel SQL Server est en cours d'exécution.

  • L'Agent SQL Server vérifie l'accès au sous-système pour un proxy et donne accès au proxy à chaque exécution de l'étape de travail. Si le proxy n'a plus accès au sous-système, l'étape de travail échoue. Sinon, l'Agent SQL Server emprunte l'identité de l'utilisateur spécifié dans le proxy et exécute l'étape de travail.

  • La création d'un proxy ne modifie pas les autorisations de l'utilisateur spécifié dans l'information d'identification du proxy. Par exemple, vous pouvez créer un proxy pour un utilisateur qui n'est pas autorisé à se connecter à une instance de SQL Server. Dans ce cas, les étapes de travail qui utilisent ce proxy ne sont pas en mesure de se connecter à SQL Server.

  • Si la connexion de l'utilisateur a accès au proxy ou que l'utilisateur appartient à un rôle qui y a accès, l'utilisateur peut recourir au proxy dans une étape de travail.

Sécurité

Autorisations

  • Seuls les membres du rôle de serveur fixe sysadmin ont l'autorisation de créer, modifier ou supprimer des comptes proxy. Les utilisateurs qui ne sont pas des membres du rôle serveur fixe sysadmin doivent être ajoutés à l'un des rôles de bases de données fixes Agent SQL Server suivants dans la base de données msdb pour utiliser des proxys : SQLAgentUserRole, SQLAgentReaderRole ou SQLAgentOperatorRole.

  • Requiert l'autorisation ALTER ANY CREDENTIAL lors de la création des informations d'identification en plus du proxy.

Icône de flèche utilisée avec le lien Retour en haut[Top]

Utilisation de SQL Server Management Studio

Pour créer un proxy de l'Agent SQL Server

  1. Dans l'Explorateur d'objets, cliquez sur le signe plus (+) pour développer le serveur sur lequel vous souhaitez créer un proxy sur SQL Server Agent.

  2. Cliquez sur le signe plus (+) pour développer Agent SQL Server.

  3. Cliquez avec le bouton droit sur le dossier Proxys et sélectionnez Nouveau proxy.

  4. Dans la boîte de dialogue Nouveau compte proxy, sur la page Général, entrez le nom du compte proxy dans la zone Nom du proxy.

  5. Dans la zone Nom d'identification, entrez le nom des informations d'identification de sécurité que le compte proxy utilisera.

  6. Dans la zone Description, entrez une description du compte proxy

  7. Sous Actif pour les sous-systèmes suivants, sélectionnez le ou les sous-systèmes appropriés pour ce proxy.

  8. Sur la page Principaux, ajoutez ou supprimez des connexions ou des rôles pour accorder ou refuser un accès au compte proxy.

  9. Lorsque vous avez terminé, cliquez sur OK.

Icône de flèche utilisée avec le lien Retour en haut[Top]

Utilisation de Transact-SQL

Pour créer un proxy de l'Agent SQL Server

  1. Dans l'Explorateur d'objets, connectez-vous à une instance de Moteur de base de données.

  2. Dans la barre d'outils standard, cliquez sur Nouvelle requête.

  3. Copiez et collez l'exemple suivant dans la fenêtre de requête, puis cliquez sur Exécuter.

    -- creates credential CatalogApplicationCredential
    USE msdb ;
    GO
    CREATE CREDENTIAL CatalogApplicationCredential WITH IDENTITY = 'REDMOND/TestUser', 
        SECRET = 'G3$1o)lkJ8HNd!';
    GO
    -- creates proxy "Catalog application proxy" and assigns the credential 'CatalogApplicationCredential' to it.
    EXEC dbo.sp_add_proxy
        @proxy_name = 'Catalog application proxy',
        @enabled = 1,
        @description = 'Maintenance tasks on catalog application.',
        @credential_name = 'CatalogApplicationCredential' ;
    GO
    -- grants the proxy "Catalog application proxy" access to the ActiveX Scripting subsystem.
    EXEC dbo.sp_grant_proxy_to_subsystem
        @proxy_name = N'Catalog application proxy',
        @subsystem_id = 2 ;
    GO
    

Pour plus d'informations, consultez :

Icône de flèche utilisée avec le lien Retour en haut[Top]