Freigeben über


Auswählen eines Kontos für den SQL Server-Agent-Dienst

Das Dienststartkonto definiert das Microsoft Windows-Konto, in dem DER SQL Server-Agent ausgeführt wird, und seine Netzwerkberechtigungen. DER SQL Server-Agent wird als angegebenes Benutzerkonto ausgeführt. Sie wählen ein Konto für den SQL Server-Agent-Dienst mithilfe von SQL Server Configuration Manager aus, in dem Sie aus den folgenden Optionen wählen können:

  • integriertes Konto. Sie können aus einer Liste der folgenden integrierten Windows-Dienstkonten auswählen:

    • Lokales System Konto. Der Name dieses Kontos ist NT AUTHORITY\System. Es handelt sich um ein leistungsfähiges Konto, das uneingeschränkten Zugriff auf alle lokalen Systemressourcen hat. Sie ist Mitglied der Gruppe Windows-Administratoren auf dem lokalen Computer und ist daher Mitglied der festen Serverrolle sysadmin von SQL Server.

      Von Bedeutung

      Die Option Lokales Systemkonto wird nur aus Gründen der Abwärtskompatibilität bereitgestellt. Das lokale Systemkonto verfügt über Berechtigungen, die der SQL Server-Agent nicht benötigt. Vermeiden Sie die Ausführung des SQL Server-Agents als lokales Systemkonto. Um die Sicherheit zu verbessern, verwenden Sie ein Windows-Domänenkonto mit den Berechtigungen, die im folgenden Abschnitt "Windows-Domänenkontoberechtigungen" aufgeführt sind.

  • Dieses Konto. Hiermit können Sie das Windows-Domänenkonto angeben, in dem der SQL Server-Agent-Dienst ausgeführt wird. Es wird empfohlen, ein Windows-Benutzerkonto auszuwählen, das kein Mitglied der Gruppe " Windows-Administratoren " ist. Es gibt jedoch Einschränkungen für die Verwendung der Verwaltung mit mehreren Servern, wenn das SQL Server-Agent-Dienstkonto kein Mitglied der lokalen Administratorgruppe ist. Weitere Informationen finden Sie unter „Unterstützte Dienstkontotypen“ im folgenden Abschnitt dieses Themas.

Windows-Domänenkontoberechtigungen

Um die Sicherheit zu verbessern, wählen Sie Dieses Kontoaus, das ein Windows-Domänenkonto angibt. Das angegebene Windows-Domänenkonto muss über die folgenden Berechtigungen verfügen:

  • In allen Windows-Versionen ist die Berechtigung zum Anmelden als Dienst (SeServiceLogonRight) erforderlich

Hinweis

Das SQL Server-Agent-Dienstkonto muss Teil der Pre-Windows 2000-kompatiblen Zugriffsgruppe auf dem Domänencontroller sein, oder Aufträge, die im Besitz von Domänenbenutzern sind, die keine Mitglieder der Windows-Administratorgruppe sind, schlagen fehl.

  • In Windows-Servern erfordert das Konto, das der SQL Server-Agent-Dienst ausführt, die folgenden Berechtigungen, um SQL Server-Agent-Proxys unterstützen zu können.

    • Berechtigung zum Umgehen der Traverseüberprüfung (SeChangeNotifyPrivilege)

    • Berechtigung zum Ersetzen eines Prozesstokens (SeAssignPrimaryTokenPrivilege)

    • Berechtigung zum Anpassen von Speicherkontingenten für einen Prozess (SeIncreaseQuotaPrivilege)

    • Berechtigung zur Anmeldung mit dem Batch-Anmeldetyp (SeBatchLogonRight)

Hinweis

Wenn das Konto nicht über die erforderlichen Berechtigungen zum Unterstützen von Proxys verfügt, können nur Mitglieder der festen Serverrolle sysadmin Aufträge erstellen.

Hinweis

Um WMI-Benachrichtigungen zu erhalten, muss dem Dienstkonto für den SQL Server-Agent die Berechtigung für den Namespace erteilt worden sein, der die WMI-Ereignisse enthält, und die Berechtigung, jede Ereignisbenachrichtigung zu ändern.

SQL Server-Rollenmitgliedschaft

Das Konto, unter dem der SQL Server-Agentdienst ausgeführt wird, muss Mitglied der folgenden SQL Server-Rollen sein:

  • Das Konto muss Mitglied der festen Serverrolle "sysadmin " sein.

  • Um die Verarbeitung von Multiserveraufträgen zu verwenden, muss das Konto mitglied der Msdb-DatenbankrolleTargetServersRole auf dem Masterserver sein.

