Partager via


Gérer les emplacements externes

Cet article explique comment répertorier, afficher, mettre à jour, accorder des autorisations sur, et supprimer des emplacements externes.

Remarque

Databricks recommande de régir l’accès aux fichiers à l’aide de volumes. Consultez Qu’est-ce que les volumes de catalogue Unity ?.

Décrire un emplacement externe.

Pour afficher les propriétés d’un emplacement externe, y compris les autorisations et l’accès à l’espace de travail, vous pouvez utiliser l’Explorateur catalogue ou une commande SQL.

Explorateur de catalogues

  1. Dans la barre latérale, cliquez sur Icône CatalogueCatalogue.
  2. Dans la page Accès rapide, cliquez sur le >externes pour accéder à l’onglet Emplacements externes.
  3. Cliquez sur le nom d’un emplacement externe pour afficher ses propriétés.

SQL

Exécutez la commande suivante dans un notebook ou dans l’éditeur Databricks SQL. Remplacez <location-name> par le nom de l’emplacement externe.

DESCRIBE EXTERNAL LOCATION <location-name>;

Afficher les octrois sur un emplacement externe

Pour afficher les subventions sur un emplacement externe, utilisez une commande semblable à la suivante. Vous pouvez éventuellement filtrer les résultats pour afficher uniquement les autorisations pour le principal spécifié.

SHOW GRANTS [<principal>] ON EXTERNAL LOCATION <location-name>;

Remplacez les valeurs d’espace réservé :

  • <location-name>: Nom de l’emplacement externe qui autorise la lecture et l’écriture dans le chemin d’accès au conteneur de stockage dans votre locataire Cloud.
  • <principal> : Adresse e-mail d’un utilisateur au niveau du compte ou nom d’un groupe au niveau du compte.

Remarque

Si un groupe ou un nom d’utilisateur contient un espace ou @ un symbole, utilisez des cycles précédents autour de celui-ci (et non des apostrophes). Par exemple, l’équipe financière.

Accorder des autorisations sur un emplacement externe

Cette section explique comment accorder et révoquer des autorisations sur un emplacement externe à l’aide de l’Explorateur de catalogues et des commandes SQL dans un notebook ou une requête SQL. Pour plus d’informations sur l’utilisation de l’interface CLI Databricks ou Terraform à la place, consultez la documentation Databricks Terraform et Qu’est-ce que l’interface CLI Databricks ?.

Vous pouvez accorder les autorisations suivantes sur un emplacement externe :

  • CREATE EXTERNAL TABLE
  • CREATE EXTERNAL VOLUME
  • CREATE MANAGED STORAGE

Autorisations requises: privilège CREATE EXTERNAL LOCATION sur le metastore et les informations d’identification de stockage référencées dans l’emplacement externe ou le privilège MANAGE sur l’emplacement externe. Les administrateurs de metastore ont CREATE EXTERNAL LOCATION sur le metastore par défaut.

Pour accorder l’autorisation d’utiliser un emplacement externe :

Explorateur de catalogues

  1. Dans la barre latérale, cliquez sur Icône CatalogueCatalogue.
  2. Dans la page Accès rapide, cliquez sur le >externes pour accéder à l’onglet Emplacements externes.
  3. Cliquez sur le nom d’un emplacement externe pour afficher ses propriétés.
  4. Cliquez sur Autorisations.
  5. Pour accorder l’autorisation d’accès aux utilisateurs ou aux groupes, sélectionnez chaque identité, puis cliquez sur accorder.
  6. Pour révoquer les autorisations des utilisateurs ou des groupes, sélectionnez chaque identité, puis cliquez sur Révoquer.

SQL

Exécutez la commande SQL suivante dans un notebook ou dans l’éditeur de requête SQL. Cet exemple octroie la capacité à créer une table externe qui référence l’emplacement externe :

GRANT CREATE EXTERNAL TABLE ON EXTERNAL LOCATION <location-name> TO <principal>;

Remplacez les valeurs d’espace réservé :

  • <location-name>: Nom de l’emplacement externe qui autorise la lecture et l’écriture dans le chemin d’accès au conteneur de stockage dans votre locataire Cloud.
  • <principal> : Adresse e-mail d’un utilisateur au niveau du compte ou nom d’un groupe au niveau du compte.

Remarque

Si un groupe ou un nom d’utilisateur contient un espace ou @ un symbole, utilisez des cycles précédents autour de celui-ci (et non des apostrophes). Par exemple, l’équipe financière.

Modifier le propriétaire d’un emplacement externe

