Utiliser les rôles pour utiliser AWS Batch l' SageMaker IA - AWS Batch

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

Utiliser les rôles pour utiliser AWS Batch l' SageMaker IA

AWS Batch utilise des AWS Identity and Access Management rôles liés à un service (IAM). Un rôle lié à un service est un type unique de rôle IAM directement lié à. AWS Batch Les rôles liés au service sont prédéfinis par AWS Batch et incluent toutes les autorisations dont le service a besoin pour appeler d'autres AWS services en votre nom.

Un rôle lié à un service facilite la configuration AWS Batch car vous n'avez pas à ajouter manuellement les autorisations nécessaires. AWS Batch définit les autorisations associées à ses rôles liés aux services et, sauf indication contraire, seul AWS Batch peut assumer ses rôles. Les autorisations définies comprennent la politique d’approbation et la politique d’autorisation. De plus, cette politique d’autorisation ne peut pas être attachée à une autre entité IAM.

Vous pouvez supprimer un rôle lié à un service uniquement après la suppression préalable de ses ressources connexes. Cela protège vos AWS Batch ressources car vous ne pouvez pas supprimer par inadvertance l'autorisation d'accès aux ressources.

Pour plus d'informations sur les autres services qui prennent en charge les rôles liés à un service, consultez la section AWS Services qui fonctionnent avec IAM et recherchez les services dont la valeur est Oui dans la colonne Rôles liés à un service. Sélectionnez un Oui ayant un lien pour consulter la documentation du rôle lié à un service, pour ce service.

Autorisations de rôle liées à un service pour AWS Batch

AWS Batch utilise le rôle lié au service nommé AWSServiceRoleForAWSBatchWithSagemaker— Permet de mettre en file AWS Batch d'attente et de gérer les tâches de SageMaker formation en votre nom.

Le rôle AWSService RoleFor AWSBatch WithSagemaker lié à un service fait confiance aux services suivants pour assumer le rôle :

  • sagemaker-queuing.batch.amazonaws.com

La politique d'autorisation des rôles AWS Batch permet d'effectuer les actions suivantes sur les ressources spécifiées :

  • sagemaker— Permet AWS Batch de gérer les tâches de SageMaker formation, de transformer les tâches et d'autres ressources d' SageMaker IA.

  • iam:PassRole— Permet de AWS Batch transmettre des rôles d'exécution définis par le client à l' SageMaker IA pour l'exécution des tâches. La contrainte de ressources permet de transmettre des rôles aux services d' SageMaker IA.

Vous devez configurer les autorisations de manière à permettre à vos utilisateurs, groupes ou rôles de créer, modifier ou supprimer un rôle lié à un service. Pour plus d’informations, consultez Autorisations de rôles liés à un service dans le Guide de l’utilisateur IAM.

Création d'un rôle lié à un service pour AWS Batch

Vous n’avez pas besoin de créer manuellement un rôle lié à un service. Lorsque vous créez un environnement de service CreateServiceEnvironment à l'aide de AWS Management Console, de AWS CLI, ou de l' AWS API, vous AWS Batch créez le rôle lié au service pour vous.

Si vous supprimez ce rôle lié à un service et que vous avez ensuite besoin de le recréer, vous pouvez utiliser la même procédure pour recréer le rôle dans votre compte. Lorsque vous créez un environnement de service à l'aide deCreateServiceEnvironment, AWS Batch crée à nouveau le rôle lié au service pour vous.

Pour consulter le JSON de la politique, consultez AWSBatchServiceRolePolicyForSageMakerle Guide de référence des politiques AWS gérées.

Modification d'un rôle lié à un service pour AWS Batch

AWS Batch ne vous permet pas de modifier le rôle AWSService RoleFor AWSBatch WithSagemaker lié au service. Une fois que vous avez créé un rôle lié à un service, vous ne pouvez pas changer le nom du rôle, car plusieurs entités peuvent faire référence à ce rôle. Néanmoins, vous pouvez modifier la description du rôle à l’aide d’IAM. Pour plus d’informations, consultez Modification d’un rôle lié à un service dans le IAM Guide de l’utilisateur.

Suppression d'un rôle lié à un service pour AWS Batch

Si vous n’avez plus besoin d’utiliser une fonction ou un service qui nécessite un rôle lié à un service, nous vous recommandons de supprimer ce rôle. De cette façon, vous n'avez aucune entité inutilisée qui n'est pas surveillée ou gérée activement. Cependant, vous devez nettoyer votre rôle lié à un service avant de pouvoir le supprimer manuellement.

Nettoyer un rôle lié à un service

Avant de pouvoir utiliser IAM pour supprimer un rôle lié à un service, vous devez d'abord confirmer que le rôle n'a aucune session active et supprimer tous les environnements de service qui utilisent le rôle dans toutes les AWS régions sur une seule partition.

