Enterprise Security Package használata a HDInsightUse Enterprise Security Package in HDInsight

A standard Azure HDInsight-fürt egyetlen felhasználóból álló fürt.The standard Azure HDInsight cluster is a single-user cluster. Ez a legtöbb vállalat számára megfelelő, akik kisebb méretű alkalmazásokkal dolgoznak ki nagy mennyiségű adatszámítási feladatot.It's suitable for most companies that have smaller application teams building large data workloads. Minden felhasználó igény szerint létrehozhat egy dedikált fürtöt, és megsemmisítheti azt, ha már nincs rá szükség.Each user can create a dedicated cluster on demand and destroy it when it's not needed anymore.

Számos vállalat egy olyan modell felé mozdult el, amelyben az informatikai csapatok kezelik a fürtöket, és több alkalmazás-csapat osztozik a fürtökön.Many enterprises have moved toward a model in which IT teams manage clusters, and multiple application teams share clusters. Ezeknek a nagyobb vállalatoknak többfelhasználós hozzáféréssel kell rendelkezniük az egyes fürtökhöz az Azure HDInsight-ben.These larger enterprises need multiuser access to each cluster in Azure HDInsight.

A HDInsight egy népszerű identitás-szolgáltatóra támaszkodik – Active Directory – felügyelt módon.HDInsight relies on a popular identity provider--Active Directory--in a managed way. A HDInsight és a Azure Active Directory Domain Services (Azure AD DS)integrálásával a tartomány hitelesítő adataival érheti el a fürtöket.By integrating HDInsight with Azure Active Directory Domain Services (Azure AD DS), you can access the clusters by using your domain credentials.

A HDInsight lévő virtuális gépek (VM-EK) tartományhoz csatlakoznak a megadott tartományhoz.The virtual machines (VMs) in HDInsight are domain joined to your provided domain. Így a HDInsight futó összes szolgáltatás (Apache Ambari, Apache Hive Server, Apache Ranger, Apache Spark takarékosság-kiszolgáló és mások) zökkenőmentesen működik a hitelesített felhasználó számára.So, all the services running on HDInsight (Apache Ambari, Apache Hive server, Apache Ranger, Apache Spark thrift server, and others) work seamlessly for the authenticated user. A rendszergazdák ezután erős engedélyezési házirendeket hozhatnak létre az Apache Ranger használatával, amely szerepköralapú hozzáférés-vezérlést biztosít a fürt erőforrásaihoz.Administrators can then create strong authorization policies by using Apache Ranger to provide role-based access control for resources in the cluster.

A HDInsight és az Active Directory integrálásaIntegrate HDInsight with Active Directory

A nyílt forráskódú Apache Hadoop a Kerberos protokollra támaszkodik a hitelesítéshez és a biztonsághoz.Open-source Apache Hadoop relies on the Kerberos protocol for authentication and security. Ezért az Enterprise Security Package (ESP) HDInsight rendelkező fürtcsomópontok az Azure AD DS által felügyelt tartományhoz csatlakoznak.Therefore, HDInsight cluster nodes with Enterprise Security Package (ESP) are joined to a domain that's managed by Azure AD DS. A Kerberos-biztonság a fürt Hadoop-összetevőihez van konfigurálva.Kerberos security is configured for the Hadoop components on the cluster.

A következő dolgok jönnek létre automatikusan:The following things are created automatically:

  • Egy egyszerű szolgáltatásnév az egyes Hadoop-összetevőkhözA service principal for each Hadoop component
  • A tartományhoz csatlakozó egyes gépekhez tartozó egyszerű számítógépA machine principal for each machine that's joined to the domain
  • Szervezeti egység (OU) az egyes fürtökhöz a szolgáltatás és a rendszerbiztonsági tag tárolásáhozAn Organizational Unit (OU) for each cluster to store these service and machine principals

Az összegzéshez létre kell hoznia egy környezetet a következővel:To summarize, you need to set up an environment with:

  • Active Directory tartomány (az Azure AD DS által felügyelt).An Active Directory domain (managed by Azure AD DS). Az Azure HDInsight való együttműködéshez a tartománynév 39 karakter vagy annál kisebb kell legyen.The domain name must be 39 characters or less to work with Azure HDInsight.
  • Secure LDAP (LDAPs) engedélyezve az Azure AD DSban.Secure LDAP (LDAPS) enabled in Azure AD DS.
  • Megfelelő hálózati kapcsolat a HDInsight virtuális hálózatról az Azure AD DS virtuális hálózatra, ha külön virtuális hálózatokat választ számukra.Proper networking connectivity from the HDInsight virtual network to the Azure AD DS virtual network, if you choose separate virtual networks for them. A HDInsight virtuális hálózatban lévő virtuális gépeknek a virtuális hálózati közvetítésen keresztül kell megnézniük az Azure AD DS.A VM inside the HDInsight virtual network should have a line of sight to Azure AD DS through virtual network peering. Ha a HDInsight és az Azure AD DS ugyanazon a virtuális hálózaton vannak telepítve, akkor a rendszer automatikusan megadja a kapcsolatot, és nincs szükség további műveletre.If HDInsight and Azure AD DS are deployed in the same virtual network, the connectivity is automatically provided, and no further action is needed.

Eltérő tartományvezérlők beállításaSet up different domain controllers

