Dela via


Ansluta till Azure SQL-resurs med Microsoft Entra-autentisering

gäller för:Azure SQL DatabaseAzure SQL Managed InstanceAzure Synapse Analytics

Den här artikeln visar hur du använder Microsoft Entra-autentisering för att ansluta till Azure SQL Database, Azure SQL Managed Instance och Azure Synapse Analytics.

Förutsättningar

Om du vill ansluta till din Azure SQL-resurs måste du ha konfigurerat Microsoft Entra-autentisering för din resurs.

Om du vill bekräfta att Microsoft Entra-administratören har konfigurerats korrekt ansluter du till master databasen med hjälp av Microsoft Entra-administratörskontot. Om du vill skapa en Microsoft Entra-baserad innesluten databasanvändare ansluter du till databasen med en Microsoft Entra-identitet med åtkomst till databasen och åtminstone behörigheten ALTER ANY USER .

Ansluta med SSMS eller SSDT

Följande procedurer visar hur du ansluter till SQL Database med en Microsoft Entra-identitet med hjälp av SQL Server Management Studio (SSMS) eller SQL Server Database Tools (SSDT).

Microsoft Entra Integrated

Använd den här metoden när du vill logga in med dina Windows-autentiseringsuppgifter som är federerade i Microsoft Entra-ID. Mer information finns i Sömlös enkel inloggning med Microsoft Entra.

  1. Starta SSMS eller SSDT och i dialogrutan Anslut till server (eller Anslut till databasmotor) på fliken Inloggning:

    1. Ange servernamnet i formatet <server-name>.database.windows.net.
    2. För Autentisering väljer du Microsoft Entra Integrated. Du behöver inte ange ett lösenord eftersom dina befintliga autentiseringsuppgifter visas för anslutningen.
    3. För Kryptering väljer du Strikt (SQL Server 2022 och Azure SQL), som ska användas för att ansluta till Azure SQL-resurser.

    Skärmbild från SSMS som visar Microsoft Entra-integrerad autentisering.

  2. På fliken Anslutningsegenskaper i fältet Anslut till databas skriver du namnet på den användardatabas som du vill ansluta till.

    Skärmbild från SSMS på menyn Alternativ.

Microsoft Entra-lösenord

Använd den här metoden när du ansluter med ett Microsoft Entra-huvudnamn med hjälp av den Microsoft Entra-hanterade domänen. Du kan också använda den för federerade konton utan åtkomst till domänen när du till exempel arbetar via fjärranslutning.

Använd den här metoden för att autentisera till databasen i SQL Database eller SQL Managed Instance med microsoft entra-molnbaserade identitetsanvändare eller de som använder Microsoft Entra-hybrididentiteter. Den här metoden stöder användare som vill använda sina Windows-autentiseringsuppgifter, men deras lokala dator är inte ansluten till domänen (till exempel med fjärråtkomst). I det här fallet kan en Windows-användare ange sitt domänkonto och lösenord och kan autentisera till databasen i SQL Database, SQL Managed Instance eller Azure Synapse.

  1. Starta SSMS eller SSDT och på fliken Inloggning i dialogrutan Anslut till server (eller Anslut till databasmotorn):

    1. Ange servernamnet i formatet <server-name>.database.windows.net.
    2. För Autentisering väljer du Microsoft Entra-lösenord.
    3. I rutan Användarnamn skriver du ditt Microsoft Entra-användarnamn i formatet username@domain.com. Användarnamn måste vara ett konto från Microsoft Entra-ID eller ett konto från en hanterad eller federerad domän med Microsoft Entra-ID.
    4. I rutan Lösenord skriver du ditt användarlösenord för Microsoft Entra-kontot eller det hanterade/federerade domänkontot.
    5. För Kryptering väljer du Strikt (SQL Server 2022 och Azure SQL), som ska användas för att ansluta till Azure SQL-resurser.

    Skärmbild från SSMS med Microsoft Entra-lösenordsautentisering.

  2. På fliken Anslutningsegenskaper i fältet Anslut till databas skriver du namnet på den användardatabas som du vill ansluta till.

    Skärmbild från SSMS på menyn Alternativ.

Microsoft Entra MFA

Använd den här metoden för interaktiv autentisering med multifaktorautentisering (MFA) med lösenordet som begärs interaktivt. Den här metoden kan användas för att autentisera till databaser i SQL Database, SQL Managed Instance och Azure Synapse Analytics för identitetsanvändare med endast Microsoft Entra-moln, eller de som använder Microsoft Entra-hybrididentiteter.

