Contrôle des accès avec IAM

AI Platform Prediction utilise IAM (Identity and Access Management) pour gérer l'accès aux ressources. Pour accorder l'accès à une ressource, attribuez un ou plusieurs rôles à un utilisateur, un groupe ou un compte de service.

Trois types de rôles IAM peuvent être utilisés dans AI Platform Prediction :

  • Les rôles de base (Propriétaire, Lecteur et Éditeur) sont communs à tous les services Google Cloud.

  • Les rôles AI Platform Prediction prédéfinis vous permettent de contrôler avec précision l'accès à vos ressources AI Platform Prediction au niveau du projet et du modèle.

  • Les rôles personnalisés vous permettent de choisir un ensemble d'autorisations spécifique, de créer un rôle disposant de ces autorisations et d'attribuer ce dernier à des utilisateurs de votre organisation.

Ce guide se concentre sur les rôles AI Platform Prediction prédéfinis, leur utilisation typique et les autorisations associées.

Ce guide se concentre sur les rôles et les autorisations dont vous avez besoin pour accéder aux ressources AI Platform Prediction. Pour en savoir plus sur les autorisations dont ces ressources disposent pour accéder aux autres ressources Google Cloud, consultez la documentation sur les comptes de service personnalisés et le compte de service géré par Google d'AI Platform.

Rôles de base

Les anciens rôles IAM AI Platform Prediction sont basés sur les rôles de base communs à tous les services GCP : Propriétaire, Lecteur et Éditeur.

L'ancien rôle Éditeur de projet est l'équivalent du rôle Administrateur AI Platform Prediction.

L'ancien rôle Lecteur de projet accorde les mêmes autorisations que le rôle Lecteur AI Platform Prediction, ainsi que l'autorisation d'envoyer des requêtes de prédiction en ligne. L'avantage du rôle Lecteur AI Platform Prediction est qu'il n'accorde à l'utilisateur qu'un accès en lecture seule aux ressources AI Platform Prediction.

Rôles prédéfinis

Les rôles prédéfinis accordent un ensemble d'autorisations associées. AI Platform Prediction propose des rôles prédéfinis pour votre projet, ainsi que pour des tâches, des opérations et des modèles individuels.

Cliquez sur le nom d'un rôle afin d'afficher la liste complète des autorisations associées.

Rôles au niveau du projet

Les rôles Administrateur, Développeur et Lecteur AI Platform Prediction accordent différents niveaux d'accès aux ressources au niveau du projet.

Pour ajouter, modifier ou supprimer ces rôles dans votre projet AI Platform Prediction, consultez la documentation Accorder, modifier et révoquer les accès.

Nom du rôle Nom du rôle Fonctions
Administrateur AI Platform Prediction

roles/ml.admin

Contrôle complet du projet AI Platform Prediction, ainsi que des tâches, des opérations, des modèles et des versions associés

Remarque:Le rôle de base Éditeur de projet est l'équivalent du rôle roles/ml.admin.

Développeur AI Platform Prediction

roles/ml.developer

Création de tâches d'entraînement et de prédiction, de modèles et de versions, et envoi de requêtes de prédiction en ligne

Lecteur AI Platform Prediction

roles/ml.viewer

Accès en lecture seule aux ressources AI Platform Prediction

Rôles au niveau du modèle

Les rôles Propriétaire de modèle et Utilisateur de modèle AI Platform Prediction accordent diverses autorisations sur une ressource de modèle particulière.

Vous pouvez partager des modèles avec des personnes ou avec des services en leur attribuant le rôle Utilisateur de modèle.

Nom du rôle Nom du rôle Fonctions
Propriétaire du modèle AI Platform Prediction

roles/ml.modelOwner

Accès complet au modèle et à ses versions. Ce rôle est automatiquement attribué à l'utilisateur qui crée le modèle.

Utilisateur du modèle AI Platform Prediction

roles/ml.modelUser

Autorisations de lire le modèle et ses versions, et de les utiliser pour la prédiction. L'attribution de ce rôle facilite le partage de modèles spécifiques.

Rôles au niveau de la tâche ou de l'opération

