Megosztás a következőn keresztül:


Microsoft Entra-hitelesítés engedélyezése azure-beli virtuális gépeken futó SQL Serverhez

A következőkre vonatkozik:SQL Server az Azure-beli virtuális gépeken

Ez a cikk bemutatja, hogyan engedélyezheti a hitelesítést a Microsoft Entra ID-val (korábbi nevén Azure Active Directory) az Azure-beli virtuális gépeken futó SQL Serverhez.

Note

Konfigurálható a Microsoft Entra-hitelesítés az SQL Server nem regisztrált példányaihoz , például ha több SQL Server-példánya van ugyanazon a virtuális gépen.

Overview

Az SQL Server 2022-től kezdve az alábbi Microsoft Entra hitelesítési módszerek egyikével csatlakozhat azure-beli virtuális gépeken futó SQL Serverhez:

  • Jelszó a Microsoft Entra hitelesítő adataival biztosít hitelesítést
  • Universal with MFA többtényezős hitelesítést vezet be
  • Az integrált az olyan összevonási szolgáltatókat használja, mint az Active Directory összevonási szolgáltatások (ADFS) az egyszeri bejelentkezés (SSO) engedélyezéséhez
  • Szolgáltatásnév engedélyezi az Azure-alkalmazásokból történő hitelesítést
  • Felügyelt identitás engedélyezi a Microsoft Entra-identitásokhoz rendelt alkalmazások hitelesítését

Amikor Microsoft Entra-bejelentkezést hoz létre az SQL Serverhez, és amikor egy felhasználó ezzel a bejelentkezéssel csatlakozik, az SQL Server felügyelt identitással kérdezi le a Microsoft Graphot. Ha engedélyezi a Microsoft Entra-hitelesítést az AZURE-beli virtuális gépen futó SQL Serverhez, meg kell adnia egy felügyelt identitást, amellyel az SQL Server kommunikálni tud a Microsoft Entra-azonosítóval. Ennek a felügyelt identitásnak rendelkeznie kell a Microsoft Graph lekérdezéséhez szükséges engedélyekkel.

Ha felügyelt identitást engedélyez egy azure-beli erőforráshoz, az identitás biztonsági határa az az erőforrás, amelyhez hozzá van csatolva. Például az olyan virtuális gép biztonsági határa, amelyen az Azure-erőforrások felügyelt identitása engedélyezve van, maga a virtuális gép. A virtuális gépen futó kódok meghívhatják a felügyelt identitások végpontját, és jogkivonatokat kérhetnek. Ha azure-beli virtuális gépeken engedélyezi az SQL Server felügyelt identitását, az identitás a virtuális géphez van csatolva, így a biztonsági határ a virtuális gép. A felhasználói élmény hasonló a felügyelt identitásokat támogató más erőforrásokkal való munkához. További információkért olvassa el a felügyelt identitásokkal kapcsolatos gyakori kérdéseket.

Az Azure-beli virtuális gépeken futó SQL Serverrel végzett Microsoft Entra-hitelesítéshez használt rendszer által hozzárendelt és felhasználó által hozzárendelt felügyelt identitások a következő előnyöket biztosítják:

  • A rendszer által hozzárendelt felügyelt identitás egyszerűsített konfigurációs folyamatot kínál. Mivel a felügyelt identitás élettartama megegyezik a virtuális gép élettartamával, a virtuális gép törlésekor nem szükséges külön törölni.
  • A felhasználó által hozzárendelt felügyelt identitás méretezhetőséget biztosít, mivel az Azure-beli virtuális gépeken futó SQL Server több példányához csatlakoztatható és használható a Microsoft Entra-hitelesítéshez.

A felügyelt identitások használatának megkezdéséhez tekintse át a felügyelt identitások konfigurálását az Azure Portalon.

Prerequisites

Ha engedélyezni szeretné a Microsoft Entra-hitelesítést az SQL Serveren, a következő előfeltételekre van szüksége:

Engedélyek megadása

