Enterprise-beveiligingspakket gebruiken in HDInsightUse Enterprise Security Package in HDInsight

De standard-Azure HDInsight-cluster is een cluster met één gebruiker.The standard Azure HDInsight cluster is a single-user cluster. Het is geschikt voor de meeste bedrijven met kleinere toepassingsteams die workloads met veel gegevens.It's suitable for most companies that have smaller application teams building large data workloads. Elke gebruiker kan een specifieke cluster op aanvraag maken en vernietigen zodra deze niet meer nodig.Each user can create a dedicated cluster on demand and destroy it when it's not needed anymore.

Veel bedrijven hebben verplaatst naar een model waarin IT teams-clusters beheren en meerdere toepassingsteams clusters delen.Many enterprises have moved toward a model in which IT teams manage clusters, and multiple application teams share clusters. Deze grote ondernemingen met meerdere gebruikers toegang nodig tot elk cluster in Azure HDInsight.These larger enterprises need multiuser access to each cluster in Azure HDInsight.

HDInsight is afhankelijk van een populaire id-provider: Active Directory, op een beheerde manier.HDInsight relies on a popular identity provider--Active Directory--in a managed way. Door de integratie van HDInsight met Azure Active Directory Domain Services (Azure AD DS), kunt u toegang krijgen tot de clusters met behulp van de domeinreferenties van uw.By integrating HDInsight with Azure Active Directory Domain Services (Azure AD DS), you can access the clusters by using your domain credentials.

