Delen via


Selecteer een account voor de SQL Server Agent-service

van toepassing op:SQL ServerAzure SQL Managed Instance

Belangrijk

Op Azure SQL Managed Instanceworden de meeste, maar niet alle FUNCTIES van SQL Server Agent momenteel ondersteund. Zie T-SQL-verschillen tussen Azure SQL Managed Instance en SQL Server voor meer informatie.

Het opstartaccount van de service definieert het Microsoft Windows-account waarin SQL Server Agent wordt uitgevoerd en de bijbehorende netwerkmachtigingen. SQL Server Agent wordt uitgevoerd als een opgegeven gebruikersaccount. U selecteert een account voor de SQL Server Agent-service met behulp van SQL Server Configuration Manager, waar u uit de volgende opties kunt kiezen:

  • Ingebouwd account U kunt kiezen uit een lijst met de volgende ingebouwde Windows-serviceaccounts:

    • Lokaal systeemaccount . De naam van dit account is NT AUTHORITY\System. het is een krachtig account dat onbeperkte toegang heeft tot alle lokale systeembronnen. het is lid van de groep Windows-beheerders op de lokale computer.

    Belangrijk

    De optie Lokaal systeemaccount is alleen beschikbaar voor compatibiliteit met eerdere versies. Het lokale systeemaccount heeft machtigingen die sql Server Agent niet nodig heeft. Vermijd het uitvoeren van SQL Server Agent als het lokale systeemaccount. Voor een betere beveiliging gebruikt u een Windows-domeinaccount met de machtigingen die worden vermeld in de volgende sectie' 'Machtigingen voor Windows-domeinaccounts'.

  • Dit account. Hiermee kunt u het Windows-domeinaccount opgeven waarin de SQL Server Agent-service wordt uitgevoerd. U wordt aangeraden een Windows-gebruikersaccount te kiezen dat geen lid is van de groep Windows-beheerders . Er gelden echter beperkingen voor het gebruik van beheer met meerdere servers wanneer het SQL Server Agent-serviceaccount geen lid is van de lokale groep Administrators . Zie 'Ondersteunde serviceaccounttypen' in dit artikel voor meer informatie.

Machtigingen voor Windows-domeinaccounts

Voor een betere beveiliging selecteert u Dit account, waarmee een Windows-domeinaccount wordt opgegeven. Het Windows-domeinaccount dat u opgeeft, moet de volgende machtigingen hebben:

  • In alle Windows-versies is er toestemming nodig om aan te melden als een service (SeServiceLogonRight)

    Opmerking

    Het serviceaccount van de SQL Server Agent moet deel uitmaken van de pre-Windows 2000-compatibele toegangsgroep op de domeincontroller of taken die eigendom zijn van domeingebruikers die geen lid zijn van de groep Windows-beheerders, mislukken.

  • Op Windows-servers heeft het account waarmee de SQL Server Agent-service wordt uitgevoerd de volgende machtigingen nodig om ondersteuning te bieden aan SQL Server Agent-proxy's.

    • Machtiging om traversecontrole te omzeilen (SeChangeNotifyPrivilege)
    • Machtiging voor het vervangen van een token op procesniveau (SeAssignPrimaryTokenPrivilege)
    • Machtiging voor het aanpassen van geheugenquota voor een proces (SeIncreaseQuotaPrivilege)
    • Machtiging voor toegang tot deze computer vanaf het netwerk (SeNetworkLogonRight)

Als het account niet over de vereiste machtigingen beschikt om proxy's te ondersteunen, kunnen alleen leden van de vaste serverrol sysadmin taken maken.

Als u WMI-waarschuwingsmeldingen (Windows Management Instrumentation) wilt ontvangen, moet het serviceaccount voor SQL Server Agent zijn gemachtigd voor de naamruimte die de WMI-gebeurtenissen bevat, en ALTER ANY EVENT NOTIFICATION.

Lidmaatschap van SQL Server-rol