Unterstützte Dienstkontotypen

In der folgenden Tabelle sind die Windows-Kontotypen aufgeführt, die für den SQL Server-Agent-Dienst verwendet werden können.

Dienstkontotyp Nicht gruppierter Server Gruppierter Server Domänencontroller (nicht gruppiert)
Microsoft Windows-Domänenkonto (Mitglied der Gruppe "Windows-Administratoren") Unterstützt Unterstützt Unterstützt
Windows-Domänenkonto (nicht administrativ) Unterstützt1 Unterstützt1 Unterstützt1
Netzwerkdienstkonto (NT AUTHORITY\NetworkService) Unterstützt1, 3, 4 Nicht unterstützt Nicht unterstützt
Lokales Benutzerkonto (nicht administrativ) Unterstützt1 Nicht unterstützt Nicht anwendbar
Lokales Systemkonto (NT AUTHORITY\System) Unterstützt2 Nicht unterstützt Unterstützt2
Lokales Dienstkonto (NT AUTHORITY\LocalService) Nicht unterstützt Nicht unterstützt Nicht unterstützt

1 Siehe Einschränkung 1 unten.

2 Siehe Einschränkung 2 unten.

3 Siehe Einschränkung 3 unten.

4 Siehe Einschränkung 4 unten.

Einschränkung 1: Verwenden von nicht administrativen Konten für die Verwaltung mit mehreren Servern

Fehler beim Auflisten von Zielservern an einem Masterserver mit der folgenden Fehlermeldung: "Fehler beim Auflistenvorgang".

Um diesen Fehler zu beheben, starten Sie sowohl die SQL Server- als auch die SQL Server-Agent-Dienste neu. Weitere Informationen finden Sie unter "Start", "Beenden", "Anhalten", "Fortsetzen", "Neustarten" des Datenbankmoduls, des SQL Server-Agents oder des SQL Server-Browserdiensts.

Einschränkung 2: Verwenden des lokalen Systemkontos für die Verwaltung mit mehreren Servern

Die Verwaltung mit mehreren Servern wird unterstützt, wenn der SQL Server-Agent-Dienst nur unter dem lokalen Systemkonto ausgeführt wird, wenn sich sowohl der Masterserver als auch der Zielserver auf demselben Computer befinden. Wenn Sie diese Konfiguration verwenden, wird die folgende Meldung zurückgegeben, wenn Sie Zielserver auf dem Masterserver auflisten:

"Stellen Sie sicher, dass das Agent-Startkonto für <target_server_computer_name> über Rechte zum Anmelden als TargetServer verfügt."

Sie können diese Informationsmeldung ignorieren. Der Anmeldevorgang sollte erfolgreich abgeschlossen sein. Weitere Informationen finden Sie unter Erstellen einer Multiserverumgebung.

Einschränkung 3: Verwenden des Netzwerkdienstkontos, wenn es sich um einen SQL Server-Benutzer handelt

Der SQL Server-Agent kann nicht gestartet werden, wenn Sie den SQL Server-Agent-Dienst unter dem Netzwerkdienstkonto ausführen und dem Netzwerkdienstkonto explizit Zugriff auf die Anmeldung bei einer SQL Server-Instanz als SQL Server-Benutzer gewährt wurde.

Um dies zu beheben, starten Sie den Computer neu, auf dem SQL Server ausgeführt wird. Dies muss nur einmal erfolgen.

Einschränkung 4: Verwenden des Netzwerkdienstkontos, wenn SQL Server Reporting Services auf demselben Computer ausgeführt wird

Der SQL Server-Agent kann nicht gestartet werden, wenn Sie den SQL Server-Agent-Dienst unter dem Netzwerkdienstkonto ausführen und Reporting Services auch auf demselben Computer ausgeführt wird.

Um dies zu beheben, starten Sie den Computer neu, auf dem SQL Server ausgeführt wird, und starten Sie dann sowohl die SQL Server- als auch die SQL Server-Agent-Dienste neu. Dies muss nur einmal erfolgen.

Allgemeine Aufgaben

So geben Sie das Startkonto für den SQL Server-Agent-Dienst an

So geben Sie das E-Mail-Profil für den SQL Server-Agent an

Hinweis

Verwenden Sie SQL Server Configuration Manager, um anzugeben, dass der SQL Server-Agent beim Starten des Betriebssystems gestartet werden muss.

Siehe auch

Konfigurieren von Windows-Dienstkonten und -Berechtigungen
Managing Services How-to Topics (SQL Server Configuration Manager)
Sicherheit des SQL Server-Agenten implementieren