Az SQL Server és a Microsoft Entra ID közötti hitelesítést megkönnyítő felügyelt identitásnak a következő három Microsoft Graph-alkalmazásengedélyrel (alkalmazásszerepkörrel) User.Read.Allkell rendelkeznie: és GroupMember.Read.AllApplication.Read.All.

Másik lehetőségként a felügyelt identitás Microsoft Entra Directory Readers szerepkörhöz való hozzáadása megfelelő engedélyeket biztosít. A címtárolvasói szerepkör felügyelt identitáshoz való hozzárendelésének másik módja, ha a Címtárolvasó szerepkört egy csoporthoz rendeli a Microsoft Entra ID-ban. A csoporttulajdonosok ezután hozzáadhatják a virtuális gép által felügyelt identitást a csoport tagjaként. Ez minimálisra csökkenti a Microsoft Entra szerepkörgazdák bevonását, és delegálja a felelősséget a csoporttulajdonosoknak.

Felügyelt identitás hozzáadása a szerepkörhöz

Ez a szakasz bemutatja, hogyan vehet fel felügyelt identitást a Címtárolvasók szerepkörbe a Microsoft Entra ID-ban. A címtárolvasók szerepkör-hozzárendeléseinek módosításához kiemelt szerepkör-rendszergazdai jogosultságokkal kell rendelkeznie. Ha nem rendelkezik megfelelő engedéllyel, a Microsoft Entra rendszergazdájával együttműködve kövesse ezeket a lépéseket.

A felügyelt identitás címtárolvasói szerepkörének megadásához kövesse az alábbi lépéseket:

  1. Nyissa meg a Microsoft Entra-azonosító szerepköröket és rendszergazdákat az Azure Portalon:

  2. Írja be a címtárolvasók kifejezést a keresőmezőbe, majd válassza ki a címtárolvasók szerepkört a címtárolvasók megnyitásához | Hozzárendelések lap:

    Képernyőkép az Azure Portal Szerepkörök és rendszergazdák lapjáról, a Címtárolvasók szerepkör megkereséséről és kiválasztásáról.

  3. A Címtárolvasók | Feladatok lapon kattintson a + Hozzárendelések hozzáadása opcióra, hogy megnyissa a Hozzárendelés hozzáadása lapot.

    Képernyőkép az Azure Portal Címtárolvasók oldaláról.

  4. A Hozzárendelések hozzáadása lapon válassza a Tagok kijelölése területen a Nincs kijelölt tag lehetőséget a Tag kiválasztása lap megnyitásához.

    Képernyőkép az Azure Portal hozzáadás oldaláról, amelyen a

  5. A Tag kiválasztása lapon keresse meg a használni kívánt SQL Server virtuális géphez tartozó felügyelt identitás nevét, majd adja hozzá a Címtárolvasók szerepkörhöz. Rendszer által hozzárendelt felügyelt identitások esetén keresse meg a virtuális gép nevét. A Kijelölés használatával erősítse meg az identitást, és lépjen vissza a Hozzárendelések hozzáadása lapra .

    Képernyőkép az Azure Portalon kiválasztandó tagok keresésével.

  6. Ellenőrizze, hogy a kiválasztott identitás megjelenik-e a Tagok kiválasztása területen , majd válassza a Tovább gombot.

    Képernyőkép az Azure Portal Hozzárendelés hozzáadása lapjáról, amelyen a VM2 hozzárendelésként van hozzáadva.

  7. Ellenőrizze, hogy a hozzárendelés típusa Aktív értékre van-e állítva, és a végleges hozzárendelés melletti jelölőnégyzet be van jelölve. Adjon meg egy üzleti indoklást, például adjon hozzá címtárolvasói szerepkör-engedélyeket a VM2 rendszer által hozzárendelt identitásához , majd válassza a Hozzárendelés lehetőséget a beállítások mentéséhez, és térjen vissza a címtárolvasókhoz | Hozzárendelések lap.

    Képernyőkép az Azure portal Hozzárendelés hozzáadása beállításairól.

  8. A Címtár olvasók | Hozzárendelések lapon ellenőrizze, hogy megjelenik-e az újonnan hozzáadott identitás a Címtár olvasók területen.

    Képernyőkép az Azure Portal Directory Readers oldaláról, amelyen a szerepkörhöz hozzáadott virtuális gép hozzárendelés látható.

