Verificatie Azure Active Directory gebruiken

VAN TOEPASSING OP: Azure SQL Database Azure SQL Managed Instance Azure Synapse Analytics

Azure Active Directory verificatie (Azure AD) is een mechanisme om verbinding te maken met Azure SQL Database, Azure SQL Managed Instanceen Synapse SQL in Azure Synapse Analytics met behulp van identiteiten in Azure AD.

Notitie

Dit artikel is van toepassing op Azure SQL Database, SQL Managed Instance en Azure Synapse Analytics.

Met Azure AD-verificatie kunt u de identiteit van databasegebruikers en andere Microsoft-services op één centrale locatie beheren. Centraal identiteitsbeheer biedt één plek voor het beheren van databasegebruikers en vereenvoudigt het machtigingenbeheer. Dit biedt verschillende voordelen, zoals:

  • Het biedt een alternatief voor SQL Server verificatie.

  • Het helpt de verspreiding van gebruikersidentiteiten op servers tegen te gaan.

  • Hiermee is wachtwoordrotatie op één plek mogelijk.

  • Klanten kunnen databasemachtigingen beheren met behulp van externe groepen (Azure AD).

  • Wachtwoorden hoeven niet meer te worden opgeslagen door het inschakelen van geïntegreerde Windows-verificatie en andere vormen van authenticatie die worden ondersteund door Azure Active Directory.

  • Azure AD-verificatie maakt gebruik van ingesloten databasegebruikers voor het verifiëren van identiteiten op databaseniveau.

  • Azure AD ondersteunt verificatie op basis van een token voor toepassingen die verbinding maken met SQL Database en SQL Managed Instance.

  • Azure AD-verificatie ondersteunt:

  • Azure AD ondersteunt verbindingen van SQL Server Management Studio die gebruikmaken van universele Active Directory-verificatie, waaronder Multi-Factor Authentication. Multi-Factor Authentication omvat sterke verificatie met een scala aan eenvoudige verificatieopties: telefoonoproepen, sms-berichten, smartcards met pincode of meldingen voor mobiele apps. Zie SSMS-ondersteuning voor Azure AD Multi-Factor Authentication met Azure SQL Database, SQL Managed Instance en Azure Synapse

  • Azure AD biedt ondersteuning voor vergelijkbare verbindingen van SQL Server Data Tools (SSDT) die gebruikmaken van Active Directory Interactive Authentication. Zie voor meer informatie Azure Active Directory ondersteuning in SQL Server Data Tools (SSDT)

Notitie

Verbinding maken met een SQL-serverexemplaar dat wordt uitgevoerd op een Azure VM (virtual machine) wordt niet ondersteund bij gebruik van een Azure Active Directory-account. Gebruik in plaats hiervan een Active Directory-domeinaccount.

De configuratiestappen omvatten de volgende procedures voor het configureren en gebruiken van Azure Active Directory-verificatie.

  1. Maak en vul Azure AD.
  2. Optioneel: koppel of wijzig de Active Directory die momenteel is gekoppeld aan uw Azure-abonnement.
  3. Maak een Azure Active Directory beheerder.
  4. Configureer uw clientcomputers.
  5. Maak ingesloten databasegebruikers in uw database die zijn toegevoegd aan Azure AD-identiteiten.
  6. Verbinding maken maken met uw database met behulp van Azure AD-identiteiten.

Notitie

Zie Azure ADconfigureren met Azure SQL Database voor meer informatie over het maken en vullen van Azure AD en het configureren van Azure AD met Azure SQL Database, SQL Managed Instance en Synapse SQL in Azure Synapse Analytics.

Architectuur van vertrouwensrelatie

  • Alleen het cloudgedeelte van Azure AD, SQL Database, SQL Managed Instance en Azure Synapse wordt beschouwd als ondersteuning voor native Azure AD-gebruikerswachtwoorden.
  • Ter ondersteuning van Windows-referenties voor een federatief of beheerd domein (of gebruiker/wachtwoord voor Windows-referenties), gebruikt u Azure Active Directory-referenties van een federatief of beheerd domein dat is geconfigureerd voor naadloze een een aanmelding voor pass-through- en wachtwoordhashverificatie. Zie naadloze een Azure Active Directory voor meer informatie.
  • Voor de ondersteuning van federatieve aanmelding (of gebruiker/wachtwoord voor Windows-referenties), is de communicatie met het ADFS-blok vereist.