Pour vérifier si une session est active pour le rôle lié à un service
  1. Ouvrez la console IAM à l'adresse https://console.aws.amazon.com/iam/.

  2. Dans le volet de navigation, choisissez Rôles, puis le AWSService RoleFor AWSBatch WithSagemaker nom (et non la case à cocher).

  3. Sur la page Résumé, choisissez Access Advisor et consultez l'activité récente pour le rôle lié à un service.

    Note

    Si vous ne savez pas si le AWSService RoleFor AWSBatch WithSagemaker rôle AWS Batch est utilisé, vous pouvez essayer de le supprimer. Si le service utilise le rôle, le rôle ne sera pas supprimé. Vous pouvez consulter les régions dans lesquelles le rôle est utilisé. Si le rôle est utilisé, vous devez attendre que la session se termine avant de pouvoir le supprimer. Vous ne pouvez pas révoquer la session d'un rôle lié à un service.

Pour supprimer les AWS Batch ressources utilisées par le rôle lié à AWSService RoleFor AWSBatch WithSagemaker un service

Vous devez dissocier toutes les files d'attente de tâches de tous les environnements de service, puis vous devez supprimer tous les environnements de service qui utilisent le AWSService RoleFor AWSBatch WithSagemaker rôle dans toutes les AWS régions avant de pouvoir supprimer le AWSService RoleFor AWSBatch WithSagemaker rôle.

  1. Ouvrez la AWS Batch console à l'adresse https://console.aws.amazon.com/batch/.

  2. Dans la barre de navigation, sélectionnez la région à utiliser.

  3. Dans le volet de navigation, choisissez Environments, puis Service environments.

  4. Sélectionnez tous les environnements de service.

  5. Choisissez Désactiver. Attendez que l'état passe à DÉSACTIVÉ.

  6. Sélectionnez l'environnement de service.

  7. Sélectionnez Delete (Supprimer). Confirmez que vous souhaitez supprimer l'environnement de service en choisissant Supprimer l'environnement de service.

  8. Répétez les étapes 1 à 7 pour tous les environnements de service qui utilisent le rôle lié au service dans toutes les régions.

Supprimer un rôle lié à un service dans IAM (console)

Vous pouvez utiliser la console IAM pour supprimer un rôle lié à un service.

Pour supprimer un rôle lié à un service (console)
  1. Connectez-vous à la console IAM AWS Management Console et ouvrez-la à https://console.aws.amazon.com/iam/l'adresse.

  2. Dans le panneau de navigation de la console IAM, sélectionnez Roles (Rôles). Sélectionnez ensuite la case à cocher située à côté AWSService RoleFor AWSBatchWithSagemaker, et non le nom ou la ligne elle-même.

  3. Choisissez Delete role (Supprimer le rôle).

  4. Dans la boîte de dialogue de confirmation, vérifiez les dernières données consultées dans le service. Elles indiquent quels rôles, parmi ceux sélectionnés, ont accédé en dernier à un service Service AWS. Cela vous permet de confirmer si le rôle est actif actuellement. Si vous souhaitez continuer, sélectionnez Oui, supprimer pour lancer la tâche de suppression du rôle.

  5. Consultez les notifications de la console IAM pour surveiller la progression de la suppression du rôle lié à un service. Dans la mesure où la suppression du rôle lié à un service IAM est asynchrone, une fois que vous soumettez le rôle afin qu’il soit supprimé, la suppression peut réussir ou échouer.

    • Si la tâche réussit, le rôle est supprimé de la liste et une notification de succès s'affiche en haut de la page.

    • Si la tâche échoue, vous pouvez choisir View details (Afficher les détails) ou View Resources (Afficher les ressources) à partir des notifications pour connaître le motif de l'échec de la suppression. Si la suppression échoue car le rôle utilise les ressources du service, alors la notification comprend une liste de ressources, à condition que le service renvoie ces informations. Vous pouvez alors nettoyer les ressources et lancer à nouveau la tâche de suppression.

      Note

      Vous devrez peut-être répéter ce processus plusieurs fois, en fonction des informations renvoyées par le service. Par exemple, il est possible que votre rôle lié à un service utilise six ressources et que votre service renvoie des informations sur cinq d'entre elles. Si vous nettoyez les cinq ressources et lancez à nouveau la tâche de suppression pour le rôle, la suppression échoue et le service indique la ressource restante. Un service peut renvoyer toutes les ressources, quelques ressources ou n'indiquer aucune ressource.

    • Si la tâche échoue et que la notification n'inclut pas de liste des ressources, le service peut ne pas renvoyer cette information. Pour savoir comment nettoyer les ressources pour ce service, veuillez consulter Services Services AWS fonctionnant avec IAM. Identifiez votre service dans le tableau, puis choisissez le lien Yes (Oui) pour afficher la documentation relative au rôle lié à un service pour ce service.