Följande steg visar hur du ansluter med multifaktorautentisering i den senaste versionen av SSMS.

  1. Om du vill ansluta med MFA går du till dialogrutan Anslut till server i SSMS och väljer Microsoft Entra MFA.

    Skärmbild av dialogrutan Anslut till server i SSMS.

  2. Fyll i rutan Servernamn med serverns namn. Fyll i rutan Användarnamn med dina Microsoft Entra-autentiseringsuppgifter i formatet user_name@domain.com.

    Skärmbild av dialogrutan Anslut till server i SSMS med alla fält ifyllda.

  3. Välj Anslut.

  4. När dialogrutan Logga in på ditt konto visas bör den fyllas i i förväg med det användarnamn som du angav i steg 2. Inget lösenord krävs om en användare ingår i en domän federerad med Microsoft Entra-ID.

    Skärmbild av dialogrutan Logga in på ditt konto för Azure SQL Database och Data Warehouse. Kontonamnet fylls i.

  5. Du uppmanas att autentisera med någon av de metoder som konfigurerats baserat på inställningen MFA-administratör.

  6. När verifieringen är klar ansluter SSMS normalt, vilket förutsätter giltiga autentiseringsuppgifter och brandväggsåtkomst.

Microsoft Entra-tjänstens huvudnamn

Använd den här metoden för att autentisera mot databasen i SQL Database eller SQL Managed Instance med Microsoft Entra-tjänstprincipaler (Microsoft Entra-applikationer). Mer information finns i Microsoft Entra tjänsteprincipaler med Azure SQL.

Microsoft Entra Managed Identity

Använd den här metoden för att autentisera till databasen i SQL Database eller SQL Managed Instance med Microsoft Entra-hanterade identiteter. Mer information finns i Hanterade identiteter i Microsoft Entra för Azure SQL.

Standard för Microsoft Entra

Alternativet Standardautentisering med Microsoft Entra-ID möjliggör autentisering som utförs via lösenordslösa och icke-interaktiva mekanismer, inklusive hanterade identiteter.

Ansluta från ett klientprogram

Följande procedurer visar hur du ansluter till en SQL Database med en Microsoft Entra-identitet från ett klientprogram. Det här är inte en omfattande lista över autentiseringsmetoder när du använder en Microsoft Entra-identitet. Mer information finns i Ansluta till Azure SQL med Microsoft Entra-autentisering och SqlClient.

Konfigurera dina klientprogram

Anmärkning

System.Data.SqlClient använder Azure Active Directory Authentication Library (ADAL), som är inaktuellt. Om du använder namnområdet System.Data.SqlClient för Microsoft Entra-autentisering migrerar du program till Microsoft.Data.SqlClient och Microsoft Authentication Library (MSAL).. Information om vilka anslutningsmetoder som är tillgängliga i .NET finns i Ansluta till Azure SQL med Microsoft Entra-autentisering och SqlClient.

Om du måste fortsätta att använda ADAL.DLL i dina program kan du använda länkarna i det här avsnittet för att installera den senaste ODBC- eller OLE DB-drivrutinen, som innehåller det senaste ADAL.DLL biblioteket.

På alla klientdatorer från vilka dina program eller användare ansluter till SQL Database eller Azure Synapse Analytics med hjälp av Microsoft Entra-identiteter måste du installera följande programvara:

Du kan uppfylla dessa krav genom att:

  • Installera den senaste versionen av SQL Server Management Studio eller SQL Server Data Tools för att uppfylla kraven för .NET Framework 4.6.
    • SSMS installerar x86-versionen av ADAL.DLL.
    • SSDT installerar amd64-versionen av ADAL.DLL.
    • Den senaste Visual Studio från Visual Studio Downloads uppfyller kraven för .NET Framework 4.6 men installerar inte den nödvändiga amd64-versionen av ADAL.DLL.

Microsoft Entra-integrerad autentisering

Om du vill använda integrerad Windows-autentisering måste domänens Active Directory federeras med Microsoft Entra-ID, eller vara en hanterad domän som är konfigurerad för sömlös enkel inloggning för direkt- eller lösenordshashautentisering. Mer information finns i Sömlös enkel inloggning med Microsoft Entra.

Klientprogrammet (eller en tjänst) som ansluter till databasen måste köras på en domänansluten dator under en användares domänautentiseringsuppgifter.