Comme pour les modèles, il existe des rôles Propriétaire au niveau des ressources de la tâche et de l'opération, qui sont attribués automatiquement à l'utilisateur qui les crée. Ces rôles permettent à l'utilisateur de contrôler entièrement chacune des tâches ou des opérations qu'il crée. Pour en savoir plus, consultez la section sur les autorisations accordées aux rôles au niveau de la tâche et de l'opération.

Autorisations et rôles

Vous trouverez ci-dessous la liste complète des autorisations accordées à chaque rôle prédéfini d'AI Platform Prediction. Si aucun de ces rôles prédéfinis ne répond à vos besoins, utilisez cette section comme référence pour créer vos propres rôles personnalisés.

Rôle Administrateur

Nom du rôle Description Autorisations
roles/ml.admin Administrateur AI Platform Prediction

Accès complet à votre projet AI Platform Prediction, ainsi qu'à ses tâches, opérations, modèles et versions

Remarque : La migration vers ce rôle depuis le rôle de base Éditeur de projet est relativement simple. Si vous avez déjà utilisé le rôle de base Éditeur attribué au niveau du projet, vous pouvez vous servir de ce rôle roles/ml.admin pour accorder exactement le même ensemble d'autorisations à l'utilisateur.

  • resourcemanager.projects.get
  • ml.projects.getConfig
  • ml.jobs.create
  • ml.jobs.list
  • ml.jobs.get
  • ml.jobs.getIamPolicy
  • ml.jobs.setIamPolicy
  • ml.jobs.cancel
  • ml.operations.list
  • ml.operations.get
  • ml.operations.cancel
  • ml.models.create
  • ml.models.list
  • ml.models.get
  • ml.models.setIamPolicy
  • ml.models.getIamPolicy
  • ml.models.predict
  • ml.models.delete
  • ml.models.update
  • ml.versions.create
  • ml.versions.list
  • ml.versions.get
  • ml.versions.predict
  • ml.versions.delete

Rôle Développeur

Nom du rôle Description Autorisations
roles/ml.developer

Accès permettant de créer des tâches d'entraînement et de prédiction, des modèles et des versions, ainsi que d'envoyer des requêtes de prédiction en ligne

Remarque : Un Développeur reçoit les autorisations ml.jobs.cancel et ml.jobs.update sur toutes les tâches créées, car la création d'une tâche lui attribue automatiquement le rôle Propriétaire de tâche AI Platform Prediction.

Recommandation:Accordez au développeur un accès en lecture seule aux journaux AI Platform Prediction à des fins de dépannage.

  • resourcemanager.projects.get
  • ml.projects.getConfig
  • ml.jobs.create
  • ml.jobs.list
  • ml.jobs.get
  • ml.jobs.getIamPolicy
  • ml.operations.list
  • ml.operations.get
  • ml.models.create
  • ml.models.list
  • ml.models.get
  • ml.models.getIamPolicy
  • ml.models.predict
  • ml.versions.list
  • ml.versions.get
  • ml.versions.predict

Rôle Lecteur

Nom du rôle Description Autorisations
roles/ml.viewer

Accès en lecture seule aux ressources AI Platform Prediction sur un projet spécifique

Remarque : L'ancien rôle Lecteur de projet accorde les mêmes autorisations que le rôle roles/ml.viewer, ainsi que l'autorisation d'envoyer des requêtes de prédiction en ligne.

  • resourcemanager.projects.get
  • ml.projects.getConfig
  • ml.jobs.list
  • ml.jobs.get
  • ml.operations.list
  • ml.operations.get
  • ml.models.list
  • ml.models.get
  • ml.versions.list
  • ml.versions.get

Rôle Propriétaire de modèle

Nom du rôle Description Autorisations
roles/ml.modelOwner Accès complet au modèle et à ses versions. Ce rôle est automatiquement attribué à l'utilisateur qui crée le modèle.
  • ml.models.get
  • ml.models.setIamPolicy
  • ml.models.getIamPolicy
  • ml.models.predict
  • ml.models.delete
  • ml.models.update
  • ml.versions.create
  • ml.versions.list
  • ml.versions.get
  • ml.versions.predict
  • ml.versions.delete

Rôle Utilisateur de modèle

Nom du rôle Description Autorisations
roles/ml.modelUser Autorisations de lire le modèle et ses versions, et de les utiliser à des fins de prédiction
  • ml.models.get
  • ml.models.predict
  • ml.versions.list
  • ml.versions.get
  • ml.versions.predict