Alkalmazásszerepkör-engedélyek hozzáadása

Az Azure PowerShell használatával alkalmazásszerepköröket adhat egy felügyelt identitásnak. Ehhez kövesse az alábbi lépéseket:

  1. Csatlakozás a Microsoft Graphhoz

    Connect-MgGraph -Scopes "AppRoleAssignment.ReadWrite.All" -TenantId "<tenant id>"
    
  2. A felügyelt identitás lekérése:

    $Graph_SP = Get-MgServicePrincipal -Filter "DisplayName eq 'Microsoft Graph'"
    $MSI = Get-MgServicePrincipal -Filter "displayName eq '<your managed identity display name>'"
    
  3. A szerepkör hozzárendelése User.Read.All az identitáshoz:

    $AAD_AppRole = $Graph_SP.AppRoles | Where-Object {$_.Value -eq "User.Read.All"}  
    New-MgServicePrincipalAppRoleAssignment -ServicePrincipalId $MSI.Id -BodyParameter @{principalId=$MSI.Id; resourceId=$Graph_SP.Id; appRoleId=$AAD_AppRole.Id}
    
  4. Az identitáshoz GroupMember.Read.All szerepkör hozzárendelése:

    $AAD_AppRole = $Graph_SP.AppRoles | Where-Object {$_.Value -eq "GroupMember.Read.All"}  
    New-MgServicePrincipalAppRoleAssignment -ServicePrincipalId $MSI.Id -BodyParameter @{principalId=$MSI.Id; resourceId=$Graph_SP.Id; appRoleId=$AAD_AppRole.Id}
    
  5. Az identitáshoz Application.Read.All szerepkör hozzárendelése:

    $AAD_AppRole = $Graph_SP.AppRoles | Where-Object {$_.Value -eq "Application.Read.All"}  
    New-MgServicePrincipalAppRoleAssignment -ServicePrincipalId $MSI.Id -BodyParameter @{principalId=$MSI.Id; resourceId=$Graph_SP.Id; appRoleId=$AAD_AppRole.Id}
    

A felügyelt identitáshoz rendelt engedélyeket az alábbi lépésekkel ellenőrizheti:

  1. Nyissa meg a Microsoft Entra-azonosítót az Azure Portalon.
  2. Válassza a Vállalati alkalmazások lehetőséget, majd válassza az Összes alkalmazáslehetőséget a Kezelés területen.
  3. Az alkalmazástípus szűrése a következő szerint Managed identities:
  4. Válassza ki a felügyelt identitást, majd válassza az Engedélyek lehetőséget a Biztonság területen. A következő engedélyeket kell látnod: User.Read.All, GroupMember.Read.All, Application.Read.All.

Kimenő kommunikáció engedélyezése

A Microsoft Entra-hitelesítés működéséhez a következőkre van szüksége:

  • Kimenő kommunikáció az SQL Serverről a Microsoft Entra-azonosítóval és a Microsoft Graph-végponttal.
  • Kimenő kommunikáció az SQL-ügyféltől a Microsoft Entra ID felé.

Az alapértelmezett Azure-beli virtuálisgép-konfigurációk lehetővé teszik a Kimenő kommunikációt a Microsoft Graph-végponttal és a Microsoft Entra-azonosítóval, de egyes felhasználók úgy döntenek, hogy az operációs rendszerszintű tűzfal vagy az Azure hálózati biztonsági csoport (NSG) használatával korlátozzák a kimenő kommunikációt.

Az SQL Server virtuális gép tűzfalainak és bármely SQL-ügyfélnek engedélyeznie kell a kimenő forgalmat a 80-as és a 443-as porton.

