Dela via


Microsoft Entra har endast autentisering med Azure SQL

Gäller för:Azure SQL DatabaseAzure SQL Managed InstanceAzure Synapse Analytics (endast dedikerade SQL-pooler)

Microsoft Entra-endast autentisering är en funktion i Azure SQL som gör att tjänsten endast stöder Microsoft Entra-autentisering och stöds för Azure SQL Database och Azure SQL Managed Instance.

Kommentar

Microsoft Entra-ID är det nya namnet för Azure Active Directory (Azure AD). Vi uppdaterar dokumentationen just nu.

Microsoft Entra-endast autentisering är också tillgängligt för dedikerade SQL-pooler (tidigare SQL DW) på fristående servrar. Endast Microsoft Entra-autentisering kan aktiveras för Azure Synapse-arbetsytan. Mer information finns i Microsoft Entra-endast autentisering med Azure Synapse-arbetsytor.

SQL-autentisering inaktiveras när endast Microsoft Entra-autentisering aktiveras i Azure SQL-miljön, inklusive anslutningar från SQL Server-administratörer, inloggningar och användare. Endast användare som använder Microsoft Entra-autentisering har behörighet att ansluta till servern eller databasen.

Endast Microsoft Entra-autentisering kan aktiveras eller inaktiveras med hjälp av Azure-portalen, Azure CLI, PowerShell eller REST API. Endast Microsoft Entra-autentisering kan också konfigureras när servern skapas med en ARM-mall (Azure Resource Manager).

Mer information om Azure SQL-autentisering finns i Autentisering och auktorisering.

Funktionsbeskrivning

När du aktiverar Endast Microsoft Entra-autentisering inaktiveras SQL-autentisering på server- eller hanterad instansnivå och förhindrar all autentisering baserat på autentiseringsuppgifter för SQL-autentisering. SQL-autentiseringsanvändare kommer inte att kunna ansluta till den logiska servern för Azure SQL Database eller hanterad instans, inklusive alla dess databaser. Även om SQL-autentisering är inaktiverat kan nya SQL-autentiseringsinloggningar och användare fortfarande skapas av Microsoft Entra-konton med rätt behörighet. Nyligen skapade SQL-autentiseringskonton tillåts inte att ansluta till servern. Om du aktiverar Endast Microsoft Entra-autentisering tar du inte bort befintliga inloggnings- och användarkonton för SQL-autentisering. Funktionen hindrar endast dessa konton från att ansluta till servern och alla databaser som skapats för den här servern.

Du kan också tvinga servrar att skapas med Endast Microsoft Entra-autentisering aktiverat med Hjälp av Azure Policy. Mer information finns i Azure Policy for Microsoft Entra-only authentication (Azure Policy for Microsoft Entra-only authentication).

Behörigheter

Microsoft Entra-endast autentisering kan aktiveras eller inaktiveras av Microsoft Entra-användare som är medlemmar i inbyggda Roller i Microsoft Entra med hög behörighet, till exempel Ägare av Azure-prenumerationer, deltagare och globala administratörer. Dessutom kan rollen SQL Security Manager även aktivera eller inaktivera autentiseringsfunktionen endast Microsoft Entra.

Rollerna SQL Server-deltagare och SQL Managed Instance-deltagare har inte behörighet att aktivera eller inaktivera autentiseringsfunktionen endast Microsoft Entra. Detta är förenligt med metoden För separation av uppgifter , där användare som kan skapa en Azure SQL-server eller skapa en Microsoft Entra-administratör inte kan aktivera eller inaktivera säkerhetsfunktioner.

Åtgärder som krävs