Rôle Propriétaire de tâche

Nom du rôle Description Autorisations
roles/ml.jobOwner

Accès complet à toutes les autorisations pour une ressource de tâche donnée. Le rôle Propriétaire de tâche est attribué automatiquement à l'utilisateur qui crée la tâche en question.

Par exemple, un utilisateur disposant du rôle Développeur AI Platform Prediction sur un projet peut créer des tâches, répertorier l'ensemble des tâches et obtenir toutes les tâches d'un projet donné. Le Développeur n'a le droit d'annuler que la ou les tâches qu'il a créées.

  • ml.jobs.get
  • ml.jobs.getIamPolicy
  • ml.jobs.cancel

Rôle Propriétaire d'opération

Nom du rôle Description Autorisations
roles/ml.operationOwner

Accès complet à toutes les autorisations pour une ressource d'opération spécifique. Le rôle Propriétaire d'opération est attribué automatiquement à l'utilisateur sur toutes les opérations qu'il crée indirectement lors de la création d'une version ou d'un modèle, afin que cet utilisateur puisse toujours obtenir et annuler ses propres opérations.

  • ml.operations.get
  • ml.operations.cancel

Autorisations requises pour la prédiction

Pour plus de commodité, ce tableau récapitule les autorisations spécialement requises pour l'entraînement et la prédiction :

Tâche Autorisations requises
Prédiction par lot
  • ml.jobs.create
  • ml.models.predict*
  • ml.versions.predict*

Remarque : Vous pouvez créer une tâche de prédiction par lot sans déploiement de version en spécifiant l'emplacement d'un modèle enregistré dans Cloud Storage. Ce type de tâche de prédiction par lot requiert uniquement l'autorisation ml.jobs.create.

Pour créer une tâche de prédiction par lot utilisant une version déployée, vous avez également besoin de l'autorisation ml.models.predict ou de l'autorisation ml.versions.predict, mais pas des deux.

Prédiction en ligne
  • ml.models.predict
  • ml.versions.predict

Autorisations requises pour les méthodes

Pour plus de commodité, cette section répertorie les autorisations requises pour appeler chaque méthode disponible dans AI Platform Prediction :

Méthode Autorisations requises
projects.getConfig ml.projects.getConfig
projects.jobs.cancel ml.jobs.cancel
projects.jobs.create ml.jobs.create

Remarque:Pour créer un job de prédiction par lot utilisant une version déployée, vous avez également besoin de l'autorisation ml.models.predict ou de l'autorisation ml.versions.predict, mais pas des deux.

projects.jobs.get ml.jobs.get
projects.jobs.list ml.jobs.list
projects.models.create ml.models.create
projects.models.delete ml.models.delete
projects.models.get ml.models.get
projects.models.list ml.models.list
projects.models.versions.create ml.versions.create
projects.models.versions.delete ml.versions.delete
projects.models.versions.get ml.versions.get
projects.models.versions.list ml.versions.list
projects.models.versions.setDefault ml.models.update
projects.operations.cancel ml.operations.cancel
projects.operations.get ml.operations.get
projects.operations.list ml.operations.list

Autorisations requises pour le stockage

Lorsque vous déployez un modèle entraîné sur AI Platform Prediction pour obtenir des prédictions, vous importez vos fichiers de modèle enregistrés dans Cloud Storage. Dans le bucket Cloud Storage, vos fichiers de modèle constituent des objets. Vous devez vous assurer que votre compte de service AI Platform Prediction peut accéder aux fichiers de votre modèle entraîné dans votre bucket Cloud Storage.

Attribuez à votre compte de service AI Platform Prediction un rôle IAM Cloud Storage comprenant au minimum les autorisations suivantes :

Autorisations requises Explication
storage.buckets.list Permet à votre projet AI Platform Prediction de trouver des fichiers de modèle dans votre bucket Cloud Storage.
storage.objects.get Permet à votre projet AI Platform Prediction de lire vos fichiers de modèle dans votre bucket Cloud Storage.

Découvrez comment configurer les autorisations Cloud Storage pour AI Platform Prediction.

Étapes suivantes