Zie de volgende artikelen voor meer informatie over hybride Azure AD-identiteiten, de installatie en synchronisatie:

Zie het onderstaande diagram voor een voorbeeld van federatief verificatie met ADFS-infrastructuur (of gebruiker/wachtwoord voor Windows referenties). De pijlen geven communicatiepaden aan.

aad-verificatiediagram

In het volgende diagram worden de federatie-, vertrouwens en hostingrelaties aangegeven waarmee een client verbinding kan maken met een database door een token in te dienen. Het token wordt geverifieerd door een Azure AD en wordt vertrouwd door de database. Klant 1 kan een Azure Active Directory met systeemeigen gebruikers of een Azure AD met federatieve gebruikers vertegenwoordigen. Klant 2 is een mogelijke oplossing, inclusief geïmporteerde gebruikers, in dit voorbeeld afkomstig van een federatief Azure Active Directory met ADFS die wordt gesynchroniseerd met Azure Active Directory. Het is belangrijk om te begrijpen dat toegang tot een database met behulp van Azure AD-verificatie vereist dat het hostingabonnement is gekoppeld aan Azure AD. Hetzelfde abonnement moet worden gebruikt om de resources Azure SQL Database, SQL Managed Instance of Azure Synapse maken.

abonnementsrelatie

Beheerdersstructuur

Wanneer u Azure AD-verificatie gebruikt, zijn er twee beheerdersaccounts: de Azure SQL Database beheerder en de Azure AD-beheerder. Dezelfde concepten zijn van toepassing op Azure Synapse. Alleen de beheerder op basis van een Azure AD-account kan de eerste Azure AD-databasegebruiker in een gebruikersdatabase maken. De aanmelding van de Azure AD-beheerder kan een Azure AD-gebruiker of een Azure AD-groep zijn. Wanneer de beheerder een groepsaccount is, kan dit worden gebruikt door een groepslid, waardoor meerdere Azure AD-beheerders voor de server worden inschakelen. Het gebruik van een groepsaccount als beheerder verbetert de beheerbaarheid doordat u groepsleden in Azure AD centraal kunt toevoegen en verwijderen zonder de gebruikers of machtigingen in SQL Database of Azure Synapse. Er kan maar één Azure AD-beheerder (een gebruiker of groep) tegelijk worden geconfigureerd.

beheerdersstructuur

Machtigingen

Als u nieuwe gebruikers wilt maken, moet u de machtiging ALTER ANY USER in de database hebben. De machtiging ALTER ANY USER kan aan elke databasegebruiker worden verleend. De machtiging ALTER ANY USER is ook verleend aan de beheerdersaccounts van de server, databasegebruikers met de machtiging CONTROL ON DATABASEof ALTER ON DATABASE voor die database en leden van de databaserol db_owner.

Als u een ingesloten databasegebruiker wilt maken in Azure SQL Database, SQL Managed Instance of Azure Synapse, moet u verbinding maken met de database of het exemplaar met behulp van een Azure AD-identiteit. Om de eerste gebruiker voor een ingesloten database te maken, moet u gebruikmaken van een Azure AD-beheerder (die de eigenaar is van de database) om verbinding te maken met de database. Dit wordt gedemonstreerd in Configure and manage Azure Active Directory authentication with SQL Database or Azure Synapse. Azure AD-verificatie is alleen mogelijk als de Azure AD-beheerder is gemaakt voor Azure SQL Database, SQL Managed Instance of Azure Synapse. Als de Azure Active Directory beheerder van de server is verwijderd, kunnen bestaande Azure Active Directory-gebruikers die eerder in SQL Server zijn gemaakt, geen verbinding meer maken met de database met hun Azure Active Directory referenties.