Het serviceaccount van SQL Server Agent is standaard toegewezen aan de standaard-SID van de SQL Server Agent-service (NT SERVICE\SQLSERVERAGENT), die lid is van de sysadmin vaste serverfunctie. Het account moet ook lid zijn van de msdb-databaserol TargetServersRole op de hoofdserver als takenverwerking op meerdere servers wordt gebruikt. De Hoofdserver-wizard voegt automatisch het serviceaccount toe aan deze rol als onderdeel van het aanmeldingsproces.

Ondersteunde serviceaccounttypen

De volgende tabel bevat de Typen Windows-accounts die kunnen worden gebruikt voor de SQL Server Agent-service.

Serviceaccounttype Niet-geclusterde server Geclusterde server Domeincontroller (niet-geclusterd)
Microsoft Windows-domeinaccount (lid van windows-beheerdersgroep) Ondersteund Ondersteund Ondersteund
Windows-domeinaccount (niet-administratief) Ondersteund

Zie Beperking 1 verderop in deze sectie.
Ondersteund

Zie Beperking 1 verderop in deze sectie.
Ondersteund

Zie Beperking 1 verderop in deze sectie.
Netwerkserviceaccount (NT AUTHORITY\NetworkService) Ondersteund

Zie Beperking 1, 3 en 4 verderop in deze sectie.
Niet ondersteund Niet ondersteund
Lokaal gebruikersaccount (niet-administratief) Ondersteund

Zie Beperking 1 verderop in deze sectie.
Niet ondersteund Niet van toepassing
Lokaal systeemaccount (NT AUTHORITY\System) Ondersteund

Zie Beperking 2 verderop in deze sectie.
Niet ondersteund Ondersteund

Zie Beperking 2 verderop in deze sectie.
Lokaal Serviceaccount (NT AUTHORITY\LocalService) Niet ondersteund Niet ondersteund Niet ondersteund

Beperking 1: niet-beheerdersaccounts gebruiken voor beheer met meerdere servers

Het inschakelen van doelservers naar een hoofdserver kan mislukken met het volgende foutbericht: The enlist operation failed.

U kunt deze fout oplossen door zowel de SQL Server- als de SQL Server Agent-services opnieuw op te starten. Zie SQL Server-services starten, stoppen, onderbreken, hervatten en opnieuw startenvoor meer informatie.

Beperking 2: het lokale systeemaccount gebruiken voor beheer met meerdere servers

Multiserverbeheer wordt ondersteund wanneer de SQL Server Agent-service alleen wordt uitgevoerd onder het lokale systeemaccount wanneer zowel de hoofdserver als de doelserver zich op dezelfde computer bevinden. Als u deze configuratie gebruikt, wordt het volgende bericht geretourneerd wanneer u doelservers in de hoofdserver opgeeft:

Ensure the agent start-up account for <target_server_computer_name> has rights to log on as targetServer.

U kunt dit informatieve bericht negeren. De aanmeldbewerking moet zijn voltooid. Zie Een omgeving met meerdere servers maken voor meer informatie.

Beperking 3: het netwerkserviceaccount gebruiken wanneer het een SQL Server-gebruiker is

De SQL Server Agent kan mogelijk niet worden gestart als u de SQL Server Agent-service uitvoert onder het netwerkserviceaccount en het netwerkserviceaccount expliciet toegang heeft gekregen om als een SQL Server-gebruiker in te loggen bij een SQL Server-exemplaar.

U kunt dit oplossen door de computer waarop SQL Server wordt uitgevoerd, opnieuw op te starten. Dit hoeft u slechts één keer te doen.

Beperking 4: het netwerkserviceaccount gebruiken wanneer SQL Server Reporting Services wordt uitgevoerd op dezelfde computer

De SQL Server Agent kan niet worden gestart als u de SQL Server Agent-service uitvoert onder het netwerkserviceaccount en Reporting Services ook op dezelfde computer wordt uitgevoerd.

U kunt dit oplossen door de computer waarop SQL Server wordt uitgevoerd opnieuw op te starten en vervolgens zowel de SQL Server- als de SQL Server Agent-services opnieuw op te starten. Dit hoeft u slechts één keer te doen.

Algemene taken

Gebruik SQL Server Configuration Manager om op te geven dat SQL Server Agent moet worden opgestart wanneer het besturingssysteem wordt gestart.