Om du vill ansluta till en databas med integrerad autentisering och en Microsoft Entra-identitet måste nyckelordet Authentication i databasanslutningssträngen vara inställt på Active Directory Integrated. Ersätt <server_name> med namnet på den logiska servern. Följande C#-kodexempel använder ADO .NET.

string ConnectionString = @"Data Source=<server-name>.database.windows.net; Authentication=Active Directory Integrated; Initial Catalog=testdb;";
SqlConnection conn = new SqlConnection(ConnectionString);
conn.Open();

Nyckelordet anslutningssträng Integrated Security=True stöds inte för anslutning till Azure SQL Database. När du skapar en ODBC-anslutning måste du ta bort blanksteg och ställa in autentisering på ActiveDirectoryIntegrated.

Microsoft Entra-lösenordsautentisering

Om du vill ansluta till en databas med microsoft entra-identitetsanvändarkonton i molnet, eller de som använder Microsoft Entra-hybrididentiteter, måste nyckelordet Autentisering vara inställt på Active Directory Password. Anslutningssträngen måste innehålla nyckelord och värden för användar-ID/UID lösenord/PWD. Ersätt <server_name>, <email_address>och <password> med lämpliga värden. Följande C#-kodexempel använder ADO .NET.

string ConnectionString =
@"Data Source=<server-name>.database.windows.net; Authentication=Active Directory Password; Initial Catalog=testdb; UID=<email_address>; PWD=<password>";
SqlConnection conn = new SqlConnection(ConnectionString);
conn.Open();

Läs mer om Microsoft Entra-autentiseringsmetoder med demokodexempel som är tillgängliga på GitHub Demo för Microsoft Entra-autentisering.

Åtkomsttoken för Microsoft Entra-ID

Med den här autentiseringsmetoden kan mellannivåtjänster hämta JSON-webbtoken (JWT) för att ansluta till databasen i SQL Database, SQL Managed Instance eller Azure Synapse genom att hämta en token från Microsoft Entra-ID. Den här metoden möjliggör olika programscenarier, inklusive tjänstidentiteter, tjänstens huvudnamn och program med hjälp av certifikatbaserad autentisering. Du måste utföra fyra grundläggande steg för att använda Microsoft Entra-tokenautentisering:

  1. Registrera ditt program med Microsoft Entra-ID och hämta klient-ID:t för din kod.
  2. Skapa en databasanvändare som representerar programmet (enligt beskrivningen i avsnittet Skapa inneslutna användare som mappas till Microsoft Entra-identiteter .)
  3. Skapa ett certifikat på klientdatorn som kör programmet.
  4. Lägg till certifikatet som en nyckel för ditt program.

Exempel på anslutningssträng. Ersätt <server-name> med namnet på den logiska servern:

string ConnectionString = @"Data Source=<server-name>.database.windows.net; Initial Catalog=testdb;";
SqlConnection conn = new SqlConnection(ConnectionString);
conn.AccessToken = "Your JWT token";
conn.Open();

Mer information finns i SQL Server-säkerhetsbloggen. Information om hur du lägger till ett certifikat finns i Kom igång med certifikatbaserad autentisering i Microsoft Entra-ID.

Microsoft Entra multifaktorautentisering

Microsoft Entra multifaktorautentisering är en autentiseringsmetod som stöds för alla SQL-verktyg. Information om programmässig autentisering med Microsoft Entra-ID finns i Översikt över Microsoft Authentication Library (MSAL).

sqlcmd

Följande instruktioner ansluter med version 13.1 av sqlcmd. Ladda ned Microsoft Command Line Utilities 14.0 för SQL Server.

Anmärkning

sqlcmd -G-kommandot fungerar inte med systemidentiteter och kräver en inloggning med användarhuvudnamn.

sqlcmd -S <database or datawarehouse name>.<server-name>.database.windows.net -G
sqlcmd -S <database or datawarehouse name>.<server-name>.database.windows.net -U adrian@contoso.com -P <password> -G -l 30

Ansluta i Azure-portalens frågeredigerare (Azure SQL Database)

Mer information om Azure-portalens frågeredigerare för Azure SQL Database finns i Snabbstart: Använd Azure-portalens frågeredigerare för att köra frågor mot Azure SQL Database.

  1. Gå till DIN SQL-databas i Azure-portalen. Besök till exempel din Azure SQL Hub-sida och välj din Azure SQL Database.

  2. På sidan Översikt över SQL-databas i Azure-portalen väljer du Frågeredigeraren på resursmenyn.

  3. På inloggningsskärmen under Välkommen till SQL Database Query Editor väljer du Fortsätt som <användar- eller grupp-ID>.