View a markdown version of this page

Rollen von SQL Server Agent - Amazon Relational Database Service

Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.

Rollen von SQL Server Agent

RDS für SQL Server unterstützt die folgenden Rollen von SQL Server Agent mit unterschiedlichen Berechtigungsebenen für die Verwaltung von Aufgaben:

  • SQLAgentUserRole

    Berechtigungen

    • Eigene Aufträge, Zeitpläne und Operatoren erstellen und verwalten

    • Eigenschaften ihrer eigenen Aufträge und Zeitpläne anzeigen

    • Aufträge, die von anderen Benutzern erstellt wurden, können nicht angezeigt oder verwaltet werden

    Diese Rolle eignet sich für Benutzer, die ihre eigenen Aufträge erstellen und verwalten müssen, aber keinen Zugriff auf Aufträge benötigen, die von anderen Benutzern erstellt wurden.

  • SQLAgentReaderRole

    Berechtigungen

    • Alle Genehmigungen von SQLAgentUserRole

    • Liste aller Aufträge und Zeitpläne anzeigen, einschließlich derer, die von anderen erstellt wurden

    • Eigenschaften aller Aufträge anzeigen

    • Auftragshistorie einsehen

    Diese Rolle eignet sich für Benutzer, die den Status aller Aufträge überwachen, diese aber nicht verwalten müssen.

  • SQLAgentOperatorRole

    Berechtigungen

    • Alle Genehmigungen von SQLAgentUserRole und SQLAgentReaderRole

    • Aufträge ausführen, anhalten oder starten

    • Auftragshistorie verwalten

    • Enable/disable Jobs und Zeitpläne

    • Operatoren und Proxys anzeigen

    Diese Rolle bietet die umfassendsten Berechtigungen und eignet sich für Benutzer, die die volle Kontrolle über alle Aufträge haben müssen.

Verwenden Sie den folgenden Befehl, um Ihrem SQL-Server-Anmeldenamen die Rollen zuzuweisen:

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

Verwaltung SQLAgentOperatorRole in RDS für SQL Server

Um die aktuellen Jobs anzuzeigen, müssen Sie den SQLAgentOperatorRole zu Ihrem SQL Server-Anmeldenamen hinzufügen und ihn entfernen, bevor Sie die Verbindung zu Ihrer Datenbank trennen.

Gehen Sie wie folgt vor, um die Struktur von SQL Server Agent in SQL Server Management Studio zu visualisieren:

Anzeigen von SQL Server Agent in SQL Server Management Studio (SSMS)
  1. Melden Sie sich mit den RDS-Master-Anmeldeinformationen bei der RDS-SQL Server-Instanz an und gewähren Sie dem gewünschten Benutzer die SQLAgentUserRole.

    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

    Mit diesen Befehlen wird der Benutzer in der msdb-Datenbank erstellt, falls er nicht existiert. Außerdem wird der Benutzer auf dem hinzugefügt SQLAgentUserRole, sodass die SQL Server-Agent-Struktur auf SSMS angezeigt wird. Schließlich gewährt es dem Benutzer Änderungsberechtigungen SQLAgentOperatorRole für. Dies ermöglicht es dem Benutzer, sich add/remove selbst von dieser Rolle aus zu öffnen.

  2. Um sich selbst zu der oben genannten Rolle hinzuzufügen, stellen Sie mit dem Benutzer, der die Aufträge sehen muss, eine Verbindung zur Instance von RDS SQL Server her und führen Sie das folgende Skript aus.

    use msdb go ALTER ROLE SQLAgentOperatorRole ADD MEMBER UserName GO

    Danach klicken Sie mit der rechten Maustaste auf den Ordner Aufträge und wählen Sie Aktualisieren.

  3. Wenn Sie diese Aktion ausführen, wird auf der Registerkarte Aufträge eine Schaltfläche mit einem Pluszeichen (+) angezeigt. Klicken Sie darauf, um die Liste der Aufträge für SQL Server Agent zu erweitern.

  4. Wichtig

    Bevor Sie die Verbindung zur RDS-SQL Server-Instanz trennen, müssen Sie sich selbst aus der entfernen SQLAgentOperatorRole.

    Um Ihren Anmeldenamen aus dem zu entfernen SQLAgentOperatorRole, führen Sie die folgende Abfrage aus, bevor Sie die Verbindung zu Management Studio trennen oder schließen:

    USE msdb GO ALTER ROLE SQLAgentOperatorRole DROP MEMBER UserName GO

Weitere Informationen finden Sie unter Leveraging SQLAgentOperatorRole in RDS SQL Server.