Az SQL Server virtuális gépet üzemeltető virtuális hálózat Azure-beli virtuális hálózati NSG-szabályának a következőkkel kell rendelkeznie:

  • Egy szolgáltatáscímke AzureActiveDirectory.
  • Célportok tartománya : 80, 443.
  • Művelet beállítása Engedélyezés értékre.
  • Fontos prioritás (ami egy alacsony szám).

Microsoft Entra-hitelesítés engedélyezése a regisztrált példány számára

Ha az SQL Server-példányt az SQL IaaS-ügynök bővítményével regisztrálja, engedélyezheti a Microsoft Entra-hitelesítést a regisztrált példányhoz az Azure Portal, az Azure CLI vagy a PowerShell használatával. Az Azure Portal vagy az Azure CLI használata a példány kezeléséhez csak az SQL Server regisztrált példányán támogatott.

Note

A Microsoft Entra-hitelesítés engedélyezése után az ebben a szakaszban ismertetett lépéseket követve frissítheti a konfigurációt egy másik felügyelt identitás használatára.

Ha engedélyezni szeretné a Microsoft Entra-hitelesítést az SQL Server virtuális gépen, kövesse az alábbi lépéseket:

  1. Navigáljon az SQL virtuális gépek erőforrásához az Azure Portalon.

  2. Válassza a Biztonsági konfiguráció lehetőséget a Biztonság területen.

  3. Válassza az Engedélyezés lehetőséget a Microsoft Entra-hitelesítés alatt.

  4. Válassza ki a felügyelt identitás típusát a legördülő menüből, akár rendszer által hozzárendelt , akár felhasználó által hozzárendelt. Ha a felhasználó által hozzárendelt identitást választja, válassza ki azt az identitást, amelyet az Azure-beli virtuális gépen az SQL Serveren szeretne hitelesíteni a felhasználó által hozzárendelt felügyelt identitás legördülő listából.

    Képernyőkép az SQL-alapú virtuális gép biztonsági konfigurációs oldaláról az Azure Portalon, amelyen a Microsoft Entra-hitelesítés van kiválasztva.

A Microsoft Entra-hitelesítés engedélyezése után ugyanazokat a lépéseket követve módosíthatja, hogy melyik felügyelt identitás hitelesíthető az SQL Server virtuális gépen.

Note

A hiba The selected managed identity does not have enough permissions for Microsoft Entra authentication azt jelzi, hogy az engedélyek nem lettek megfelelően hozzárendelve a kiválasztott identitáshoz. A megfelelő engedélyek hozzárendeléséhez tekintse meg az Engedélyek megadása szakaszt.

Microsoft Entra-hitelesítés engedélyezése nem regisztrált példányokhoz

Ha az SQL Server-példány nincs regisztrálva az SQL IaaS Agent bővítményben, például ha ugyanazon a virtuális gépen több SQL Server-példány is található, a PowerShell használatával engedélyezheti a Microsoft Entra-hitelesítést.

Engedélyezheti a Microsoft Entra-hitelesítést adott nem regisztrált példányokhoz vagy a virtuális gép összes példányához.

Note

Ha a Microsoft Entra-hitelesítést nem regisztrált példányokkal szeretné használni az Azure-beli virtuális gépeken futó SQL Serveren, legalább egy példányt regisztrálnia kell az SQL IaaS Agent bővítményben.

Ha a parancs használatával engedélyezi a Set-AzVMExtension -ExtensionName "SqlIaasExtension" Microsoft Entra-hitelesítést egy SQL Server-példányon, vegye figyelembe a következőket:

  • A felügyelt identitás engedélyeit csak akkor ellenőrzi a rendszer, ha a CheckPermissions paraméter értéke true.
  • Adja meg az identitásparaméter ClientID ügyfél-azonosítóját a felhasználó által hozzárendelt felügyelt identitás használatához. Ha a ClientID paraméter üres, a rendszer egy rendszer által hozzárendelt felügyelt identitást használ.
  • Adja meg a paraméterben található példányok listáját, amelyek lehetővé teszik a EnableForGivenInstances Microsoft Entra-hitelesítést bizonyos nem regisztrált példányok esetében. Ellenkező esetben a paraméter használatával engedélyezze a EnableForAllInstances Microsoft Entra-hitelesítést a virtuális gépen lévő összes nem regisztrált példány esetében.

