Tutoriel : Configurer des stratégies Apache HBase dans HDInsight avec le Pack Sécurité Entreprise
Découvrez comment configurer des stratégies Apache Ranger pour des clusters Apache HBase avec le Pack Sécurité Entreprise (ESP). Les clusters ESP sont connectés à un domaine permettant aux utilisateurs de s’authentifier avec les informations d’identification du domaine. Dans ce tutoriel, vous créez deux stratégies Ranger pour restreindre l’accès à différentes familles de colonnes dans une table HBase.
Dans ce tutoriel, vous allez apprendre à :
- Créez des utilisateurs du domaine.
- Créer des stratégies Ranger.
- Créer des tables dans un cluster HBase.
- Tester des stratégies Ranger.
Avant de commencer
- Si vous n’avez pas d’abonnement Azure, créez un compte gratuit.
- Connectez-vous au portail Azure.
- Créez un cluster HBase HDInsight avec le Pack Sécurité Entreprise.
Connexion à l’interface utilisateur Apache Ranger
À partir d’un navigateur, connectez-vous à l’interface utilisateur d’administration de Ranger en utilisant l’URL
https://<ClusterName>.azurehdinsight.net/Ranger/
. N’oubliez pas de remplacer<ClusterName>
par le nom de votre cluster HBase.Remarque
Les informations d’identification de Ranger ne sont pas les mêmes que celles du cluster Hadoop. Pour empêcher les navigateurs d’utiliser les informations d’identification Hadoop mises en cache, utilisez une nouvelle fenêtre de navigation InPrivate pour vous connecter à l’interface utilisateur administrateur de Ranger.
Connectez-vous avec vos informations d’identification d’administrateur Microsoft Entra. Les informations d’identification d’administrateur Microsoft Entra ne sont pas les mêmes que les informations d’identification du cluster HDInsight ou que les informations d’identification Secure Shell (SSH) du nœud HDInsight Linux.
Créer des utilisateurs du domaine
Pour savoir comment créer les utilisateurs du domaine sales_user1 et marketing_user1, consultez Créer un cluster HDInsight avec le Pack Sécurité Entreprise. Dans un scénario de production, les utilisateurs du domaine proviennent de votre locataire Active Directory.
Créer des tables HBase et importer des données d’exemple
Vous pouvez utiliser SSH pour vous connecter à des clusters HBase, puis utiliser Apache HBase Shell pour créer des tables HBase, et insérer et interroger des données. Pour en savoir plus, voir Utilisation de SSH avec Hadoop Linux sur HDInsight depuis Linux, Unix ou OS X.
Utilisation de l’interpréteur de commandes HBase
À partir de SSH, exécutez la commande HBase suivante :
hbase shell
Créez une table HBase
Customers
avec deux familles de colonnes :Name
etContact
.create 'Customers', 'Name', 'Contact' list
Insérez des données :
put 'Customers','1001','Name:First','Alice' put 'Customers','1001','Name:Last','Johnson' put 'Customers','1001','Contact:Phone','333-333-3333' put 'Customers','1001','Contact:Address','313 133rd Place' put 'Customers','1001','Contact:City','Redmond' put 'Customers','1001','Contact:State','WA' put 'Customers','1001','Contact:ZipCode','98052' put 'Customers','1002','Name:First','Robert' put 'Customers','1002','Name:Last','Stevens' put 'Customers','1002','Contact:Phone','777-777-7777' put 'Customers','1002','Contact:Address','717 177th Ave' put 'Customers','1002','Contact:City','Bellevue' put 'Customers','1002','Contact:State','WA' put 'Customers','1002','Contact:ZipCode','98008'
Affichez le contenu de la table :
scan 'Customers'
Création de stratégies Ranger
Créez une stratégie Ranger pour sales_user1 et marketing_user1.
Ouvrez l’interface utilisateur de l’administrateur Ranger. Sous HBase, sélectionnez <Nom_cluster>_hbase.
L’écran Liste des stratégies affiche toutes les stratégies Ranger créées pour ce cluster. Il est possible qu’une stratégie préconfigurée figure dans la liste. Sélectionnez Ajouter une nouvelle stratégie.
Dans l’écran
Create Policy
, entrez les valeurs suivantes :Paramètre Valeur suggérée Nom de la stratégie sales_customers_name_contact HBase Table (Table HBase) Clients HBase Column-family (Famille de colonnes HBase) Name, Contact HBase Column (Colonne HBase) * Select Group (Sélectionner un groupe) Sélectionner un utilisateur sales_user1 Autorisations Lire Les caractères génériques suivants peuvent être inclus dans le nom de la rubrique :
*
indique zéro, une ou plusieurs occurrences des caractères.?
indique n’importe quel caractère individuel.
Remarque
Attendez quelques instants que Ranger se synchronise avec Microsoft Entra ID si un utilisateur de domaine n’est pas renseigné automatiquement pour Sélectionnez un utilisateur.
Sélectionnez Ajouter pour enregistrer la stratégie.
Sélectionnez Ajouter une nouvelle stratégie, puis entrez les valeurs suivantes :
Paramètre Valeur suggérée Nom de la stratégie marketing_customers_contact HBase Table (Table HBase) Clients HBase Column-family (Famille de colonnes HBase) Contact HBase Column (Colonne HBase) * Select Group (Sélectionner un groupe) Sélectionner un utilisateur marketing_user1 Autorisations Lire Sélectionnez Ajouter pour enregistrer la stratégie.
Tester les stratégies Ranger
En fonction des stratégies Ranger configurées, sales_user1 peut voir toutes les données des colonnes des familles de colonnes Name
et Contact
. marketing_user1 peut voir les données seulement de la famille de colonnes Contact
.
Accéder aux données en tant qu’utilisateur sales_user1
Ouvrez une connexion SSH avec le cluster. Utilisez la commande suivante pour vous connecter au cluster :
ssh sshuser@CLUSTERNAME-ssh.azurehdinsight.net
Utilisez la commande
kinit
pour passer au contexte de l’utilisateur souhaité :kinit sales_user1
Ouvrez l’interpréteur de commandes HBase et analysez la table
Customers
.hbase shell scan `Customers`
Notez que l’utilisateur sales_user1 peut voir toutes les colonnes de la table
Customers
. L’utilisateur peut voir les deux colonnes de la famille de colonnesName
et les cinq colonnes de la famille de colonnesContact
.ROW COLUMN+CELL 1001 column=Contact:Address, timestamp=1548894873820, value=313 133rd Place 1001 column=Contact:City, timestamp=1548895061523, value=Redmond 1001 column=Contact:Phone, timestamp=1548894871759, value=333-333-3333 1001 column=Contact:State, timestamp=1548895061613, value=WA 1001 column=Contact:ZipCode, timestamp=1548895063111, value=98052 1001 column=Name:First, timestamp=1548894871561, value=Alice 1001 column=Name:Last, timestamp=1548894871707, value=Johnson 1002 column=Contact:Address, timestamp=1548894899174, value=717 177th Ave 1002 column=Contact:City, timestamp=1548895103129, value=Bellevue 1002 column=Contact:Phone, timestamp=1548894897524, value=777-777-7777 1002 column=Contact:State, timestamp=1548895103231, value=WA 1002 column=Contact:ZipCode, timestamp=1548895104804, value=98008 1002 column=Name:First, timestamp=1548894897419, value=Robert 1002 column=Name:Last, timestamp=1548894897487, value=Stevens 2 row(s) in 0.1000 seconds
Accéder aux données en tant qu’utilisateur marketing_user1
Ouvrez une connexion SSH avec le cluster. Utilisez la commande suivante pour vous connecter en tant que marketing_user1 :
ssh sshuser@CLUSTERNAME-ssh.azurehdinsight.net
Utilisez la commande
kinit
pour passer au contexte de notre utilisateur souhaité :kinit marketing_user1
Ouvrez l’interpréteur de commandes HBase et analysez la table
Customers
.hbase shell scan `Customers`
Notez que l’utilisateur marketing peut uniquement voir les cinq colonnes de la famille de colonnes
Contact
.ROW COLUMN+CELL 1001 column=Contact:Address, timestamp=1548894873820, value=313 133rd Place 1001 column=Contact:City, timestamp=1548895061523, value=Redmond 1001 column=Contact:Phone, timestamp=1548894871759, value=333-333-3333 1001 column=Contact:State, timestamp=1548895061613, value=WA 1001 column=Contact:ZipCode, timestamp=1548895063111, value=98052 1002 column=Contact:Address, timestamp=1548894899174, value=717 177th Ave 1002 column=Contact:City, timestamp=1548895103129, value=Bellevue 1002 column=Contact:Phone, timestamp=1548894897524, value=777-777-7777 1002 column=Contact:State, timestamp=1548895103231, value=WA 1002 column=Contact:ZipCode, timestamp=1548895104804, value=98008 2 row(s) in 0.0730 seconds
Consultez les événements d’accès de l’audit à partir de l’interface utilisateur de Ranger.
Nettoyer les ressources
Si vous ne comptez pas continuer à utiliser cette application, supprimez le cluster HBase que vous avez créé :
- Connectez-vous au portail Azure.
- Dans la zone Rechercher située en haut, entrez HDInsight.
- Sous Services, sélectionnez Clusters HDInsight.
- Dans la liste des clusters HDInsight qui s’affiche, sélectionnez les points de suspension ... à côté du cluster que vous avez créé pour ce tutoriel.
- Sélectionnez Supprimer>Oui.