Anteckning
Åtkomst till den här sidan kräver auktorisering. Du kan prova att logga in eller ändra kataloger.
Åtkomst till den här sidan kräver auktorisering. Du kan prova att ändra kataloger.
gäller för:SQL Server
Principen för informationssäkerhet med minsta behörighet anger att konton och program endast har åtkomst till de data och åtgärder som krävs. Med SQL Server aktiverat av Azure Arc kan du köra agenttilläggstjänsten med minsta möjliga behörighet. Den här artikeln beskriver hur du kör agenttilläggstjänsten med minsta möjliga behörighet.
Om du vill konfigurera tjänsten så att den körs med minsta möjliga behörighet följer du stegen i den här artikeln. Tjänsten körs för närvarande inte automatiskt med minsta möjliga behörighet.
Konfigurera Windows-tjänstkonton och behörigheter för Azure-tillägget för SQL Server beskriver de minst behörigheter som gäller för agenttilläggstjänsten.
Obs
För närvarande tillämpas inte minst privilegierad konfiguration som standard.
Befintliga servrar med tilläggsversion 1.1.2859.223 eller senare kommer så småningom att ha den minst privilegierade konfigurationen tillämpad. Tillägget släpptes i november 2024. Blockera tilläggsuppgraderingar efter 1.1.2859.223 för att förhindra automatiskt tillämpning av minsta privilegier.
När du har konfigurerat agenttilläggstjänsten så att den körs med minsta möjliga behörighet använder den NT Service\SQLServerExtension tjänstkontot.
NT Service\SQLServerExtension-kontot är ett lokalt Windows-tjänstkonto:
- Skapad och hanterad av Azure-tillägget för SQL Server när alternativet med minsta behörighet är aktiverat.
- Beviljat den minsta behörighet som krävs för att köra Azure-tillägget för SQL Server-tjänsten på Windows-operativsystemet. Den har bara åtkomst till mappar och kataloger som används för att läsa och lagra konfiguration eller skriva loggar.
- Beviljad behörighet att ansluta och fråga i SQL Server med en ny inloggning specifikt för det tjänstkonto som har de minsta behörigheter som krävs. Minsta behörigheter beror på de aktiverade funktionerna.
- Uppdateras när behörigheter inte längre behövs. Behörigheter återkallas till exempel när du inaktiverar en funktion, inaktiverar konfiguration av lägsta behörighet eller avinstallerar Azure-tillägget för SQL Server. Återkallning säkerställer att inga behörigheter finns kvar när de inte längre krävs.
Förutsättningar
Det här avsnittet identifierar systemkraven och verktygen som du behöver för att slutföra exemplet i den här artikeln.
Systemkrav
Konfigurationen med minst behörighet kräver:
- Windows Server 2012 eller senare
- SQL Server 2012 eller senare
- SQL Server-tjänstkontot måste vara medlem i
sysadminfast serverroll - Alla databaser måste vara online och uppdateringsbara
Konfigurationen med minst behörighet stöds för närvarande inte i Linux.
Andra krav, som anges i Förutsättningar – SQL Server möjliggjort av Azure Arc gäller fortfarande.
SQL Server-tjänstkonto
Som standard är SQL Server-tjänstkontot medlem i sysadmin fast serverroll.
Som anges i förhandskraven måste SQL Server-tjänstkontot vara medlem i sysadmin fast serverroll på varje SQL Server-instans. Azure-tillägget för SQL Server har en process som kallas Deployer.exe som tillfälligt körs som NT AUTHORITY\SYSTEM när:
- Funktioner är aktiverade eller inaktiverade
- SQL Server-instanser läggs till eller tas bort
Deployer.exe personifierar SQL Server-tjänstkontot för att ansluta till SQL Server och lägga till eller ta bort behörigheter i server- och databasroller beroende på vilka funktioner som är aktiverade eller inaktiverade för att säkerställa att Azure-tillägget för SQL Server använder de lägsta behörigheter som krävs. Om du vill ändra dessa behörigheter måste SQL Server-tjänstkontot vara medlem i sysadmin serverrollen.
Om du vill hantera den här processen med mer kontroll, så att SQL Server-tjänstkontot inte är medlem i sysadmin-serverrollen hela tiden, följer du dessa steg:
- Lägg tillfälligt till SQL Server-tjänstkontot i sysadmin-serverrollen.
- Tillåt att
Deployer.exekörs minst en gång så att behörigheterna ställs in. - Ta bort SQL Server-tjänstkontot från sysadmin-rollen.
Upprepa den här proceduren när funktioner aktiveras eller inaktiveras eller SQL Server-instanser läggs till för att tillåta Deployer.exe att bevilja de minsta behörigheter som krävs.
Arbetsredskap
För att slutföra stegen i den här artikeln behöver du följande verktyg:
- Azure CLI
-
arcdataAzure CLI-tillägg version1.5.9eller senare - Azure-tillägg för SQL Server-version
1.1.2504.99eller senare
Aktivera minsta behörighet
Logga in med Azure CLI.
az loginKontrollera
arcdata-tilläggsversionen.az extension list -o tableOm resultatet innehåller en version av
arcdatasom stöds går du vidare till nästa steg.Om det behövs installerar eller uppdaterar du
arcdataAzure CLI-tillägget.Så här installerar du tillägget:
az extension add --name arcdataSå här uppdaterar du tillägget:
az extension update --name arcdataAktivera lägsta behörighet med Azure CLI.
Om du vill aktivera lägsta behörighet anger du
LeastPrivilege-funktionsflaggan tilltrue. Slutför den här uppgiften genom att köra följande kommando med uppdaterade värden för<resource-group>och<machine-name>.az sql server-arc extension feature-flag set --name LeastPrivilege --enable true --resource-group <resource-group> --machine-name <machine-name>Följande kommando aktiverar till exempel lägsta behörighet för en server med namnet
myserveri en resursgrupp med namnetmyrg:az sql server-arc extension feature-flag set --name LeastPrivilege --enable true --resource-group myrg --machine-name myserver
Verifiera konfiguration med minsta möjliga behörighet
Så här kontrollerar du att din SQL Server som är aktiverad av Azure Arc har konfigurerats att köras med minst behörighet:
Leta upp Microsoft SQL Server Extension Service-tjänsten i Windows-tjänsterna. Kontrollera att tjänsten körs som tjänstekontot
NT Service\SqlServerExtension.Öppna schemaläggaren på servern och kontrollera att en händelsedriven uppgift med namnet
SqlServerExtensionPermissionProviderskapas underMicrosoft\SqlServerExtension.Obs
Före lanseringen i juli 2024 är
SqlServerExtensionPermissionProvideren schemalagd uppgift. Den körs varje timme.Öppna schemaläggaren på servern och kontrollera att en schemalagd aktivitet med namnet
SqlServerExtensionPermissionProviderskapas underMicrosoft\SqlServerExtension.Öppna SQL Server Management Studio och kontrollera inloggningen med namnet
NT Service\SqlServerExtension. Kontrollera att kontot har tilldelats följande behörigheter:- Anslut SQL
- Visning av databastillstånd
- Visa servertillstånd
Verifiera behörigheterna med följande frågor:
Kör följande fråga för att verifiera behörigheter på servernivå:
EXECUTE AS LOGIN = 'NT Service\SqlServerExtension' SELECT * FROM fn_my_permissions (NULL, 'SERVER');Om du vill verifiera behörigheter på databasnivå ersätter du
<database name>med namnet på en av dina databaser och kör följande fråga:EXECUTE AS LOGIN = 'NT Service\SqlServerExtension' USE <database name>; SELECT * FROM fn_my_permissions (NULL, 'database');