Aller au contenu principal

Authentification pour l'utilisation de boutiques en ligne tierces

La publication de tables de fonctionnalités dans un magasin en ligne tiers nécessite une authentification en écriture, et la recherche de fonctionnalités nécessite une authentification en lecture. Configurez les deux en utilisant un profil d'instance ou les secrets Databricks, comme décrit dans les sections suivantes.

Le tableau présente les méthodes d'authentification prises en charge pour chaque action :

Fournisseur de boutique en ligne

Publier

Recherche de fonctionnalités dans le MLflow Model Serving hérité

Recherche de fonctionnalités dans Model Serving

Amazon DynamoDB (toute version du client d'ingénierie des fonctionnalités, ou du client Magasin de fonctionnalités v0,3,8 et supérieur)

Profil d’instance attaché à un cluster Databricks OU Secrets Databricks utilisant write_secret_prefix dans AmazonDynamoDBSpec

Secrets Databricks à l’aide de read_secret_prefix dans AmazonDynamoDBSpec. Les profils d'instance ne sont pas pris en charge pour la recherche de fonctionnalités héritées.

Profil d’instance attaché à un Endpoint de service Databricks OU Secrets Databricks à l’aide de read_secret_prefix dans AmazonDynamoDBSpec. .

Amazon Aurora (compatible MySQL)

Secrets Databricks à l’aide de write_secret_prefix dans AmazonRdsMySqlSpec.

Secrets Databricks à l’aide de read_secret_prefix dans AmazonRdsMySqlSpec.

Non pris en charge.

Amazon RDS MySQL

Secrets Databricks à l’aide de write_secret_prefix dans AmazonRdsMySqlSpec.

Secrets Databricks à l’aide de read_secret_prefix dans AmazonRdsMySqlSpec.

Non pris en charge.

Fournisseur de boutique en ligne

Publier

Recherche de fonctionnalités dans le MLflow Model Serving hérité

Recherche de fonctionnalités dans Model Serving

Amazon DynamoDB (toute version du client d'ingénierie des fonctionnalités, ou du client Magasin de fonctionnalités v0,3,8 et supérieur)

Profil d’instance attaché à un cluster Databricks OU Secrets Databricks utilisant write_secret_prefix dans AmazonDynamoDBSpec

Secrets Databricks à l’aide de read_secret_prefix dans AmazonDynamoDBSpec. Les profils d'instance ne sont pas pris en charge pour la recherche de fonctionnalités héritées.

Profil d’instance attaché à un Endpoint de service Databricks OU Secrets Databricks à l’aide de read_secret_prefix dans AmazonDynamoDBSpec. .

Amazon Aurora (compatible MySQL)

Secrets Databricks à l’aide de write_secret_prefix dans AmazonRdsMySqlSpec.

Secrets Databricks à l’aide de read_secret_prefix dans AmazonRdsMySqlSpec.

Non pris en charge.

Amazon RDS MySQL

Secrets Databricks à l’aide de write_secret_prefix dans AmazonRdsMySqlSpec.

Secrets Databricks à l’aide de read_secret_prefix dans AmazonRdsMySqlSpec.

Non pris en charge.

Authentification pour la publication de tables de fonctionnalités vers des magasins en ligne tiers

Pour publier des tables de fonctionnalités dans un magasin en ligne tiers, vous devez fournir des informations d'identification en écriture.

Databricks vous recommande de fournir une authentification en écriture via un profil d'instance attaché à un cluster Databricks. Vous pouvez également stocker les identifiants dans les secrets Databricks, puis les référencer dans un write_secret_prefix lors de la publication.

Le profil d'instance ou l'utilisateur IAM doit disposer de toutes les autorisations suivantes :

  • dynamodb:DeleteItem
  • dynamodb:DeleteTable
  • dynamodb:PartiQLSelect
  • dynamodb:DescribeTable
  • dynamodb:PartiQLInsert
  • dynamodb:GetItem
  • dynamodb:CreateGlobalTable
  • dynamodb:BatchGetItem
  • dynamodb:UpdateTimeToLive
  • dynamodb:BatchWriteItem
  • dynamodb:ConditionCheckItem
  • dynamodb:PutItem
  • dynamodb:PartiQLUpdate
  • dynamodb:Scan
  • dynamodb:Query
  • dynamodb:UpdateItem
  • dynamodb:DescribeTimeToLive
  • dynamodb:CreateTable
  • dynamodb:UpdateGlobalTableSettings
  • dynamodb:UpdateTable
  • dynamodb:PartiQLDelete
  • dynamodb:DescribeTableReplicaAutoScaling

Fournir une authentification en écriture via un profil d'instance attaché à un cluster Databricks

Sur les clusters exécutant Databricks Runtime 10.5 ML et versions ultérieures, vous pouvez utiliser le profil d'instance attaché au cluster pour l'authentification en écriture lors de la publication vers les magasins en ligne DynamoDB.

remarque

Utilisez ces étapes uniquement pour l'authentification en écriture lors de la publication sur les magasins en ligne DynamoDB.

  1. Créez un profil d'instance qui dispose de l'autorisation d'écriture dans le magasin en ligne.

  2. Attachez le profil d'instance à un cluster Databricks en suivant ces deux étapes :

    1. Ajoutez le profil d'instance à Databricks.
    2. Lancez un cluster avec le profil d'instance.
  3. Sélectionnez le cluster avec le profil d'instance attaché pour exécuter le code à publier dans la boutique en ligne. Vous n'avez pas besoin de fournir des informations d'identification secrètes explicites ou write_secret_prefix à la spécification du magasin en ligne.

Fournir les identifiants d'écriture à l'aide des secrets Databricks

Suivez les instructions dans Utiliser les secrets Databricks.

Authentification pour la recherche de fonctionnalités à partir de magasins en ligne tiers avec des modèles MLflow servis

Pour permettre aux modèles MLflow hébergés sur Databricks de se connecter à des magasins en ligne tiers et de rechercher des valeurs de fonctionnalité, vous devez fournir une authentification en lecture.

Databricks vous recommande de fournir une authentification par recherche via un profil d'instance attaché à un modèle Databricks déployé. Vous pouvez également stocker les identifiants dans les secrets Databricks, puis les référencer dans un read_secret_prefix lors de la publication.

Fournir l'authentification de recherche via un profil d'instance configuré pour un modèle servi

  1. Créez un profil d'instance qui dispose de l'autorisation d'écriture dans le magasin en ligne.

  2. Configurez votre Endpoint de diffusion Databricks pour utiliser le profil d'instance.

remarque

Lorsque vous publiez votre table, vous n'avez pas besoin de spécifier un read_prefix, et tout read_prefix spécifié est remplacé par le profil d'instance.

Fournissez les informations d'identification en lecture à l'aide des secrets Databricks

Suivez les instructions dans Utiliser les secrets Databricks.

Utilisez les secrets Databricks pour l'authentification en lecture et écriture.

Cette section présente les étapes à suivre pour configurer l’authentification avec les secrets Databricks. Pour des exemples de code illustrant comment utiliser ces secrets, consultez Publier des fonctionnalités dans un magasin en ligne tiers.

  1. Créez deux Secret Scope qui contiennent des identifiants pour le magasin en ligne : un pour un accès en lecture seule (indiqué ici comme <read-scope>) et un pour un accès en lecture-écriture (indiqué ici comme <write-scope>). Vous pouvez également réutiliser des Secret Scope existants.

    Si vous avez l'intention d'utiliser un profil d'instance pour l'authentification en écriture (configurée au niveau du cluster Databricks), vous n'avez pas besoin d'inclure le <write-scope>. Si vous avez l'intention d'utiliser un profil d'instance pour l'authentification en lecture (configuré au niveau du Endpoint de service Databricks), vous n'avez pas besoin d'inclure le <read-scope>.

  2. Choisissez un nom unique pour la boutique en ligne cible, affiché ici comme <prefix>.

    Pour DynamoDB (fonctionne avec n'importe quelle version du client Feature Engineering et du client Magasin de fonctionnalités v0.3.8 et supérieur), créez les secrets suivants :

    • ID de clé d'accès de l'utilisateur IAM avec accès en lecture seule au magasin en ligne cible : databricks secrets put-secret <read-scope> <prefix>-access-key-id
    • Clé d'accès secrète pour l'utilisateur IAM avec un accès en lecture seule au magasin en ligne cible : databricks secrets put-secret <read-scope> <prefix>-secret-access-key
    • ID de clé d'accès pour l'utilisateur IAM avec accès en lecture-écriture à la boutique en ligne cible : databricks secrets put-secret <write-scope> <prefix>-access-key-id
    • Clé d'accès secrète de l'utilisateur IAM avec accès en lecture-écriture à la boutique en ligne cible : databricks secrets put-secret <write-scope> <prefix>-secret-access-key

    Pour les stockages SQL, créez les secrets suivants :

    • Utilisateur avec un accès en lecture seule à la boutique en ligne cible : databricks secrets put-secret <read-scope> <prefix>-user
    • Mot de passe de l'utilisateur avec accès en lecture seule au magasin en ligne cible : databricks secrets put-secret <read-scope> <prefix>-password
    • Utilisateur avec accès en lecture-écriture à la boutique en ligne cible : databricks secrets put-secret <write-scope> <prefix>-user
    • Mot de passe pour un utilisateur avec accès en lecture-écriture au magasin en ligne cible : databricks secrets put-secret <write-scope> <prefix>-password
remarque

Il existe une limite au nombre de Secret Scopes par Workspace. Pour éviter d'atteindre cette limite, vous pouvez définir et partager un seul Secret Scope pour accéder à tous les magasins en ligne.