A HDInsight jelenleg csak az Azure-AD DS támogatja a fürt által a Kerberos-kommunikációhoz használt fő tartományvezérlőként.HDInsight currently supports only Azure AD DS as the main domain controller that the cluster uses for Kerberos communication. Más összetett Active Directory-beállítások azonban lehetségesek, feltéve, hogy az ilyen beállítások lehetővé teszik az Azure-AD DS HDInsight-hozzáférésének engedélyezését.But other complex Active Directory setups are possible, as long as such a setup leads to enabling Azure AD DS for HDInsight access.

Azure Active Directory tartományi szolgáltatásokAzure Active Directory Domain Services

Az Azure AD DS a Windows Server Active Directory teljes mértékben kompatibilis felügyelt tartományt biztosít.Azure AD DS provides a managed domain that's fully compatible with Windows Server Active Directory. A Microsoft gondoskodik a tartomány magas rendelkezésre állású (HA) telepítéssel történő kezeléséről, javításáról és figyeléséről.Microsoft takes care of managing, patching, and monitoring the domain in a highly available (HA) setup. A fürt üzembe helyezése a tartományvezérlők fenntartása nélkül is elvégezhető.You can deploy your cluster without worrying about maintaining domain controllers.

A felhasználók, csoportok és jelszavak az Azure AD-ből lesznek szinkronizálva.Users, groups, and passwords are synchronized from Azure AD. Az Azure AD-példányról az Azure AD DSra való egyirányú szinkronizálás lehetővé teszi, hogy a felhasználók ugyanazzal a vállalati hitelesítő adatokkal jelentkezzenek be a fürtbe.The one-way sync from your Azure AD instance to Azure AD DS enables users to sign in to the cluster by using the same corporate credentials.

További információ: HDInsight- fürtök konfigurálása az ESP-vel az Azure AD DS használatával.For more information, see Configure HDInsight clusters with ESP using Azure AD DS.

Helyszíni Active Directory vagy Active Directory IaaS-alapú virtuális gépekenOn-premises Active Directory or Active Directory on IaaS VMs

Ha helyszíni Active Directory-példánnyal vagy összetettebb Active Directory-beállítással rendelkezik a tartományhoz, a Azure AD Connect használatával szinkronizálhatja ezeket az identitásokat az Azure AD-be.If you have an on-premises Active Directory instance or more complex Active Directory setups for your domain, you can sync those identities to Azure AD by using Azure AD Connect. Ezután engedélyezheti az Azure AD DSt a Active Directory bérlőn.You can then enable Azure AD DS on that Active Directory tenant.

Mivel a Kerberos a jelszó-kivonatokra támaszkodik, engedélyeznie kell a jelszó-kivonatok szinkronizálását az Azure ad DSon.Because Kerberos relies on password hashes, you must enable password hash sync on Azure AD DS.

Ha Active Directory összevonási szolgáltatások (AD FS) (AD FS) összevonást használ, engedélyeznie kell a jelszó-kivonatolási szinkronizálást. (Az ajánlott beállításhoz tekintse meg ezt a videót.) A jelszó-kivonatolási szinkronizálás segít a vész-helyreállításban abban az esetben, ha a AD FS-infrastruktúra meghibásodik, és segít a kiszivárgott hitelesítő adatok védelmében is.If you're using federation with Active Directory Federation Services (AD FS), you must enable password hash sync. (For a recommended setup, see this video.) Password hash sync helps with disaster recovery in case your AD FS infrastructure fails, and it also helps provide leaked-credential protection. További információ: jelszó- kivonatoló szinkronizálás engedélyezése Azure ad Connect szinkronizálással.For more information, see Enable password hash sync with Azure AD Connect sync.

Az Azure AD és az Azure AD DS nélküli helyszíni Active Directory vagy Active Directory használata a IaaS virtuális gépeken nem támogatott konfiguráció az ESP-vel rendelkező HDInsight-fürtökhöz.Using on-premises Active Directory or Active Directory on IaaS VMs alone, without Azure AD and Azure AD DS, isn't a supported configuration for HDInsight clusters with ESP.

Ha az összevonás használatban van, és a jelszó-kivonatok megfelelően vannak szinkronizálva, de hitelesítési hibák fordultak elő, ellenőrizze, hogy engedélyezve van-e a felhőalapú jelszó-hitelesítés a PowerShell szolgáltatásnév számára.If federation is being used and password hashes are synced correctly, but you are getting authentication failures, check if cloud password authentication is enabled for the PowerShell service principal. Ha nem, be kell állítania az Azure AD-bérlőhöz tartozó HRD-házirendet .If not, you must set a Home Realm Discovery (HRD) policy for your Azure AD tenant. A HRD házirend bejelölése és beállítása:To check and set the HRD policy:

  1. Telepítse az előzetes verziójú Azure ad PowerShell-modult.Install the preview Azure AD PowerShell module.

    Install-Module AzureAD
    
  2. Kapcsolódjon a globális rendszergazda (bérlői rendszergazda) hitelesítő adataival.Connect using global administrator (tenant administrator) credentials.

    Connect-AzureAD
    
  3. Ellenőrizze, hogy a Microsoft Azure PowerShell egyszerű szolgáltatás már létrejött-e.Check if the Microsoft Azure PowerShell service principal has already been created.

    Get-AzureADServicePrincipal -SearchString "Microsoft Azure Powershell"
    
  4. Ha nem létezik, hozza létre az egyszerű szolgáltatásnevet.If it doesn't exist, then create the service principal.

    $powershellSPN = New-AzureADServicePrincipal -AppId 1950a258-227b-4e31-a9cf-717495945fc2
    
  5. Hozza létre és csatolja a szabályzatot ehhez az egyszerű szolgáltatáshoz.Create and attach the policy to this service principal.

     # 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
    

További lépésekNext steps