Rôles SQL Server Agent - Amazon Relational Database Service

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

Rôles SQL Server Agent

RDS for SQL Server prend en charge les rôles SQL Server Agent suivants avec différents niveaux d’autorisation pour la gestion des tâches :

  • SQLAgentUserRole

    Autorisations

    • Créer et gérer leurs propres tâches, planifications et opérateurs

    • Afficher les propriétés de leurs propres tâches et planifications

    • Impossible d’afficher ou de gérer les tâches créées par d’autres utilisateurs

    Ce rôle convient aux utilisateurs qui doivent créer et gérer leurs propres tâches, mais qui n’ont pas besoin d’accéder à celles créées par d’autres utilisateurs.

  • SQLAgentReaderRole

    Autorisations

    • Toutes les autorisations de SQLAgentUserRole

    • Afficher la liste de toutes les tâches et planifications, y compris celles créées par d’autres

    • Afficher les propriétés de toutes les tâches

    • Consulter l’historique des tâches

    Ce rôle convient aux utilisateurs qui ont besoin de surveiller l’état de toutes les tâches, mais qui n’ont pas besoin de les gérer.

  • SQLAgentOperatorRole

    Autorisations

    • Toutes les autorisations de SQLAgentUserRole et de SQLAgentReaderRole

    • Exécuter, arrêter ou démarrer des tâches

    • Gérer l’historique des tâches

    • Activer/désactiver les tâches et les planifications

    • Afficher les opérateurs et les proxys

    Ce rôle fournit les autorisations les plus complètes et convient aux utilisateurs qui ont besoin d’un contrôle total sur toutes les tâches.

Exécutez la commande suivante pour attribuer les rôles à votre identifiant SQL Server :

USE msdb; EXEC sp_addrolemember 'SQLAgentOperatorRole', 'username';

Gestion de SQLAgentOperatorRole dans RDS for SQL Server

Pour afficher les tâches en cours, vous devez ajouter le rôle SQLAgentOperatorRole à votre identifiant SQL Server et le supprimer avant de vous déconnecter de votre base de données.

Pour visualiser l’arborescence de SQL Server Agent dans SQL Server Management Studio, suivez les instructions suivantes :

Afficher SQL Server Agent sur SQL Server Management Studio (SSMS)
  1. À l’aide des informations d’identification principales RDS, connectez-vous à l’instance RDS SQL Server et attribuez le rôle SQLAgentUserRole à l’utilisateur souhaité.

    USE msdb GO IF NOT EXISTS(SELECT name FROM sys.database_principals WHERE name = 'UserName') BEGIN CREATE USER UserName FROM LOGIN UserName END GO ALTER ROLE SQLAgentUserRole ADD MEMBER UserName GO GRANT ALTER ON ROLE::[SQLAgentOperatorRole] to UserName GO

    Ces commandes créent l’utilisateur dans la base de données msdb, dans le cas où elle n’existerait pas. Elles ajoutent également l’utilisateur au rôle SQLAgentUserRole, de sorte que l’arborescence SQL Server Agent sur SSMS soit visible. Enfin, elles accordent à l’utilisateur des autorisations de modification sur le rôle SQLAgentOperatorRole. Cela permet à l’utilisateur de s’ajouter/de se supprimer lui-même pour ce rôle.

  2. Pour vous ajouter au rôle mentionné ci-dessus, connectez-vous à l’instance RDS SQL Server, avec l’utilisateur qui a besoin de voir les tâches, et exécutez le script suivant.

    use msdb go ALTER ROLE SQLAgentOperatorRole ADD MEMBER UserName GO

    Ensuite, cliquez avec le bouton droit sur le dossier Tâches, puis choisissez Actualiser.

  3. Lorsque vous effectuez cette action, l’onglet Tâches affiche un bouton + (plus). Cliquez pour développer la liste des tâches SQL Server Agent.

  4. Important

    Avant de vous déconnecter de l’instance RDS SQL Server, vous devez vous retirer du rôle SQLAgentOperatorRole.

    Pour supprimer votre connexion au rôle SQLAgentOperatorRole, exécutez la requête suivante avant de vous déconnecter ou de fermer le Management Studio :

    USE msdb GO ALTER ROLE SQLAgentOperatorRole DROP MEMBER UserName GO

Pour plus d’informations, consultez Utilisation du rôle SQLAgentOperatorRole dans RDS SQL Server.