Konfigurace vztahu důvěryhodnosti cloudu mezi místní službou AD DS a ID Microsoft Entra pro přístup ke službě Azure Files

Mnoho organizací chce pro sdílené složky SMB Azure používat ověřování založené na identitách v prostředích, která zahrnují službu místní Active Directory Domain Services (AD DS) i Microsoft Entra ID (dříve Azure Active Directory), ale nesplňuje nezbytné požadavky na operační systém nebo doménu.

V takových scénářích můžou zákazníci povolit ověřování protokolem Microsoft Entra Kerberos pro hybridní identity uživatelů a pak vytvořit cloudový vztah důvěryhodnosti mezi místními službami AD DS a MICROSOFT Entra ID pro přístup ke sdíleným složkám SMB pomocí místních přihlašovacích údajů. Tento článek vysvětluje, jak funguje důvěryhodnost cloudu, a obsahuje pokyny k nastavení a ověření. Zahrnuje také postup obměna klíče Kerberos pro váš účet služby v Microsoft Entra ID a důvěryhodném objektu domény a kroky k odebrání objektu důvěryhodné domény a všechna nastavení kerberos, pokud je to potřeba.

Tento článek se zaměřuje na ověřování identit hybridních uživatelů, což jsou místní identity služby AD DS, které se synchronizují s Microsoft Entra ID pomocí cloudové synchronizace Microsoft Entra Connect nebo Microsoft Entra Connect. Pro Azure Files se v současné době nepodporují jenom cloudové identity.

Platí pro

Typ sdílené složky SMB NFS
Sdílené složky úrovně Standard (GPv2), LRS/ZRS Yes No
Sdílené složky úrovně Standard (GPv2), GRS/GZRS Yes No
Sdílené složky úrovně Premium (FileStorage), LRS/ZRS Yes No

Scénáře

Tady jsou příklady scénářů, ve kterých můžete chtít nakonfigurovat vztah důvěryhodnosti cloudu:

  • Máte tradiční místní službu AD DS, ale nemůžete ji použít k ověřování, protože nemáte nešimované síťové připojení k řadičům domény.

  • Začali jste migrovat do cloudu, ale aktuálně máte aplikace stále spuštěné v tradiční místní službě AD DS.

  • Některé nebo všechny klientské počítače nesplňují požadavky na operační systém pro ověřování Microsoft Entra Kerberos.

Oprávnění

K dokončení kroků uvedených v tomto článku budete potřebovat:

  • Uživatelské jméno a heslo správce místní Active Directory
  • Uživatelské jméno a heslo účtu globálního správce Microsoft Entra

Požadavky

Před implementací příchozího toku ověřování na základě důvěryhodnosti se ujistěte, že jsou splněny následující požadavky:

Předpoklad Popis
Na klientech musí být Windows 10, Windows Server 2012 nebo novější verze Windows.
Klienti musí být připojení ke službě Active Directory (AD). Doména musí mít funkční úroveň Windows Serveru 2012 nebo novějšího. Pokud chcete zjistit, jestli je klient připojený k AD, můžete spustit příkaz dsregcmd: dsregcmd.exe /status
Tenant Microsoft Entra. Tenant Microsoft Entra je hranice zabezpečení identity, která je pod kontrolou IT oddělení vaší organizace. Jedná se o instanci ID Microsoft Entra, ve kterém se nacházejí informace o jedné organizaci.
Předplatné Azure ve stejném tenantovi Microsoft Entra, které plánujete použít k ověřování.
Účet úložiště Azure v předplatném Azure. Účet úložiště Azure je prostředek, který funguje jako kontejner pro seskupení všech datových služeb ze služby Azure Storage, včetně souborů.
Musí být nainstalována synchronizace cloudu Microsoft Entra Connect nebo Microsoft Entra Connect. Tato řešení se používají v hybridních prostředích , kde identity existují jak v Microsoft Entra ID, tak v místní službě AD DS.

Povolení ověřování protokolem Kerberos microsoft Entra

Pokud jste ve svém účtu úložiště už povolili ověřování protokolem Microsoft Entra Kerberos, můžete tento krok přeskočit a pokračovat vytvořením a konfigurací objektu důvěryhodné domény protokolu Microsoft Entra Kerberos.

Ověřování Microsoft Entra Kerberos ve službě Azure Files můžete povolit pro hybridní uživatelské účty pomocí webu Azure Portal, PowerShellu nebo Azure CLI.

Pokud chcete povolit ověřování Microsoft Entra Kerberos pomocí webu Azure Portal, postupujte takto.

  1. Přihlaste se k webu Azure Portal a vyberte účet úložiště, pro který chcete povolit ověřování microsoft Entra Kerberos.

  2. V části Úložiště dat vyberte Sdílené složky.

  3. Vedle služby Active Directory vyberte stav konfigurace (například Nenakonfigurováno).

    Snímek obrazovky webu Azure Portal zobrazující nastavení sdílené složky pro účet úložiště Jsou vybrána nastavení konfigurace služby Active Directory.

  4. V části Microsoft Entra Kerberos vyberte Nastavit.

  5. Zaškrtněte políčko Microsoft Entra Kerberos .

    Snímek obrazovky webu Azure Portal zobrazující nastavení konfigurace služby Active Directory pro účet úložiště Je vybrána možnost Microsoft Entra Kerberos.

  6. Volitelné: Pokud chcete nakonfigurovat oprávnění na úrovni adresáře a souboru prostřednictvím windows Průzkumník souborů, musíte zadat název domény a identifikátor GUID domény pro místní službu AD. Tyto informace můžete získat od správce domény nebo spuštěním následující rutiny Prostředí Active Directory PowerShell z místního klienta připojeného k AD: Get-ADDomain Název vaší domény by měl být uvedený ve výstupu DNSRoot pod položkou a váš identifikátor GUID domény by měl být uvedený v části ObjectGUID. Pokud byste raději pomocí seznamu icacls nakonfigurovali oprávnění adresáře a souboru, můžete tento krok přeskočit. Pokud ale chcete použít icacls, klient bude potřebovat nešimnuté síťové připojení k místní službě AD.

  7. Zvolte Uložit.

Upozorňující

Pokud jste dříve povolili ověřování protokolem Microsoft Entra Kerberos prostřednictvím ručních kroků ve verzi Preview pro ukládání profilů FSLogix na virtuálních počítačích připojených k Microsoft Entra, heslo instančního objektu účtu úložiště vyprší každých šest měsíců. Po vypršení platnosti hesla uživatelé nebudou moct získat lístky Kerberos do sdílené složky. Pokud chcete tento problém zmírnit, přečtěte si téma Chyba – Platnost hesla instančního objektu vypršela v Microsoft Entra ID v části Potenciální chyby při povolování ověřování protokolem Kerberos Microsoft Entra pro hybridní uživatele.

Po povolení ověřování Microsoft Entra Kerberos budete muset explicitně udělit souhlas správce s novou aplikací Microsoft Entra zaregistrovanou ve vašem tenantovi Microsoft Entra. Tento instanční objekt se automaticky vygeneruje a nepoužívá se k autorizaci sdílené složky, takže neprodávejte žádné úpravy instančního objektu, který je zde zdokumentovaný. Pokud to uděláte, může se zobrazit chyba.

Oprávnění rozhraní API můžete nakonfigurovat na webu Azure Portal pomocí následujícího postupu:

  1. Otevřete Microsoft Entra ID.
  2. V nabídce služby v části Spravovat vyberte Registrace aplikací.
  3. Vyberte Všechny aplikace.
  4. Vyberte aplikaci s odpovídajícím názvem [Účet úložiště] <your-storage-account-name>.file.core.windows.net.
  5. V nabídce služby v části Spravovat vyberte oprávnění rozhraní API.
  6. Výběrem možnosti Udělit souhlas správce pro [Název adresáře] udělte souhlas pro tři požadovaná oprávnění rozhraní API (openid, profile a User.Read) pro všechny účty v adresáři.
  7. Potvrďte výběrem možnosti Ano.

Důležité

Pokud se připojujete k účtu úložiště prostřednictvím privátního koncového bodu nebo privátního propojení pomocí ověřování Microsoft Entra Kerberos, budete také muset přidat plně kvalifikovaný název domény privátního propojení do aplikace Microsoft Entra účtu úložiště. Pokyny najdete v našem průvodci odstraňováním potíží.

Zakázání vícefaktorového ověřování v účtu úložiště

Protokol Microsoft Entra Kerberos nepodporuje přístup ke sdíleným složkám Azure nakonfigurovaným protokolem Microsoft Entra Kerberos pomocí vícefaktorového ověřování. Pokud se vztahují na všechny aplikace, musíte vyloučit aplikaci Microsoft Entra představující váš účet úložiště ze zásad podmíněného přístupu vícefaktorového ověřování.

Aplikace účtu úložiště by měla mít stejný název jako účet úložiště v seznamu vyloučení podmíněného přístupu. Při hledání aplikace účtu úložiště v seznamu vyloučení podmíněného přístupu vyhledejte: [Účet úložiště] <your-storage-account-name>.file.core.windows.net

Nezapomeňte nahradit <your-storage-account-name> správnou hodnotou.

Důležité

Pokud zásady vícefaktorového ověřování z aplikace účtu úložiště nevyloučíte, nebudete mít přístup ke sdílené složce. Při pokusu o mapování sdílené složky pomocí net use se zobrazí chybová zpráva "Systémová chyba 1327: Omezení účtu brání tomuto uživateli v přihlášení. Například: Prázdná hesla nejsou povolená, časy přihlášení jsou omezené nebo se vynutí omezení zásad.

Pokyny k zakázání vícefaktorového ověřování najdete v následujících tématech:

Přiřazení oprávnění na úrovni sdílené složky

Když povolíte přístup založený na identitě, musíte pro každou sdílenou složku přiřadit, kteří uživatelé a skupiny mají k této konkrétní sdílené složce přístup. Jakmile má uživatel nebo skupina povolený přístup ke sdílené složce, převezmou seznamy ACL systému Windows (označované také jako oprávnění NTFS) u jednotlivých souborů a adresářů. To umožňuje jemně odstupňovanou kontrolu nad oprávněními, podobně jako sdílená složka SMB na windows serveru.

Pokud chcete nastavit oprávnění na úrovni sdílené složky, postupujte podle pokynů v části Přiřazení oprávnění na úrovni sdílené složky identitě.

Konfigurace oprávnění na úrovni adresáře a souboru

Jakmile jsou oprávnění na úrovni sdílené složky nastavená, můžete uživateli nebo skupině přiřadit oprávnění na úrovni adresáře nebo souboru. To vyžaduje použití zařízení s nempedovaným síťovým připojením k místní službě AD.

Pokud chcete nakonfigurovat oprávnění na úrovni adresáře a souborů, postupujte podle pokynů v tématu Konfigurace oprávnění adresáře a souborů přes protokol SMB.

Vytvoření a konfigurace objektu důvěryhodné domény protokolu Microsoft Entra Kerberos

K vytvoření a konfiguraci objektu důvěryhodné domény protokolu Microsoft Entra Kerberos použijete modul PowerShellu pro správu hybridního ověřování Azure AD. Tento modul umožňuje organizacím hybridní identity používat pro své aplikace moderní přihlašovací údaje a umožňuje, aby se ID Microsoft Entra stalo důvěryhodným zdrojem pro cloudové i místní ověřování.

Nastavení objektu důvěryhodné domény

Modul PowerShellu pro správu hybridního ověřování Azure AD použijete k nastavení důvěryhodného objektu domény v místní doméně AD a registraci informací o důvěryhodnosti v Microsoft Entra ID. Tím se vytvoří vztah důvěryhodnosti vázaný do místní služby AD, která umožňuje službě Microsoft Entra ID důvěřovat místní službě AD.

Objekt důvěryhodné domény musíte nastavit jenom jednou pro každou doménu. Pokud jste to už udělali pro svoji doménu, můžete tuto část přeskočit a pokračovat v konfiguraci klientů pro načtení lístků Protokolu Kerberos.

Instalace modulu PowerShellu pro hybridní ověřování Azure AD

  1. Spusťte relaci Windows PowerShellu s možností Spustit jako správce .

  2. Pomocí následujícího skriptu nainstalujte modul PowerShellu pro správu hybridního ověřování Azure AD. Tento skript:

    • Povolí komunikaci pomocí protokolu TLS 1.2.
    • Nainstaluje zprostředkovatele balíčku NuGet.
    • Zaregistruje úložiště PSGallery.
    • Nainstaluje modul PowerShellGet.
    • Nainstaluje modul PowerShellu pro správu hybridního ověřování Azure AD.
      • Azure AD Hybrid Authentication Management PowerShell používá modul AzureADPreview, který poskytuje pokročilé funkce správy Microsoft Entra.
      • Pokud chcete chránit před zbytečnými konflikty instalace s modulem Azure AD PowerShell, zahrnuje -AllowClobber tento příkaz příznak možnosti.
[Net.ServicePointManager]::SecurityProtocol = [Net.SecurityProtocolType]::Tls12

Install-PackageProvider -Name NuGet -Force

if (@(Get-PSRepository | ? {$_.Name -eq "PSGallery"}).Count -eq 0){
    Register-PSRepository -DefaultSet-PSRepository -Name "PSGallery" -InstallationPolicy Trusted
}

Install-Module -Name PowerShellGet -Force

Install-Module -Name AzureADHybridAuthenticationManagement -AllowClobber

Vytvoření objektu důvěryhodné domény

  1. Spusťte relaci Windows PowerShellu s možností Spustit jako správce .

  2. Nastavte společné parametry. Před spuštěním upravte následující skript.

    • $domain Nastavte parametr na název domény místní Active Directory.
    • Po zobrazení výzvy Get-Credentialzadejte uživatelské jméno a heslo správce místní Active Directory.
    • $cloudUserName Nastavte parametr na uživatelské jméno privilegovaného účtu globálního správce pro přístup ke cloudu Microsoft Entra.

    Poznámka:

    Pokud chcete pro přístup k místní Active Directory použít svůj aktuální přihlašovací účet Windows, můžete přeskočit krok, ve kterém jsou k parametru $domainCred přiřazeny přihlašovací údaje. Pokud tento přístup provedete, nezahrnujte parametr -DomainCredential do příkazů PowerShellu, které následují v tomto kroku.

    $domain = "your on-premesis domain name, for example contoso.com"
    
    $domainCred = Get-Credential
    
    $cloudUserName = "Azure AD user principal name, for example admin@contoso.onmicrosoft.com"
    
  3. Zkontrolujte aktuální nastavení domény Kerberos.

    Spuštěním následujícího příkazu zkontrolujte aktuální nastavení protokolu Kerberos vaší domény:

    Get-AzureAdKerberosServer -Domain $domain `
        -DomainCredential $domainCred `
        -UserPrincipalName $cloudUserName
    

    Pokud se jedná o první volání jakéhokoli příkazu Microsoft Entra Kerberos, zobrazí se výzva k přístupu ke cloudu Microsoft Entra.

    • Zadejte heslo pro účet globálního správce Microsoft Entra.
    • Pokud vaše organizace používá jiné moderní metody ověřování, jako je vícefaktorové ověřování Microsoft Entra nebo čipová karta, postupujte podle pokynů požadovaných pro přihlášení.

    Pokud konfigurujete nastavení protokolu Microsoft Entra Kerberos poprvé, zobrazí rutina Get-AzureAdKerberosServer prázdné informace, jako v následujícím ukázkovém výstupu:

    ID                  :
    UserAccount         :
    ComputerAccount     :
    DisplayName         :
    DomainDnsName       :
    KeyVersion          :
    KeyUpdatedOn        :
    KeyUpdatedFrom      :
    CloudDisplayName    :
    CloudDomainDnsName  :
    CloudId             :
    CloudKeyVersion     :
    CloudKeyUpdatedOn   :
    CloudTrustDisplay   :
    

    Pokud vaše doména už podporuje ověřování FIDO, zobrazí rutina Get-AzureAdKerberosServer informace o účtu služby Microsoft Entra, jako v následujícím ukázkovém výstupu. Pole CloudTrustDisplay vrátí prázdnou hodnotu.

    ID                  : XXXXX
    UserAccount         : CN=krbtgt-AzureAD, CN=Users, DC=contoso, DC=com
    ComputerAccount     : CN=AzureADKerberos, OU=Domain Controllers, DC=contoso, DC=com
    DisplayName         : XXXXXX_XXXXX
    DomainDnsName       : contoso.com
    KeyVersion          : 53325
    KeyUpdatedOn        : 2/24/2024 9:03:15 AM
    KeyUpdatedFrom      : ds-aad-auth-dem.contoso.com
    CloudDisplayName    : XXXXXX_XXXXX
    CloudDomainDnsName  : contoso.com
    CloudId             : XXXXX
    CloudKeyVersion     : 53325
    CloudKeyUpdatedOn   : 2/24/2024 9:03:15 AM
    CloudTrustDisplay   :
    
  4. Přidejte objekt důvěryhodné domény.

    Spuštěním rutiny Set-AzureAdKerberosServer PowerShell přidejte objekt důvěryhodné domény. Nezapomeňte zahrnout -SetupCloudTrust parametr. Pokud neexistuje žádný účet služby Microsoft Entra, tento příkaz vytvoří nový účet služby Microsoft Entra. Tento příkaz vytvoří požadovaný objekt důvěryhodné domény pouze v případě, že existuje účet služby Microsoft Entra.

    Set-AzureADKerberosServer -Domain $domain -UserPrincipalName $cloudUserName -DomainCredential $domainCred -SetupCloudTrust
    

    Poznámka:

    Pokud chcete zabránit chybě LsaCreateTrustedDomainEx 0x549 při spuštění příkazu v podřízené doméně, v doménové struktuře s více doménami:

    1. Spusťte příkaz v kořenové doméně (parametr include -SetupCloudTrust ).
    2. Spusťte stejný příkaz v podřízené doméně bez parametru -SetupCloudTrust .

    Po vytvoření důvěryhodného objektu domény můžete pomocí rutiny PowerShellu Get-AzureAdKerberosServer zkontrolovat aktualizované nastavení protokolu Kerberos, jak je znázorněno v předchozím kroku. Pokud se Set-AzureAdKerberosServer rutina úspěšně spustila s parametrem -SetupCloudTrust , CloudTrustDisplay mělo by se pole vrátit Microsoft.AzureAD.Kdc.Service.TrustDisplay, jako v následujícím ukázkovém výstupu:

    ID                  : XXXXX
    UserAccount         : CN=krbtgt-AzureAD, CN=Users, DC=contoso, DC=com
    ComputerAccount     : CN=AzureADKerberos, OU=Domain Controllers, DC=contoso, DC=com
    DisplayName         : XXXXXX_XXXXX
    DomainDnsName       : contoso.com
    KeyVersion          : 53325
    KeyUpdatedOn        : 2/24/2024 9:03:15 AM
    KeyUpdatedFrom      : ds-aad-auth-dem.contoso.com
    CloudDisplayName    : XXXXXX_XXXXX
    CloudDomainDnsName  : contoso.com
    CloudId             : XXXXX
    CloudKeyVersion     : 53325
    CloudKeyUpdatedOn   : 2/24/2024 9:03:15 AM
    CloudTrustDisplay   : Microsoft.AzureAD.Kdc.Service.TrustDisplay
    

    Poznámka:

    Suverénní cloudy Azure vyžadují nastavení TopLevelNames vlastnosti, která je ve výchozím nastavení nastavená windows.net . Nasazení suverénního cloudu Azure spravované instance SQL používají jiný název domény nejvyšší úrovně, například usgovcloudapi.net pro Azure US Government. Nastavte důvěryhodný objekt domény na název domény nejvyšší úrovně pomocí následujícího příkazu PowerShellu: Set-AzureADKerberosServer -Domain $domain -DomainCredential $domainCred -CloudCredential $cloudCred -SetupCloudTrust -TopLevelNames "usgovcloudapi.net,windows.net" Nastavení můžete ověřit pomocí následujícího příkazu PowerShellu: Get-AzureAdKerberosServer -Domain $domain -DomainCredential $domainCred -UserPrincipalName $cloudUserName | Select-Object -ExpandProperty CloudTrustDisplay.

Konfigurace klientů pro načtení lístků Kerberos

Identifikujte ID tenanta Microsoft Entra a pomocí zásad skupiny nakonfigurujte klientské počítače, ze kterých chcete připojit nebo používat sdílené složky Azure. Musíte to udělat u každého klienta, na kterém se budou používat soubory Azure.

Nakonfigurujte tuto zásadu skupiny na klientech na Povoleno: Administrative Templates\System\Kerberos\Allow retrieving the Azure AD Kerberos Ticket Granting Ticket during logon

  1. Pomocí příchozího toku založeného na důvěryhodnosti nasaďte následující nastavení zásad skupiny do klientských počítačů:

    1. Upravte šablony pro správu\System\Kerberos\Zadat proxy servery KDC pro nastavení zásad klientů Kerberos.

    2. Vyberte Povoleno.

    3. V části Možnosti vyberte Zobrazit.... Otevře se dialogové okno Zobrazit obsah.

      Snímek obrazovky s dialogovým oknem pro povolení zadání proxy serverů KDC pro klienty Kerberos Dialogové okno Zobrazit obsah umožňuje vstup názvu hodnoty a související hodnoty.

    4. Nastavení proxy serverů KDC definujte pomocí mapování následujícím způsobem. Zástupný symbol nahraďte ID your_Azure_AD_tenant_id tenanta Microsoft Entra. Všimněte si následující https mezery a před uzavřením / v mapování hodnot.

      Název hodnoty Hodnota
      KERBEROS.MICROSOFTONLINE.COM <https login.microsoftonline.com:443:your_Azure_AD_tenant_id/kerberos />

      Snímek obrazovky s dialogovým oknem Definovat nastavení proxy serveru KDC Tabulka umožňuje vstup více řádků. Každý řádek se skládá z názvu hodnoty a hodnoty.

    5. Kliknutím na tlačítko OK zavřete dialogové okno Zobrazit obsah.

    6. V dialogovém okně Zadat proxy servery KDC pro klienty Kerberos vyberte Použít .

Otočení klíče Kerberos

Pro účely správy můžete pravidelně obměňovat klíč Kerberos pro vytvořený účet služby Microsoft Entra a důvěryhodný objekt domény.

Set-AzureAdKerberosServer -Domain $domain `
   -DomainCredential $domainCred `
   -UserPrincipalName $cloudUserName -SetupCloudTrust `
   -RotateServerKey

Po obměně klíče trvá několik hodin, než se změněný klíč rozšíří mezi servery KDC protokolu Kerberos. Vzhledem k tomuto načasování distribuce klíčů můžete klíč otočit jednou za 24 hodin. Pokud potřebujete klíč znovu otočit do 24 hodin z jakéhokoli důvodu, například hned po vytvoření důvěryhodného objektu -Force domény, můžete přidat parametr:

Set-AzureAdKerberosServer -Domain $domain `
   -DomainCredential $domainCred `
   -UserPrincipalName $cloudUserName -SetupCloudTrust `
   -RotateServerKey -Force

Odebrání objektu důvěryhodné domény

Přidaný objekt důvěryhodné domény můžete odebrat pomocí následujícího příkazu:

Remove-AzureADKerberosServerTrustedDomainObject -Domain $domain `
   -DomainCredential $domainCred `
   -UserPrincipalName $cloudUserName

Tento příkaz odebere pouze objekt důvěryhodné domény. Pokud vaše doména podporuje ověřování FIDO, můžete odebrat důvěryhodný objekt domény při zachování účtu služby Microsoft Entra vyžadovaný pro ověřovací službu FIDO.

Odebrat všechna nastavení protokolu Kerberos

Účet služby Microsoft Entra i objekt důvěryhodné domény můžete odebrat pomocí následujícího příkazu:

Remove-AzureAdKerberosServer -Domain $domain `
   -DomainCredential $domainCred `
   -UserPrincipalName $cloudUserName

Další krok