Het oplossen van de foutmelding "NT AUTHORITY/LOCAL SERVICE Cannot Be Found"
De fout is “NT AUTHORITY/LOCAL SERVICE kan niet worden gevondenEen SQL Server-gegevensfout treedt doorgaans op in Visual Studio of bij het uitvoeren van bepaalde taken in Windows Server-versies. Sommige gebruikers ondervinden dit probleem na het installeren van nieuwe servertoepassingen of tijdens het compileren. Visual Studio-toepassingAnderen zien het wanneer ze een service proberen te installeren met behulp van het installatieprogramma. Geavanceerd.
Er zijn verschillende veelvoorkomende oorzaken die kunnen leiden tot een NT AUTHORITYNETWORK SERVICE-fout, en deze oorzaken variëren afhankelijk van uw specifieke gebruikssituatie.
In de meeste gevallen heeft uw netwerkbeheerder de betreffende Windows-aanmelding om verschillende redenen verwijderd. Hierdoor kunt u geen toegang verlenen tot de SQL Server-aanmelding.
Een andere reden waarom u deze foutmelding kunt zien, is wanneer u probeert een nieuwe aanmelding toe te voegen met dezelfde beveiligings-ID (SID) als een bestaande aanmelding in SQL Server. In dat geval zou u ook foutcode 15401 moeten zien.
De foutmelding "NT AUTHORITY/LOCAL SERVICE kan niet worden gevonden" kan echter ook optreden wanneer de aanmelding plaatsvindt in een ander domein dan de SQL-server of als het naamresolutiemechanisme dat u gebruikt (WINS, DNS, HOSTS of LMHOSTS) niet correct is geconfigureerd.
Hieronder vindt u een reeks beproefde oplossingen die andere getroffen gebruikers met succes hebben toegepast om de kern van dit probleem aan te pakken.
1. Controleer of NT AUTHORITYLOCAL SERVICE bestaat en over de benodigde machtigingen beschikt.
Voordat we overgaan op meer technische oplossingen, moet u er eerst voor zorgen dat het account NT AUTORITEITLOKALE DIENST Het bestaat al op het systeem dat u probeert te gebruiken.
Als u hebt vastgesteld dat het account bestaat, neem dan de tijd om te controleren of u over voldoende rechten beschikt om de benodigde aanmelding en bijbehorende gebruiker op SQL Server-niveau aan te maken.
Deze procedure kan enigszins variëren afhankelijk van uw versie van Windows Server, maar de algemene stappen zijn in elke versie van Windows Server hetzelfde.
Dit is wat je moet doen:
- Open Windows Server Essentials-dashboard.
- Ga naar de hoofdnavigatiebalk en klik op Gebruikers.
- Bekijk de lijst met huidige gebruikers en controleer of u een vermelding met de naam kunt vinden. NT AUTORITEIT LOKALE DIENST.
ملاحظة: Als de invoer die ermee verband houdt NT AUTORITEITLOKALE DIENST Als het ontbreekt, klik dan op de hyperlink. Een gebruikersaccount toevoegen Openen Wizard voor het toevoegen van gebruikersaccounts. Volg vervolgens de instructies om gebruikers aan te maken voor NT AUTHORITYLOCAL SERVICE en zorg ervoor dat de naamgevingsconventie correct is. - Nadat we hebben bevestigd dat het account bestaat, controleren we of het de benodigde machtigingen heeft. Klik hiervoor op Account. NT AUTORITEITLOKALE DIENST binnenin Gebruikers, Ga dan verder naar deel missie en klik Eigenschappen.
- Ga vervolgens naar het tabblad algemeen, Dan het tabblad Gedeelde mappen, Dan het tabblad Toegang vanaf elke locatie Schakel alle machtigingen in die dit account nodig heeft op basis van uw gebruiksscenario.
- Sla de wijzigingen op en herhaal de procedure die eerder de foutmelding "NT AUTHORITY/LOCAL SERVICE cannot be found" veroorzaakte. Deze foutmelding zou nu verholpen moeten zijn.
Als je de aanmaak van een gebruikersaccount al hebt bevestigd NT AUTORITEITLOKALE DIENST En als hij de benodigde vergunningen heeft, ga dan verder met de volgende methode hieronder.
2. Maak een aanmelding aan voor SQL Server (indien van toepassing).
Als u deze foutmelding krijgt tijdens het gebruik van de SQL Server-gegevenslaagtoepassing in een Visual Studio-project, ziet u deze waarschijnlijk nadat u het script hebt gemaakt dat de gegevenslaag toevoegt. NT AUTORITEITLOKALE DIENST Naar de inloglijst onder Server Level Objects.
Als u de volgende scripts gebruikt om aanmeldingen aan te maken en toe te voegen binnen objecten op databaseniveau, is deze methode van toepassing:
CREATE LOGIN [NT AUTHORITYLOCAL SERVICE] FROM WINDOWS WITH DEFAULT_LANGUAGE=[us_english] CREATE USER [NT AUTHORITYLOCAL SERVICE] FOR LOGIN [NT AUTHORITYLOCAL SERVICE]
In dit geval krijg je waarschijnlijk een foutmelding tijdens het compileren van het project. “NT AUTHORITYLOCAL SERVICE kon niet worden gevonden omdat deze niet bestaat of er geen toestemming is verleend.”.
Als dit scenario op u van toepassing is, is de reden waarom u geen [NT AUTHORITYLOCAL SERVICE]-aanmelding kunt aanmaken, dat NT AUTORITEITLOKALE DIENST In dit geval gaat het simpelweg om een ingebouwd Windows-serviceaccount. Elke service in SQL Server moet tijdens de installatie een account hebben om te kunnen starten en functioneren.
SQL Server-opstartaccounts kunnen ingebouwde systeemaccounts, lokale gebruikersaccounts of domeingebruikersaccounts zijn. Een lokaal serviceaccount is een ingebouwd account dat toegang heeft tot dezelfde resources en objecten als groepsleden. GebruikersDeze beperkte toegang dient ter bescherming van het systeem in het geval bepaalde diensten of processen worden gecompromitteerd.
Diensten die functioneren als een lokaal serviceaccount. Een lege sessie wordt gebruikt om toegang te krijgen tot netwerkbronnen..
BelangrijkHoud er rekening mee dat SQL Server- of SQL Server Agent-services het lokale serviceaccount niet ondersteunen. De volledige accountnaam is "NT AUTHORITY/LOCAL SERVICE".
Om dit probleem op te lossen, moet u een SQL Server-aanmelding aanmaken die gebruikmaakt van Windows-verificatie via Transact-SQL.
Om dit te doen, maakt u eerst een gebruiker aan in Windows. Open vervolgens de volgende Transact-SQL-opdracht in de query-editor en zorg ervoor dat de aanmeldingsnaam overeenkomt met de Windows-gebruikersnaam:
INLOGGEN AANMAKEN VANUIT WINDOWS; GA
ملاحظة: Houd er rekening mee dat Dit is slechts een placeholder. Vervang deze door de daadwerkelijke naam van de Windows-gebruiker.
3. Voeg de juiste machtigingen toe aan de SQL-database (indien van toepassing).
Een andere reden waarom dit probleem zich kan voordoen, is dat u in SQL niet de juiste machtigingen hebt toegevoegd voor de NT AUTHORITY/LOCAL SERVICE en alleen de map beheerrechten hebt verleend.
Om dit probleem op te lossen, moet u SQL Server Management Studio (Enterprise Manager) openen en de SQL-instantie verkennen waarmee u verbinding probeert te maken. Van daaruit moet u navigeren naar Beveiliging > Aanmelden Maak een nieuwe aanmelding aan met behulp van de Windows-verificatiemethode voor NT AUTORITEIT/LOKALE DIENST.
Hier volgt een korte handleiding over hoe je dat doet:
- Open de startpagina en typ 'sms'.
- Selecteer uit de lijst met resultaten Microsoft SQL Server Beheer Studio.
- Zodra u Microsoft SQL Server Management Studio hebt geopend, navigeert u naar de specifieke SQL-instantie die de fout veroorzaakt.
- Nadat u succesvol toegang hebt gekregen tot de opgegeven SQL-instantie, navigeert u ernaartoe. Beveiliging > Aanmeldingen (gefilterd).
- Klik met de rechtermuisknop op het hoofditem en klik vervolgens op Windows-verificatie.
- Schrijf vervolgens 'NT AUTORITEIT/LOKALE DIENST' Controleer of u de juiste SQL-machtigingen hebt ingesteld.
- Zorg ervoor dat je de juiste machtigingen aan dit nieuwe account toevoegt, als je dat nog niet hebt gedaan.
ملاحظة: Verwijs naar de Methode 1 Om specifieke stappen te verkrijgen. - Herhaal de procedure die eerder het probleem veroorzaakte en controleer of het probleem nu is opgelost.
4. Herbouw de SQL Server-database (indien mogelijk).
Als u al hebt geprobeerd de gebruiker 'Aanmelden als' in de SQL Server-service te wijzigen naar NT AUTHORITY/LOCAL SERVICE en dit niet heeft gewerkt, kunt u het probleem mogelijk oplossen door de volgende stappen te volgen: Installatieprogramma downloaden Om de hexadecimale naam te extraheren voordat de SQL-database opnieuw wordt opgebouwd en de bestanden opnieuw worden gekopieerd.
Hier volgt een korte handleiding over hoe je dat doet:
- Voer het gedownloade installatieprogramma uit en laat het de bestanden uitpakken naar de standaardlocatie.
ملاحظة: De extractie zal worden gepubliceerd naar de hoofdmap van uw besturingssysteem (hoogstwaarschijnlijk C:/) met een lange hexadecimale naam. - Zodra het uitpakken is voltooid, neem dan de tijd om alle bestanden naar een andere map te kopiëren. Zo voorkomt u dat de volgende handeling de inhoud van die map wist.
- Sluit het installatieprogramma.
ملاحظة: Zodra je dat hebt gedaan, wordt de inhoud van de hexadecimale map die je in stap 2 hebt aangemaakt, gewist. - Klik op Windows-toets + R Een dialoogvenster openen lopen.
- Schrijf vervolgens 'cmd' En druk op Ctrl + Shift + Enter ل Open een opdrachtprompt met beheerdersrechten. Aan uw dienaar.
- wanneer . verschijnt Gebruikersaccountbeheer (UAC), tik op نعم Om de bevoegdheden van de beheerder te verlenen.
- gebruik CD Om naar de locatie te navigeren waar u de eerder uitgepakte bestanden (van stap 3) hebt opgeslagen. Hier is een voorbeeld:
CD C:23420247290247292740
ملاحظة: Dit is slechts een voorbeeldfragment. Pas de bovenstaande opdracht aan om naar de daadwerkelijke locatie te gaan waar u de bestanden hebt opgeslagen (in stap 3).
- Zodra u de juiste locatie hebt bereikt, voert u de volgende opdracht uit om de database opnieuw aan te maken en op te bouwen:
setup /action=RebuildDatabase /InstanceName=SQLEXPRESS /SqlSysAdminAccounts=BUILTINAdministrators
- Sluit de opdrachtprompt (CMD) met beheerdersrechten en herhaal de procedure die de foutmelding 'NT AUTHORITY/LOCAL SERVICE kan niet worden gevonden' veroorzaakte om te zien of het probleem nu is opgelost.
5. Configureer MachineGUID en herstart de SQL-service.
Als u deze foutmelding kreeg tijdens het opstarten van uw SQL Server en het probleem zich voordeed nadat u de ingebouwde aanmelding van Lokale service naar Lokaal systeem had gewijzigd, wordt het probleem waarschijnlijk veroorzaakt door een registersleutel MachineGUID die niet langer naar het juiste pad verwijst.
Andere gebruikers die een vergelijkbare situatie tegenkwamen, bevestigden dat ze het probleem konden oplossen door een back-up te maken van de sleutel die het probleem veroorzaakte, alvorens het pad aan te passen en de SQL-service opnieuw te starten.
Hier volgt een korte handleiding over hoe je dat doet:
- druk op de toets Windows + R Een dialoogvenster openen تشغيل.
- Schrijf vervolgens 'regedit' En druk op Ctrl + Shift + Enter Openen Register-editor Bevoegdheden van de beheerder.
- Wanneer een venster verschijnt Gebruikersaccountbeheer (UAC), tik op نعم Om de bevoegdheden van de beheerder te verlenen.
- Binnenkomen Register-editorGebruik de linkerkant om naar de volgende locatie te navigeren:
HKLMSOFTWAREMicrosoftCryptographyMachineGuid
- Zodra je de juiste locatie hebt gevonden, identificeer je de sleutel die het probleem veroorzaakt. Deze moet de GUID van het betreffende apparaat tussen accolades bevatten (bijvoorbeeld: {xxxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx}).
- Nadat we het betreffende apparaat correct hebben geïdentificeerd, moeten we een back-up maken. Zorg er hiervoor voor dat de apparaatsleutel is geselecteerd en gebruik vervolgens de bestandsbalk bovenaan om naar... te navigeren. een bestand en klik Exporteren.
- Geef een locatie op, geef een herkenbare bestandsnaam en zorg ervoor dat het bestand is ingesteld. bespaar soort naar mij Registerbestanden (*.reg).
- Tot slot, voordat u klikt op sparenZorg ervoor dat u dit instelt Bereik exporteren naar mij Specifieke vestiging En dat de juiste tak is gespecificeerd.
- tik op sparen Om het back-upproces te voltooien.
- Zodra de back-up is voltooid, hernoemt u de sleutel die het probleem veroorzaakt en verwijdert u de haakjes.
ملاحظة: De waarde moet veranderen MachineGuid من {xxxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx} naar mij xxxxxxxxxxxx-xxxxxxxx-xxxxxxxxxxxx. - Nadat deze wijziging is doorgevoerd, sluit u de Register-editor, start u de computer opnieuw op en start u vervolgens de SQL-service. Belangrijk: Als de service niet direct start, verwijder en installeer SQL dan opnieuw voordat u de service opnieuw opstart. Als u een andere foutmelding krijgt, herstel dan de oorspronkelijke back-up die u in stap 8 hebt gemaakt en ga verder met de volgende methode hieronder.
6. Gebruikerstoewijzingen wijzigen
Als u de foutmelding 'NT AUTHORITY/LOCAL SERVICE kan niet worden gevonden' krijgt bij het ophalen van gegevens uit uw SQL Server met ASP.NET, kunt u een lokale oorzaak snel verhelpen door de gebruikersmapping aan te passen naar de juiste waarden.
ملاحظة: Deze oplossing werkt in gevallen waarin u een lokale database gebruikt voor SQL Server Management Studio en probeert gegevens daarin in te voeren met een ASP.NET-applicatie.
Als u de invoer zorgvuldig hebt gecontroleerd en alle code correct is, maar u nog steeds een foutmelding krijgt, volg dan de onderstaande instructies om SQL Server Management Studio te gebruiken om naar de pagina Aanmeldingen te gaan en de momenteel toegewezen gebruikerstoewijzingen te wijzigen via het scherm Eigenschappen.
Hier volgt een korte, stapsgewijze handleiding over hoe je dat doet:
- Druk op de Start-toets op uw toetsenbord en typ vervolgens 'smsOp de startpagina.
- Selecteer uit de lijst met resultaten Microsoft SQL Server Management Studio.
- Log vervolgens in op de server die de foutmelding 'NT AUTHORITY/LOCAL SERVICE kan niet worden gevonden' veroorzaakt.
- Ga naar BeveiligingGa vervolgens naar het subgedeelte. Inloggen.
- Klik in het optiemenu met de rechtermuisknop op NT. AUTORITEITSNETWERKDIENST أو NT AUTORITEITLOKALE DIENST (Afhankelijk van uw gebruiksscenario) en klik op Eigenschappen vanuit het contextmenu.
- Zodra je het scherm opent, ga je naar het scherm. Aanmeldingseigenschappen, Kiezen Gebruikerskoppelingen Vanuit de linkerbovenhoek van het scherm.
- Aan de rechterkant ziet u een lijst van DatabaserollenZorg ervoor dat het selectievakje is aangevinkt. db-eigenaar, Dan klikken OK.
- Voer de code die eerder het probleem veroorzaakte opnieuw uit en controleer of het probleem nu is opgelost.
7. Verleen de rol van systeembeheerder (indien van toepassing) de benodigde rechten.
Als u deze foutmelding krijgt bij het openen van een database voor een lokaal ontwikkelde applicatie, controleer dan eerst of de huidige configuratie NT AUTHORITY/LOCAL SERVICE toestaat. De rol van de systeembeheerder.
Je kunt dit doen door te openen Microsoft SQL Server Beheer Studio Wijzig de eigenschappen van de NT AUTHORITY/LOCAL-service om de sysadmin-rol in te schakelen.
Hier volgt een korte handleiding over hoe je dat doet:
- druk op de toets Begin Typ vervolgens op het toetsenbord 'smsOp de startpagina.
- Selecteer uit de lijst met resultaten Microsoft SQL Server Management Studio.
- Ga daarna naar الأمان en breid de lijst uit Login.
- Klik met de rechtermuisknop op NT-AUTORITEIT/Lokaal systeem Klik dan op Eigendommen vanuit het contextmenu.
- Klik in het eigenschappenscherm op Dienende rollen Vanuit de linkerzijbalk.
- Ga naar de rechterkant en zorg ervoor dat het bijbehorende vakje sysadmin.
- Sla de wijzigingen op, herstart vervolgens uw apparaat en controleer of het probleem nu is opgelost.
Als u om welke reden dan ook geen toegang hebt tot Microsoft SQL Server Management Studio, kunt u deze oplossing ook toepassen via een opdrachtprompt met beheerdersrechten (mits uw toegangsrechten dit toestaan).
Hier is hoe het te doen:
- druk op de toets Windows + R Een dialoogvenster openen تشغيل.
Schrijf vervolgens 'cmd' En druk op Ctrl + Shift + Enter Openen Register-editor Bevoegdheden van de beheerder.
- Wanneer een claim verschijnt Gebruikersaccountbeheer (UAC), Klik نعم Om de bevoegdheden van de beheerder te verlenen.
- Typ in een opdrachtprompt met beheerdersrechten de volgende opdracht (en pas de placeholder aan) om toegang te krijgen tot de specifieke server die het probleem veroorzaakt:
sqlcmd -S (*servernaam*)
ملاحظة: Zorg ervoor dat je het bewerkt. *Servernaam* In de naam van de daadwerkelijke server in uw specifieke geval.
- Typ vervolgens de volgende opdracht en druk op Enter. Enter Om toegang te krijgen tot de SQL-server op uw computer:
select name from sys.server_principals where name = 'NT AUTHORITYSYSTEM'
- Typ vervolgens de volgende opdracht om het resultaat op te halen en te gebruiken in Sorteerprocedure Waar rechten zullen worden toegevoegd sysmin Tegen haar:
SP_ADDSRVROLEMEMBER 'NT AUTHORITYSYSTEM','SYSADMIN'
- Zodra beide problemen succesvol zijn opgelost, sluit u de opdrachtprompt met beheerdersrechten (CMD) en herhaalt u de procedure die de foutmelding 'NT AUTHORITY/LOCAL SERVICE kan niet worden gevonden' veroorzaakte.
8. Wijzig de servertaal naar Engels (indien van toepassing).
Als u de foutmelding 'NT AUTHORITY/LOCAL SERVICE kan niet worden gevonden' krijgt tijdens het gebruik van Geavanceerd installatieprogramma Om contact op te nemen met NT AUTHORITYLOCAL SERVICE, kan de foutmelding een symptoom zijn van een storing die buitenlandse servers treft.
Dit probleem wordt bevestigd wanneer sommige gebruikers van Advanced Installer proberen de XUA Automation Server-service handmatig te starten via het scherm Services of wanneer ze proberen deze handmatig te starten door alleen de gebruikersnaam in te voeren (zonder NT Authority).
ملاحظة: Dit probleem doet zich voor omdat SCM geen ondersteuning biedt voor lokaal vertaalde namen, ook al vertaalt het beveiligingssubsysteem ze wel. Hoewel u een lokaal vertaalde naam voor uw account op een externe server ontvangt, moet het account wel lokaal vertaald zijn. NT AUTHORITYLocalService Bij het gebruik van functies zoals CreateService أو ChangeServiceConfig.
Als dit scenario van toepassing is, is de enige oplossing tot nu toe het gebruik van de Engelse versie van de naamgevingsconventie.
Gebruik daarom in plaats van opdrachten in de lokale servertaal (zoals AUTORITE NTSERVICE LOCAL) de Engelse equivalent (NT AUTHORITYLocalService).
Reacties zijn gesloten.