Functies en beperkingen van Azure AD

  • De volgende leden van Azure AD kunnen worden ingericht voor Azure SQL Database:

    • Systeemeigen leden: Een lid dat is gemaakt in Azure AD in het beheerde domein of in een klantdomein. Zie Uw eigen domeinnaam toevoegen aan Azure AD voor meer informatie.
    • Leden van een Active Directory-domein dat is ge federeerd met Azure Active Directory in een beheerd domein dat is geconfigureerd voor naadloze eengemaakte aanmelding met pass-through- of wachtwoordhashverificatie. Zie Voor meer informatie Microsoft Azure ondersteunt nu federatie met Windows Server Active Directory en Azure Active Directory Naadloze een aanmelding.
    • Geïmporteerde leden van andere Azure AD's die systeemeigen leden of leden van een federatief domein zijn.
    • Active Directory-groepen die zijn gemaakt als beveiligingsgroepen.
  • Azure AD-gebruikers die deel uitmaken van een groep met serverrol, kunnen de db_owner syntaxis CREATE DATABASE SCOPED CREDENTIAL niet gebruiken voor Azure SQL Database en Azure Synapse. U ziet de volgende fout:

    SQL Error [2760] [S0001]: The specified schema name 'user@mydomain.com' either does not exist or you do not have permission to use it.

    Verleen de rol db_owner rechtstreeks aan de individuele Azure AD-gebruiker om het probleem met CREATE DATABASE SCOPED CREDENTIAL te beperken.

  • Deze systeemfuncties retourneren NULL-waarden wanneer ze worden uitgevoerd onder Azure AD-principals:

    • SUSER_ID()
    • SUSER_NAME(<admin ID>)
    • SUSER_SNAME(<admin SID>)
    • SUSER_ID(<admin name>)
    • SUSER_SID(<admin name>)

SQL Managed Instance

  • Azure AD-server-principals (aanmeldingen) en gebruikers worden ondersteund voor SQL Managed Instance.
  • Het instellen van Azure AD-server-principals (aanmeldingen) als database-eigenaar aan een Azure AD-groep wordt niet ondersteund in SQL Managed Instance.
    • Een uitbreiding van dit is dat wanneer een groep wordt toegevoegd als onderdeel van de serverfunctie, gebruikers uit deze groep verbinding kunnen maken met het SQL Managed Instance en nieuwe databases kunnen maken, maar geen toegang hebben tot de dbcreator database. Dit komt doordat de nieuwe database-eigenaar SA is en niet de Azure AD-gebruiker. Dit probleem manifesteert zich niet als de afzonderlijke gebruiker wordt toegevoegd aan de dbcreator serverfunctie.
  • SQL Agentbeheer en het uitvoeren van taken worden ondersteund voor Azure AD-server-principals (aanmeldingen).
  • Database-back-up en herstelbewerkingen kunnen worden uitgevoerd door Azure AD-server-principals (aanmeldingen).
  • Controle van alle instructies met betrekking tot Azure AD-server-principals (aanmeldingen) en verificatiegebeurtenissen wordt ondersteund.
  • Toegewezen beheerdersverbinding voor Azure AD-server-principals (aanmeldingen) die lid zijn van de serverrol sysadmin wordt ondersteund.
    • Ondersteund via het HULPPROGRAMMA SQLCMD en SQL Server Management Studio.
  • Aanmeldingstriggers worden ondersteund voor aanmeldingsgebeurtenissen die afkomstig zijn van Azure AD-server-principal s(aanmeldingen).
  • Service Broker en DB-e-mail kunnen worden ingesteld met behulp van een Azure AD-server-principal (aanmelding).

Verbinding maken met Azure AD-identiteiten

Azure Active Directory-verificatie ondersteunt de volgende methoden om verbinding te maken met een database met behulp van Azure AD-identiteiten:

  • Azure Active Directory – wachtwoord
  • Azure Active Directory – geïntegreerd
  • Azure Active Directory Universeel met Multi-Factor Authentication
  • Verificatie van toepassingstoken gebruiken

De volgende verificatiemethoden worden ondersteund voor Azure AD-server-principals (aanmeldingen):

  • Azure Active Directory – wachtwoord
  • Azure Active Directory – geïntegreerd
  • Azure Active Directory Universeel met Multi-Factor Authentication