Az alábbi példa lehetővé teszi a Microsoft Entra hitelesítést a virtuális gép összes példányához egy rendszer által hozzárendelt identitás használatával:

Set-AzVMExtension -ExtensionName "SqlIaasExtension" -ResourceGroupName $resourceGroupName -VMName $sqlVMName -Publisher "Microsoft.SqlServer.Management" -ExtensionType "SqlIaaSAgent" -TypeHandlerVersion 2.0 -Location $region -SettingString '{"ServerConfigurationsManagementSettings": {"AADAuthenticationSettings": {"ClientId":"", "EnableForAllInstances":true, "CheckPermissions":true}},"DeploymentTokenSettings":{"DeploymentToken":12345678}}'

Az alábbi példa engedélyezi a Microsoft Entra hitelesítést adott, nem regisztrált példányok esetében egy felhasználó által hozzárendelt identitás használatával:

Set-AzVMExtension -ExtensionName "SqlIaasExtension" -ResourceGroupName $resourceGroupName -VMName $sqlVMName -Publisher "Microsoft.SqlServer.Management" -ExtensionType "SqlIaaSAgent" -TypeHandlerVersion 2.0 -Location $region -SettingString '{"ServerConfigurationsManagementSettings": {"AADAuthenticationSettings": {"ClientId":$clientId, "EnableForGivenInstances":["MSSQLSERVER","MSSQLSERVER01"], "CheckPermissions":true}},"DeploymentTokenSettings":{"DeploymentToken":12345678}}'

Bejelentkezések és felhasználók létrehozása

Kövesse a Microsoft Entra oktatóanyag lépéseit a felügyelt identitáshoz tartozó bejelentkezések és felhasználók létrehozásához.

Csatlakozás az instanciához

Kövesse a Microsoft Entra oktatóanyag utasításait, hogy Microsoft Entra-hitelesítéssel csatlakozzon az SQL Server-példányhoz.

Limitations

Vegye figyelembe a következő korlátozásokat:

  • A Microsoft Entra-hitelesítést csak az SQL IaaS Agent bővítményben regisztrált Windows rendszerű virtuális gépeken futó SQL Server 2022 támogatja, amelyet bármely felhőben üzembe helyeznek.
  • A Microsoft Entra-hitelesítés Azure Portalon történő kezelése csak az SQL IaaS Agent bővítmény által támogatott példányok számára érhető el, például egy alapértelmezett példány vagy egyetlen elnevezett példány esetében. Az Azure CLI vagy a PowerShell használatával kezelheti a Microsoft Entra-hitelesítés azon további példányait az SQL Server virtuális gépen, amelyek nincsenek regisztrálva az SQL IaaS Agent bővítményben.
  • A Microsoft Entra-hitelesítés feladatátvevő fürtpéldányokkal való használata nem támogatott.
  • Az SQL Server-hitelesítéshez választott identitásnak rendelkeznie kell a Címtárolvasók szerepkörrel a Microsoft Entra-azonosítóban, vagy a következő három Microsoft Graph-alkalmazásengedélyrel (alkalmazásszerepkörök): User.Read.Allés GroupMember.Read.AllApplication.Read.All.
  • A Microsoft Entra-hitelesítés engedélyezése után nem lehet letiltani.
  • Jelenleg nem támogatott az SQL Serverre való hitelesítés Azure-beli virtuális gépeken a FIDO2 metódussal végzett Microsoft Entra-hitelesítéssel.

Következő lépések

Tekintse át az SQL Server biztonsági ajánlott eljárásait.

Az SQL Server Azure-beli virtuális gépeken való futtatásával kapcsolatos további cikkekért tekintse meg az Azure-beli virtuális gépeken futó SQL Server áttekintését. Ha kérdései vannak az SQL Server virtuális gépeivel kapcsolatban, tekintse meg a gyakori kérdéseket.

További információkért tekintse meg az ajánlott eljárásokat ismertető sorozat további cikkeit: