Použití Balíčku zabezpečení podniku ve službě HDInsight
Standardní cluster Azure HDInsight je cluster s jedním uživatelem. Je vhodný pro většinu společností, které mají menší aplikační týmy vytvářející velké datové úlohy. Každý uživatel může vytvořit vyhrazený cluster na vyžádání a zničit ho, když už ho nepotřebujete.
Mnoho podniků se přesunulo k modelu, ve kterém IT týmy spravují clustery a několik aplikačních týmů sdílí clustery. Tyto větší podniky potřebují přístup více uživatelů ke každému clusteru v Azure HDInsight.
HDInsight spoléhá na oblíbeného zprostředkovatele identity – Active Directory – spravovaným způsobem. Integrací služby HDInsight se službou Microsoft Entra Domain Services získáte přístup ke clusterům pomocí přihlašovacích údajů k doméně.
Virtuální počítače ve službě HDInsight jsou připojené k vaší poskytnuté doméně. Všechny služby spuštěné v HDInsight (Apache Ambari, server Apache Hive, Apache Ranger, Apache Spark thrift server a další) tedy bezproblémově fungují pro ověřeného uživatele. Správci pak můžou vytvořit silné zásady autorizace pomocí Apache Rangeru, aby zajistili řízení přístupu na základě role pro prostředky v clusteru.
Integrace služby HDInsight s Active Directory
Open source Apache Hadoop spoléhá na protokol Kerberos pro ověřování a zabezpečení. Uzly clusteru HDInsight s balíčkem zabezpečení podniku (ESP) jsou proto připojené k doméně spravované službou Microsoft Entra Domain Services. Zabezpečení protokolu Kerberos je nakonfigurováno pro komponenty Systému Hadoop v clusteru.
Automaticky se vytvoří následující věci:
- Instanční objekt pro každou komponentu Hadoop
- Objekt zabezpečení počítače pro každý počítač připojený k doméně
- Organizační jednotka (OU) pro každý cluster pro ukládání těchto instančních objektů a objektů zabezpečení počítačů
Pokud chcete shrnout, musíte nastavit prostředí pomocí:
- Doména služby Active Directory (spravovaná službou Microsoft Entra Domain Services). Aby bylo možné pracovat se službou Azure HDInsight, musí mít název domény 39 znaků nebo méně.
- Protokol LDAP (Secure LDAPS) je povolený ve službě Microsoft Entra Domain Services.
- Správné síťové připojení z virtuální sítě HDInsight k virtuální síti Microsoft Entra Domain Services, pokud pro ně zvolíte samostatné virtuální sítě. Virtuální počítač uvnitř virtuální sítě HDInsight by měl mít přehled o službě Microsoft Entra Domain Services prostřednictvím partnerského vztahu virtuálních sítí. Pokud jsou služba HDInsight a Microsoft Entra Domain Services nasazené ve stejné virtuální síti, připojení se automaticky poskytuje a nevyžaduje se žádná další akce.
Nastavení různých řadičů domény
HDInsight v současné době podporuje pouze službu Microsoft Entra Domain Services jako hlavní řadič domény, který cluster používá ke komunikaci protokolu Kerberos. Další složitá nastavení služby Active Directory jsou ale možná, pokud takové nastavení vede k povolení přístupu ke službě Microsoft Entra Domain Services pro přístup ke službě HDInsight.
Microsoft Entra Domain Services
Služba Microsoft Entra Domain Services poskytuje spravovanou doménu, která je plně kompatibilní se službou Windows Server Active Directory. Microsoft se stará o správu, opravy a monitorování domény v nastavení s vysokou dostupností (HA). Cluster můžete nasadit bez obav o údržbu řadičů domény.
Uživatelé, skupiny a hesla se synchronizují z ID Microsoft Entra. Jednosměrná synchronizace z vaší instance Microsoft Entra do služby Microsoft Entra Domain Services umožňuje uživatelům přihlásit se ke clusteru pomocí stejných podnikových přihlašovacích údajů.
Další informace naleznete v tématu Konfigurace clusterů HDInsight s ESP pomocí služby Microsoft Entra Domain Services.
Místní služba Active Directory nebo Active Directory na virtuálních počítačích IaaS.
Pokud máte pro svoji doménu místní Active Directory instanci nebo složitější nastavení služby Active Directory, můžete tyto identity synchronizovat s MICROSOFT Entra ID pomocí služby Microsoft Entra Connect. V daném tenantovi služby Active Directory pak můžete povolit službu Microsoft Entra Domain Services.
Vzhledem k tomu, že Kerberos spoléhá na hodnoty hash hesel, musíte povolit synchronizaci hodnot hash hesel ve službě Microsoft Entra Domain Services.
Pokud používáte federaci s Active Directory Federation Services (AD FS) (AD FS), musíte povolit synchronizaci hodnot hash hesel. (Doporučené nastavení najdete v tomto videu.) Synchronizace hodnothashchm dat pomáhá při zotavení po havárii v případě selhání infrastruktury služby AD FS a pomáhá také zajistit ochranu před únikem přihlašovacích údajů. Další informace naleznete v tématu Povolení synchronizace hodnot hash hesel se službou Microsoft Entra Connect Sync.
Pokud používáte místní Active Directory nebo Active Directory na samotných virtuálních počítačích IaaS bez ID Microsoft Entra a Služby Microsoft Entra Domain Services, není podporovaná konfigurace pro clustery HDInsight s ESP.
Poznámka:
Moduly Azure AD a MSOnline PowerShell jsou od 30. března 2024 zastaralé. Další informace najdete v aktualizaci vyřazení. Po tomto datu je podpora těchto modulů omezená na pomoc s migrací na sadu Microsoft Graph PowerShell SDK a opravy zabezpečení. Zastaralé moduly budou dál fungovat až do 30. března 2025.
Doporučujeme migrovat na Microsoft Graph PowerShell , abyste mohli pracovat s Microsoft Entra ID (dříve Azure AD). Běžné dotazy k migraci najdete v nejčastějších dotazech k migraci. Poznámka: Verze 1.0.x msOnline mohou dojít k přerušení po 30. červnu 2024.
Pokud používáte federaci a hodnoty hash hesel se správně synchronizují, ale dochází k selhání ověřování, zkontrolujte, jestli je pro instanční objekt PowerShellu povolené cloudové ověřování heslem. Pokud ne, musíte pro svého tenanta Microsoft Entra nastavit zásady zjišťování domovské sféry (HRD). Kontrola a nastavení zásad HRD:
Nainstalujte modul Azure AD PowerShell ve verzi Preview.
Install-Module AzureAD
Připojte se pomocí přihlašovacích údajů správcehybridní identity.
Connect-AzureAD
Zkontrolujte, jestli už je vytvořený instanční objekt Microsoft Azure PowerShellu.
Get-AzureADServicePrincipal -SearchString "Microsoft Azure PowerShell"
Pokud neexistuje, vytvořte instanční objekt.
$powershellSPN = New-AzureADServicePrincipal -AppId 1950a258-227b-4e31-a9cf-717495945fc2
Vytvořte a připojte zásadu k tomuto instančnímu objektu.
# Determine whether policy exists Get-AzureADPolicy | Where {$_.DisplayName -eq "EnableDirectAuth"} # Create if not exists $policy = New-AzureADPolicy ` -Definition @('{"HomeRealmDiscoveryPolicy":{"AllowCloudPasswordValidation":true}}') ` -DisplayName "EnableDirectAuth" ` -Type "HomeRealmDiscoveryPolicy" # Determine whether a policy for the service principal exist Get-AzureADServicePrincipalPolicy ` -Id $powershellSPN.ObjectId # Add a service principal policy if not exist Add-AzureADServicePrincipalPolicy ` -Id $powershellSPN.ObjectId ` -refObjectID $policy.ID