Aanvullende overwegingen

  • Voor een betere beheerbaarheid raden wij u aan een toegewezen Azure AD-groep in te richten als beheerder.
  • Er kan slechts één Azure AD-beheerder (een gebruiker of groep) op elk moment worden geconfigureerd voor een server in SQL Database of Azure Synapse server.
    • Door Azure AD-server-principals (aanmeldingen) voor SQL Managed Instance toe te voegen, kunt u meerdere Azure AD-server-principals (aanmeldingen) maken die aan de rol kunnen worden sysadmin toegevoegd.
  • Alleen een Azure AD-beheerder voor de server kan in eerste instantie verbinding maken met de server of het beheerde exemplaar met behulp van een Azure Active Directory account. De Active Directory-beheerder kan vervolgens nieuwe Azure AD-databasegebruikers configureren.
  • Azure AD-gebruikers en service-principals (Azure AD-toepassingen) die lid zijn van meer dan 2048 Azure AD-beveiligingsgroepen, worden niet ondersteund voor aanmelding bij de database in SQL Database, Managed Instance of Azure Synapse.
  • Het is raadzaam om de time-out voor de verbinding in te stellen op 30 seconden.
  • SQL Server 2016 Management Studio en SQL Server Data Tools voor Visual Studio 2015 (versie 14.0.60311.1 van april 2016 of later) ondersteunen Azure Active Directory-verificatie. (Azure AD-verificatie wordt ondersteund door de .NET Framework-gegevensprovider voor SqlServer; minimaal .NET Framework versie 4.6). Daarom kunnen de nieuwste versies van deze hulpprogramma's en gegevenslaagtoepassingen (DAC en BACPAC) gebruikmaken van Azure AD-verificatie.
  • Vanaf versie 15.0.1 ondersteunen het hulpprogramma sqlcmd en het BCP Active Directory Interactive Authentication met Multi-Factor Authentication.
  • SQL Server Data Tools voor Visual Studio 2015 vereist minimaal de versie van april 2016 van de hulpmiddelen voor gegevens (versie 14.0.60311.1). Momenteel worden Azure AD-gebruikers niet weergegeven in SSDT Objectverkenner. Als tijdelijke oplossing kunt u de gebruikers weergeven in sys.database_principals.
  • Microsoft JDBC Driver 6.0 voor SQL Server ondersteunt Azure AD-verificatie. Zie ook De verbindingseigenschappen instellen.
  • PolyBase kan niet worden geverifieerd met behulp van Azure AD-verificatie.
  • Azure AD-verificatie wordt ondersteund voor Azure SQL Database en Azure Synapse met behulp van Azure Portal blades Database importeren en Database exporteren. Importeren en exporteren met behulp van Azure AD-verificatie wordt ook ondersteund via een PowerShell-opdracht.
  • Azure AD-verificatie wordt ondersteund voor SQL Database, SQL Managed Instance en Azure Synapse met behulp van de CLI. Zie Azure AD-verificatie configureren en beheren met SQL Database of Azure Synapse en SQL Server - az sql server voor meer informatie.

Volgende stappen

  • Zie Azure Active Directory-verificatie configureren en beheren met SQL Database, SQL Managed Instance of Azure Synapse Azure Synapse voor meer informatie over het maken en vullen van een Azure AD-exemplaar en deze vervolgens configureren met Azure SQL Database, SQL Managed Instance of Azure Synapse.
  • Zie Azure AD-server-principals (aanmeldingen) met SQL Managed Instance voor een zelfstudie over het gebruik van Azure AD-server-principals (aanmeldingen) met SQL Managed Instance
  • Zie Aanmeldingen, gebruikers, databaserollenen machtigingen voor een overzicht van aanmeldingen, gebruikers, databaserollen en machtigingen in SQL Database.
  • Zie Principals voor meer informatie over database-principals.
  • Zie Databaserollen voor meer informatie over databaserollen.
  • Zie CREATE LOGINvoor de syntaxis voor het maken van Azure AD-server-principals (aanmeldingen) SQL Managed Instance.
  • Zie SQL Database-firewallregels voor meer informatie over de firewallregels in SQL Database.