Le créateur d’un emplacement externe est son propriétaire initial. Pour remplacer le propriétaire par un autre utilisateur ou groupe de comptes, exécutez la commande suivante dans un notebook ou dans l’éditeur de SQL Databricks ou bien utilisez Catalog Explorer.

autorisations requises: propriétaire de l’emplacement externe ou utilisateur disposant du privilège MANAGE.

Remplacez les valeurs d’espace réservé :

  • <location-name>: Nom des informations d'identification.
  • <principal> : Adresse e-mail d’un utilisateur au niveau du compte ou nom d’un groupe au niveau du compte.
ALTER EXTERNAL LOCATION <location-name> OWNER TO <principal>

Marquer un emplacement externe en lecture seule

Si vous souhaitez que des utilisateurs aient un accès en lecture seule à un emplacement externe, vous pouvez utiliser Catalog Explorer pour marquer l’emplacement externe comme étant en lecture seule.

Définir des emplacements externes en lecture seule :

  • Empêche les utilisateurs d’écrire dans des fichiers dans ces emplacements externes, quelles que soient les autorisations en écriture accordées par l’identité managée Azure qui sous-tend les informations d’identification de stockage, et quelles que soient les autorisations Unity Catalog accordées sur cet emplacement externe.
  • Empêche les utilisateurs de créer des tables ou des volumes managés dans ces emplacements externes.
  • Permet au système de valider correctement l’emplacement externe au moment de la création.

Vous pouvez marquer des emplacements externes comme étant en lecture seule lorsque vous les créez.

Vous pouvez également utiliser Catalog Explorer pour changer l’état en lecture seule après avoir créé un emplacement externe :

  1. Dans la barre latérale, cliquez sur Icône CatalogueCatalogue.
  2. Dans la page Accès rapide, cliquez sur le >externes pour accéder à l’onglet Emplacements externes.
  3. Sélectionnez l’emplacement externe, cliquez sur le menu menu KebabActions en regard du bouton Tester la connexion, puis sélectionnez Modifier.
  4. Dans la boîte de dialogue Modifier, cliquez sur Options avancées , puis sélectionnez l’option Limite de lecture seule pour utiliser l’ option.
  5. Cliquez sur Update.

Modifier un emplacement externe.

Le propriétaire ou l’utilisateur d’un emplacement externe disposant du privilège MANAGE peut renommer, modifier l’URI et modifier les informations d’identification de stockage de l’emplacement externe.

Pour renommer un emplacement externe, procédez comme suit :

Exécutez la commande suivante dans un notebook ou dans l’éditeur Databricks SQL. Remplacez les valeurs d’espace réservé :

  • <location-name>: Nom de l’emplacement.
  • <new-location-name>: Nouveau nom de l’emplacement.
ALTER EXTERNAL LOCATION <location-name> RENAME TO <new-location-name>;

Pour modifier l’URI qu’un emplacement externe localise dans votre locataire de cloud, procédez comme suit :

Exécutez la commande suivante dans un notebook ou dans l’éditeur Databricks SQL. Remplacez les valeurs d’espace réservé :

  • <location-name>: Nom de l’emplacement externe.
  • <url>: La nouvelle URL de stockage à laquelle l’emplacement doit autoriser l’accès à votre locataire Cloud.
ALTER EXTERNAL LOCATION location_name SET URL '<url>' [FORCE];

L'option FORCE modifie l’URL même si les tables externes dépendent de l’emplacement externe.

Pour modifier les informations d’identification de stockage qu’un emplacement externe utilise, procédez comme suit :

Exécutez la commande suivante dans un notebook ou dans l’éditeur Databricks SQL. Remplacez les valeurs d’espace réservé :

  • <location-name>: Nom de l’emplacement externe.
  • <credential-name>: Nom des informations d’identification de stockage qui accorde l’accès à l’URL de l’emplacement dans votre locataire Cloud.
ALTER EXTERNAL LOCATION <location-name> SET STORAGE CREDENTIAL <credential-name>;

Supprimer un emplacement externe.

Pour supprimer (supprimer) un emplacement externe, vous devez être son propriétaire ou disposer du privilège MANAGE sur l’emplacement externe. Pour supprimer un emplacement externe, procédez comme suit :

Exécutez la commande suivante dans un notebook ou dans l’éditeur Databricks SQL. Les éléments entre crochets sont optionnels. Remplacez <location-name> par le nom de l’emplacement externe.

DROP EXTERNAL LOCATION [IF EXISTS] <location-name>;