Configuration de l'authentification Apache Ranger avec LDAP/Active Directory

Les utilisateurs Active Directory autorisés doivent être configurés pour accéder aux services et aux ressources fournis dans un cluster de services Big Data. Pour ce faire, Apache Ranger doit être configuré de sorte que les utilisateurs Active Directory puissent être synchronisés avec Apache Ranger dans Big Data Service. En outre, les utilisateurs peuvent vouloir se connecter à l'interface utilisateur Apache Ranger en tant qu'utilisateurs Active Directory.

Configuration du Ranger UserSync

La configuration du Ranger UserSync vous permet d'effectuer une synchronisation des utilisateurs basée sur un groupe à partir du serveur Active Directory. Les groupes Active Directory et les utilisateurs de groupes spécifiques sont synchronisés dans Ranger.

  1. Accédez à Apache Ambari.
  2. Dans la barre d'outils latérale, sous Services, sélectionnez Ranger.
  3. Sélectionnez Configurations, puis Informations utilisateur Ranger.
  4. Définissez Activer la synchronisation utilisateur sur Oui.
  5. Sélectionnez LDAP/AD dans le menu déroulant Source de synchronisation.
  6. Sélectionnez Configurations communes.
    1. Entrez les informations suivantes :
      • URL LDAP/AD : entrez l'URL LDAP/AD.
      • Lier l'utilisateur : entrez les informations sur l'utilisateur de liaison. Par exemple, CN=Administrator, CN=Users, DC=<domain_controller>, DC=COM.
      • Mot de passe de l'utilisateur de liaison : entrez et confirmez le mot de passe.
    2. Définissez Synchronisation incrémentielle sur Vrai.
    3. Définissez Activer LDAP STARTTLS sur Non.
  7. Sélectionnez User Configs.
    1. Entrez les informations suivantes en fonction de votre configuration LDAP :
      • Attribut de nom utilisateur : entrez l'attribut de nom utilisateur LDAP. Par exemple : sAMAccountName.
      • Classe d'objet utilisateur : entrez le nom utilisateur de la classe d'objet.
      • Base de recherche d'utilisateurs : indiquez le nom distinctif (DN) où la recherche de comptes utilisateur doit commencer. Le nom distinctif indique le point de départ dans la hiérarchie LDAP pour que Ranger UserSync localise les utilisateurs.

        Exemples :

        • Pour une seule unité d'organisation :

          Si l'unité d'organisation cible est ParentOU sous le domaine example.com :
          • OU=ParentOU,DC=example,DC=com
        • Pour une hiérarchie OU imbriquée :

          Si l'unité d'organisation cible est ChildOU sous ParentOU dans le domaine example.com :
          • OU=ChildOU,OU=ParentOU,DC=example,DC=com
        • Plusieurs unités d'organisation :

          Pour rechercher plusieurs unités d'organisation, séparez-les par un point-virgule ( ;) :
          • OU=ParentOU1,DC=exemple,DC=com ;OU=ParentOU2,DC=exemple,DC=com
      • Filtre de recherche utilisateur : entrez des filtres de recherche. Il s'agit de l'expression de filtre LDAP standard. Vous pouvez spécifier de filtrer les utilisateurs d'un groupe spécifique. Reportez-vous à la syntaxe de filtre LDAP. Ce champ peut rester vide.
      • Portée de recherche d'utilisateurs : Entrez sub.
      • Attribut de nom de groupe d'utilisateurs : Entrez des attributs de nom de groupe. Par exemple, memberof,ismemberof.
    2. Définissez Synchronisation de mappage utilisateur de groupe sur Vrai.
    3. Définissez Activer la recherche utilisateur sur Oui.
  8. Pour synchroniser le groupe, sélectionnez Configurations de groupe.
    1. Définissez Activer la synchronisation de groupe sur Oui. Si vous ne voulez pas synchroniser le groupe, sélectionnez Non et passez à l'étape suivante.
    2. Entrez les informations suivantes :
      • Attribut de membre de groupe : entrez les attributs de membre de groupe LDAP. Par exemple, member.
      • Attribut de nom de groupe : entrez les attributs de nom de groupe. Par exemple, cn.
      • Classe d'objet Groupe : entrez la classe d'objet Groupe. Par exemple, group.
      • Base de recherche de groupe : entrez le nom de domaine complet du conteneur dans lequel réside votre groupe.

        Ce texte est identique au champ Base de recherche d'utilisateurs de l'onglet Configurations d'utilisateurs.

      • Filtre de recherche de groupe : entrez les filtres de recherche de groupe Active Directory. Par exemple, (|(CN=group1)(CN=group2)(CN=*admin))
        Remarque

        Ce filtre est l'expression de filtre LDAP standard. Reportez-vous à la syntaxe de filtre LDAP.
    3. Définissez Activer d'abord la recherche de groupe sur Oui.
    4. Définissez Synchroniser les groupes imbriqués sur Oui.
  9. Pour enregistrer la configuration et redémarrer le service Ranger User Sync, sélectionnez Save.
  10. Attendez que le service Ranger User Sync soit opérationnel sans erreur.

Configuration de l'authentification Active Directory pour Ranger

  1. Accédez à Apache Ambari.
  2. Dans la barre d'outils latérale, sous Services, sélectionnez Ranger.
  3. Sélectionnez Configurations, puis Avancé.
  4. Sélectionnez Paramètres Ranger.
  5. Sélectionnez ACTIVE_DIRECTORY pour la méthode d'authentification.
  6. Entrez les paramètres AD suivants :
    • URL AD : entrez l'URL Active Directory.
    • DN de liaison AD : entrez le DN Active Directory
    • Mot de passe d'authentification AD : entrez et confirmez le mot de passe d'authentification Active Directory. Par exemple, <AD_BIND_USER_PWD>
    • DN de base AD : entrez le nom de domaine Active Directory. Par exemple, <AD_SEARCH_BASE>
    • Recommandation AD : Sélectionnez Ignorer.
    • Filtre de recherche d'utilisateur AD : entrez l'attribut de nom utilisateur Active Directory. Par exemple : (sAMAccountName={0})
  7. Pour enregistrer la configuration et redémarrer le service Ranger Admin, sélectionnez Save.
  8. Attendez que le service d'administration Ranger soit opérationnel sans erreur.
  9. Valider la configuration :
    1. Connectez-vous à Ranger à l'aide des informations d'identification d'administrateur de cluster.
    2. Sélectionnez une stratégie de service. Dans la colonne Sélectionner un utilisateur, les utilisateurs Active Directory sont répertoriés et peuvent appliquer des stratégies d'autorisation. Si la liste déroulante des utilisateurs affiche uniquement un ensemble limité d'utilisateurs Active Directory, reportez-vous à La liste déroulante de l'interface utilisateur Ranger ne répertorie pas tous les utilisateurs synchronisés.
    3. Connectez-vous au noeud de cluster et exécutez la commande suivante :
      kinit <user>@<ad-realm>
    4. Vérifiez que le ticket est accordé à l'utilisateur Active Directory. Exécution :
      klist

      Exemple de sortie :

      Ticket cache: FILE:/tmp/krb5cc_1000
      Default principal: <user>@<ad-realm>
      Valid starting       Expires              Service principal
      09/01/2021 20:44:07  09/02/2021 06:44:07  krbtgt/<ad-realm>@<ad-realm>
      renew until 09/08/2021 20:44:04
    5. Accédez au service Hadoop et vérifiez que vous pouvez accéder aux ressources.