De virtuele machines (VM's) in HDInsight zijn van een domein is toegevoegd aan het opgegeven domein.The virtual machines (VMs) in HDInsight are domain joined to your provided domain. Dus werken alle services die worden uitgevoerd op HDInsight (Apache Ambari, server Apache Hive, Apache Ranger, Apache Spark thrift-server en anderen) naadloos voor de geverifieerde gebruiker.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. Beheerders kunnen vervolgens met het maken van sterke autorisatiebeleid met behulp van Apache Ranger voor op rollen gebaseerd toegangsbeheer voor bronnen in het cluster.Administrators can then create strong authorization policies by using Apache Ranger to provide role-based access control for resources in the cluster.

HDInsight integreren met Active DirectoryIntegrate HDInsight with Active Directory

Open-source Apache Hadoop, is afhankelijk van het Kerberos-protocol voor verificatie en beveiliging.Open-source Apache Hadoop relies on the Kerberos protocol for authentication and security. Daarom zijn HDInsight-clusterknooppunten met Enterprise Security Package (ESP) gekoppeld aan een domein dat wordt beheerd door Azure AD DS.Therefore, HDInsight cluster nodes with Enterprise Security Package (ESP) are joined to a domain that's managed by Azure AD DS. Kerberos-beveiliging is geconfigureerd voor het Hadoop-componenten op het cluster.Kerberos security is configured for the Hadoop components on the cluster.

De volgende bewerkingen worden automatisch gemaakt:The following things are created automatically:

  • een service-principal voor elk onderdeel HadoopA service principal for each Hadoop component
  • een machine-principal voor elke machine die gekoppeld aan het domeinA machine principal for each machine that's joined to the domain
  • een organisatie-eenheid (OE) voor elk cluster voor het opslaan van deze service en machine-principalsAn Organizational Unit (OU) for each cluster to store these service and machine principals

Om samen te vatten, moet u voor het instellen van een omgeving met:To summarize, you need to set up an environment with:

  • Active Directory-domein (beheerd door Azure AD DS).An Active Directory domain (managed by Azure AD DS).
  • Secure LDAP (LDAPS) ingeschakeld in Azure AD DS.Secure LDAP (LDAPS) enabled in Azure AD DS.
  • Juiste netwerken connectiviteit van het virtuele netwerk van HDInsight met de Azure AD DS virtueel netwerk, als u afzonderlijke virtuele netwerken voor hen kiest.Proper networking connectivity from the HDInsight virtual network to the Azure AD DS virtual network, if you choose separate virtual networks for them. Een virtuele machine binnen het virtuele netwerk van HDInsight moet een verbinding met Azure AD DS via peering op virtueel netwerk hebben.A VM inside the HDInsight virtual network should have a line of sight to Azure AD DS through virtual network peering. Als HDInsight en Azure AD DS zijn geïmplementeerd in hetzelfde virtuele netwerk, de verbinding automatisch wordt geleverd, is geen verdere actie te ondernemen.If HDInsight and Azure AD DS are deployed in the same virtual network, the connectivity is automatically provided, and no further action is needed.

Instellen van de verschillende domeincontrollersSet up different domain controllers

HDInsight ondersteunt momenteel alleen Azure AD DS als de primaire domeincontroller die het cluster voor communicatie van Kerberos gebruikt.HDInsight currently supports only Azure AD DS as the main domain controller that the cluster uses for Kerberos communication. Maar andere complexe Active Directory-instellingen zijn mogelijk, zolang dergelijke installatie leidt tot het inschakelen van Azure AD DS voor HDInsight-toegang.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 Domain ServicesAzure Active Directory Domain Services

Azure AD DS biedt een beheerd domein die volledig compatibel is met Windows Server Active Directory.Azure AD DS provides a managed domain that's fully compatible with Windows Server Active Directory. Microsoft zorgt beheren, toepassen van patches en bewaking van het domein in een configuratie voor hoge beschikbaarheid (HA).Microsoft takes care of managing, patching, and monitoring the domain in a highly available (HA) setup. U kunt uw cluster implementeren zonder u zorgen te maken over het onderhouden van domeincontrollers.You can deploy your cluster without worrying about maintaining domain controllers.

Gebruikers, groepen en wachtwoorden worden gesynchroniseerd vanuit Azure AD.Users, groups, and passwords are synchronized from Azure AD. De synchronisatie in één richting van uw Azure AD-instantie met Azure AD DS kan gebruikers zich aanmelden bij het cluster met behulp van de zakelijke referenties.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.

Zie voor meer informatie, configureren HDInsight-clusters met behulp van Azure AD DS ESP.For more information, see Configure HDInsight clusters with ESP using Azure AD DS.

On-premises Active Directory of Active Directory op virtuele IaaS-machinesOn-premises Active Directory or Active Directory on IaaS VMs

Als u een on-premises Active Directory-exemplaar of meer complexe Active Directory-instellingen voor uw domein hebt, kunt u deze identiteiten met Azure AD synchroniseren met behulp van Azure AD Connect.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. Vervolgens kunt u Azure AD DS op deze Active Directory-tenant.You can then enable Azure AD DS on that Active Directory tenant.

Omdat Kerberos is afhankelijk van wachtwoord-hashes, moet u wachtwoordhashsynchronisatie op Azure AD DS inschakelen.Because Kerberos relies on password hashes, you must enable password hash sync on Azure AD DS.

Als u Federatie met Active Directory Federation Services (AD FS), moet u synchronisatie van wachtwoordhashes inschakelen. (Zie voor een aanbevolen instelling in deze video.) Synchronisatie van wachtwoordhashes helpt bij herstel na noodgevallen in het geval de AD FS-infrastructuur is mislukt en het helpt tevens gelekte referentie-beveiliging bieden.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. Zie voor meer informatie, synchronisatie van wachtwoordhashes met Azure AD Connect-synchronisatie inschakelen.For more information, see Enable password hash sync with Azure AD Connect sync.

Met behulp van on-premises Active Directory of Active Directory op IaaS-VM's alleen zonder Azure AD en Azure AD DS, is niet een ondersteunde configuratie voor HDInsight-clusters met ESP.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.

Als federation wordt gebruikt en wachtwoord-hashes juist zijn gesynchroniseerd, maar u verificatiefouten ontvangt, controleert u of cloud-wachtwoordverificatie is ingeschakeld voor de PowerShell-service-principal.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. Als u niet het geval is, moet u instellen een start Realm detectie (HRD) beleid voor uw Azure AD-tenant.If not, you must set a Home Realm Discovery (HRD) policy for your Azure AD tenant. Om te controleren en stelt u het HRD-beleid:To check and set the HRD policy:

  1. De Preview-versie installeren Azure AD PowerShell-module.Install the preview Azure AD PowerShell module.

    Install-Module AzureADPreview
    
  2. Voer Connect-AzureAD met behulp van referenties van de globale beheerder (tenantbeheerder).Enter Connect-AzureAD by using global administrator (tenant administrator) credentials.

  3. Controleer als de Microsoft Azure PowerShell service-principal is al gemaakt.Check if the Microsoft Azure PowerShell service principal has already been created.

    Get-AzureADServicePrincipal -SearchString "Microsoft Azure Powershell"
    
  4. Als deze nog niet bestaat, maakt u de service-principal.If it doesn't exist, then create the service principal.

    $powershellSPN = New-AzureADServicePrincipal -AppId 1950a258-227b-4e31-a9cf-717495945fc2
    
  5. Maken en koppelen van het beleid aan deze service-principal.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
    

Volgende stappenNext steps