Supprimer un rôle lié à un service dans IAM ()AWS CLI

Vous pouvez utiliser les commandes IAM depuis le AWS Command Line Interface pour supprimer un rôle lié à un service.

Pour supprimer un rôle lié à un service (CLI)
  1. Un rôle lié à un service ne pouvant pas être supprimé s’il est utilisé ou si des ressources lui sont associées, vous devez envoyer une demande de suppression. Cette demande peut être refusée si ces conditions ne sont pas remplies. Vous devez capturer le deletion-task-id de la réponse afin de vérifier l’état de la tâche de suppression. Saisissez la commande suivante pour envoyer une demande de suppression d’un rôle lié à un service :

    $ aws iam delete-service-linked-role --role-name AWSServiceRoleForAWSBatchWithSagemaker
  2. Saisissez la commande suivante pour vérifier l’état de la tâche de suppression :

    $ aws iam get-service-linked-role-deletion-status --deletion-task-id deletion-task-id

    L’état de la tâche de suppression peut être NOT_STARTED, IN_PROGRESS, SUCCEEDED ou FAILED. Si la suppression échoue, l’appel renvoie le motif de l’échec, afin que vous puissiez apporter une solution. Si la suppression échoue car le rôle utilise les ressources du service, alors la notification comprend une liste de ressources, à condition que le service renvoie ces informations. Vous pouvez alors nettoyer les ressources et lancer à nouveau la tâche de suppression.

    Note

    Vous devrez peut-être répéter ce processus plusieurs fois, en fonction des informations renvoyées par le service. Par exemple, il est possible que votre rôle lié à un service utilise six ressources et que votre service renvoie des informations sur cinq d'entre elles. Si vous nettoyez les cinq ressources et lancez à nouveau la tâche de suppression pour le rôle, la suppression échoue et le service indique la ressource restante. Un service peut renvoyer toutes les ressources, certaines d'entre elles. Ou bien, il se peut qu'aucune ressource ne soit signalée. Pour savoir comment nettoyer les ressources d'un service qui ne signale aucune ressource, consultez la section AWS Services qui fonctionnent avec IAM. Identifiez votre service dans le tableau, puis choisissez le lien Yes (Oui) pour afficher la documentation relative au rôle lié à un service pour ce service.

Supprimer un rôle lié à un service dans IAM (API)AWS

Vous pouvez utiliser l'API IAM pour supprimer un rôle lié à un service.

Pour supprimer un rôle lié à un service (API)
  1. Pour envoyer une demande de suppression pour un rôle lié à un service, appelez DeleteServiceLinkedRole. Dans la demande, spécifiez le nom du AWSService RoleFor AWSBatch WithSagemaker rôle.

    Dans la mesure où un rôle lié à un service ne peut pas être supprimé s'il est utilisé ou si des ressources lui sont associées, vous devez envoyer une demande de suppression. Cette demande peut être refusée si ces conditions ne sont pas satisfaites. Vous devez capturer le DeletionTaskId de la réponse afin de vérifier l'état de la tâche de suppression.

  2. Pour vérifier l'état de la suppression, appelez GetServiceLinkedRoleDeletionStatus. Dans la demande, spécifiez le DeletionTaskId.

    L’état de la tâche de suppression peut être NOT_STARTED, IN_PROGRESS, SUCCEEDED ou FAILED. Si la suppression échoue, l’appel renvoie le motif de l’échec, afin que vous puissiez apporter une solution. Si la suppression échoue car le rôle utilise les ressources du service, alors la notification comprend une liste de ressources, à condition que le service renvoie ces informations. Vous pouvez alors nettoyer les ressources et lancer à nouveau la tâche de suppression.

    Note

    Vous devrez peut-être répéter ce processus plusieurs fois, en fonction des informations renvoyées par le service. Par exemple, il est possible que votre rôle lié à un service utilise six ressources et que votre service renvoie des informations sur cinq d'entre elles. Si vous nettoyez les cinq ressources et lancez à nouveau la tâche de suppression pour le rôle, la suppression échoue et le service indique la ressource restante. Un service peut renvoyer toutes les ressources, quelques ressources ou n'indiquer aucune ressource. Pour apprendre à nettoyer les ressources pour un service qui n'indique aucune ressource, veuillez consulter Services Services AWS fonctionnant avec IAM. Identifiez votre service dans le tableau, puis choisissez le lien Yes (Oui) pour afficher la documentation relative au rôle lié à un service pour ce service.

Régions prises en charge pour les rôles liés à un service AWS Batch

AWS Batch prend en charge l'utilisation de rôles liés au service dans toutes les régions où le service est disponible. Pour plus d'informations, consultez Points de terminaison AWS Batch.