Följande åtgärder läggs till i SQL Security Manager-rollen för att tillåta hantering av autentiseringsfunktionen endast Microsoft Entra.

  • Microsoft.Sql/servers/azureADOnlyAuthentications/*
  • Microsoft.Sql/servers/administrators/read – krävs endast för användare som har åtkomst till Microsoft Entra-ID-menyn i Azure-portalen
  • Microsoft.Sql/managedInstances/azureADOnlyAuthentications/*
  • Microsoft.Sql/managedInstances/read

Ovanstående åtgärder kan också läggas till i en anpassad roll för att hantera Endast Microsoft Entra-autentisering. Mer information finns i Skapa och tilldela en anpassad roll i Microsoft Entra ID.

Hantera Endast Microsoft Entra-autentisering med API:er

Viktigt!

Microsoft Entra-administratören måste anges innan microsoft Entra-autentisering aktiveras.

Du måste ha Azure CLI version 2.14.2 eller senare.

name motsvarar prefixet för servern eller instansnamnet (till exempel myserver) och resource-group motsvarar den resurs som servern tillhör (till exempel myresource).

Azure SQL Database

Mer information finns i az sql server ad-only-auth.

Aktivera eller inaktivera i SQL Database

Aktivera

az sql server ad-only-auth enable --resource-group myresource --name myserver

Inaktivera

az sql server ad-only-auth disable --resource-group myresource --name myserver

Kontrollera statusen i SQL Database

az sql server ad-only-auth get --resource-group myresource --name myserver

Azure SQL Managed Instance

Mer information finns i az sql mi ad-only-auth.

Aktivera

az sql mi ad-only-auth enable --resource-group myresource --name myserver

Inaktivera

az sql mi ad-only-auth disable --resource-group myresource --name myserver

Kontrollera statusen i SQL Managed Instance

az sql mi ad-only-auth get --resource-group myresource --name myserver

Kontrollera Microsoft Entra-endast autentisering med T-SQL

SERVERPROPERTYIsExternalAuthenticationOnly har lagts till för att kontrollera om Endast Microsoft Entra-autentisering är aktiverat för servern eller den hanterade instansen. 1 anger att funktionen är aktiverad och 0 representerar att funktionen är inaktiverad.

SELECT SERVERPROPERTY('IsExternalAuthenticationOnly') 

Anmärkningar

  • En SQL Server-deltagare kan ange eller ta bort en Microsoft Entra-administratör, men kan inte ange inställningen Endast Microsoft Entra-autentisering. SQL Security Manager kan inte ange eller ta bort en Microsoft Entra-administratör, men kan ange inställningen Endast Microsoft Entra-autentisering. Endast konton med högre Azure RBAC-roller eller anpassade roller som innehåller båda behörigheterna kan ange eller ta bort en Microsoft Entra-administratör och ange inställningen Endast Microsoft Entra-autentisering. En sådan roll är rollen Deltagare .
  • När du har aktiverat eller inaktiverat Microsoft Entra-autentisering endast i Azure-portalen visas en aktivitetsloggpostSQL Server-menyn . Activity log entry in the Azure portal
  • Inställningen Endast Microsoft Entra-autentisering kan bara aktiveras eller inaktiveras av användare med rätt behörighet om Microsoft Entra-administratören har angetts. Om Microsoft Entra-administratören inte har angetts förblir inställningen endast Microsoft Entra-autentisering inaktiv och kan inte aktiveras eller inaktiveras. Användning av API:er för att aktivera Endast Microsoft Entra-autentisering misslyckas också om Microsoft Entra-administratören inte har angetts.
  • Om du ändrar en Microsoft Entra-administratör när Endast Microsoft Entra-autentisering är aktiverat stöds det för användare med lämpliga behörigheter.
  • Det är tillåtet att ändra en Microsoft Entra-administratör och aktivera eller inaktivera Endast Microsoft Entra-autentisering i Azure-portalen för användare med rätt behörighet. Båda åtgärderna kan slutföras med en Spara i Azure-portalen. Microsoft Entra-administratören måste anges för att kunna aktivera autentisering endast för Microsoft Entra.
  • Det går inte att ta bort en Microsoft Entra-administratör när autentiseringsfunktionen endast Microsoft Entra är aktiverad. Det går inte att använda ett API för att ta bort en Microsoft Entra-administratör om Endast Microsoft Entra-autentisering är aktiverat.
    • Om inställningen Endast Microsoft Entra-autentisering är aktiverad är knappen Ta bort administratör inaktiv i Azure-portalen.
  • Det är tillåtet att ta bort en Microsoft Entra-administratör och inaktivera inställningen endast Microsoft Entra-autentisering, men kräver rätt användarbehörighet för att slutföra åtgärderna. Båda åtgärderna kan slutföras med en Spara i Azure-portalen.
  • Microsoft Entra-användare med rätt behörighet kan personifiera befintliga SQL-användare.
    • Personifieringen fortsätter att fungera mellan SQL-autentiseringsanvändare även när autentiseringsfunktionen endast Microsoft Entra är aktiverad.

Begränsningar för Endast Microsoft Entra-autentisering i SQL Database

När Endast Microsoft Entra-autentisering är aktiverat för SQL Database stöds inte följande funktioner:

  • Azure SQL Database-serverroller stöds för Microsoft Entra-serverhuvudnamn, men inte om Microsoft Entra-inloggningen är en grupp.
  • Elastiska jobb
  • SQL Data Sync
  • Ändra datainsamling (CDC) – Om du skapar en databas i Azure SQL Database som en Microsoft Entra-användare och aktiverar insamling av ändringsdata på den kan en SQL-användare inte inaktivera eller göra ändringar i CDC-artefakter. En annan Microsoft Entra-användare kan dock aktivera eller inaktivera CDC på samma databas. På samma sätt fungerar inte aktivering eller inaktivering av CDC som Microsoft Entra-användare om du skapar en Azure SQL Database som SQL-användare
  • Transaktionsreplikering – Eftersom SQL-autentisering krävs för anslutning mellan replikeringsdeltagare, när Endast Microsoft Entra-autentisering är aktiverat, stöds inte transaktionsreplikering för SQL Database för scenarier där transaktionsreplikering används för att skicka ändringar som görs i en Azure SQL Managed Instance, lokal SQL Server eller en SQL Server-instans för virtuella Azure-datorer till en databas i Azure SQL Database
  • SQL Insights (förhandsversion)
  • EXEC AS-instruktion för Microsoft Entra-gruppmedlemskonton

Begränsningar för Endast Microsoft Entra-autentisering i hanterad instans

När Endast Microsoft Entra-autentisering är aktiverat för Hanterad instans stöds inte följande funktioner:

Fler begränsningar finns i T-SQL-skillnader mellan SQL Server och Azure SQL Managed Instance.

Nästa steg