Utilice funciones vinculadas al servicio para AWS Batch - AWS Batch

Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.

Utilice funciones vinculadas al servicio para AWS Batch

AWS Batch usa AWS Identity and Access Management (IAM) roles vinculados al servicio. Un rol vinculado a un servicio es un tipo único de IAM rol al que se vincula directamente. AWS Batch Los roles vinculados al servicio están predefinidos AWS Batch e incluyen todos los permisos que el servicio requiere para llamar a otros AWS servicios en tu nombre.

Un rol vinculado a un servicio facilita la configuración AWS Batch , ya que no es necesario añadir manualmente los permisos necesarios. AWS Batch define los permisos de sus funciones vinculadas al servicio y, a menos que se defina lo contrario, solo AWS Batch puede asumir sus funciones. Los permisos definidos incluyen la política de confianza y la política de permisos, y esa política de permisos no se puede adjuntar a ninguna otra IAM entidad.

nota

Realice una de las siguientes acciones para especificar un rol de servicio para un entorno AWS Batch informático.

  • Utilice una cadena vacía para el rol de servicio. Esto permite AWS Batch crear el rol de servicio.

  • Especifique el rol de servicio en el siguiente formato: arn:aws:iam::account_number:role/aws-service-role/batch.amazonaws.com/AWSServiceRoleForBatch.

Para obtener más información, consulte Nombre de función incorrecto o ARN la Guía AWS Batch del usuario.

Solo puede eliminar un rol vinculado a servicios después de eliminar sus recursos relacionados. De esta forma, se protegen los recursos de AWS Batch , ya que se evita que se puedan eliminar accidentalmente permisos de acceso a los recursos.

Para obtener información sobre otros servicios que admiten funciones vinculadas a un servicio, consulte AWS Servicios que funcionan con IAM y busque los servicios que tienen la palabra «Sí» en la columna Función vinculada al servicio. Elija una opción con un enlace para ver la documentación acerca del rol vinculado a servicios en cuestión.

Permisos de rol vinculados al servicio para AWS Batch

AWS Batch usa el rol vinculado al servicio denominado. AWSServiceRoleForBatch El AWSServiceRoleForBatchrol permite AWS Batch crear y administrar AWS recursos en su nombre.

El rol AWSServiceRoleForBatchvinculado al servicio confía en que el director del batch.amazonaws.com servicio asuma el rol.

La IAM política denominada BatchServiceRolePolicypermite AWS Batch realizar las siguientes acciones en recursos específicos:

  • autoscaling— Permite AWS Batch crear y gestionar los recursos de Amazon EC2 Auto Scaling. AWS Batch crea y administra grupos de Amazon EC2 Auto Scaling para la mayoría de los entornos de cómputo.

  • ec2— Permite AWS Batch controlar el ciclo de vida de las EC2 instancias de Amazon, así como crear y gestionar plantillas y etiquetas de lanzamiento. AWS Batch crea y gestiona las solicitudes de EC2 Spot Fleet para algunos entornos de computación EC2 puntual.

  • ecs- Permite AWS Batch crear y gestionar ECS clústeres de Amazon, definiciones de tareas y tareas para la ejecución de trabajos.

  • eks- Permite AWS Batch describir el recurso del EKS clúster de Amazon para las validaciones.

  • iam- Permite AWS Batch validar y transferir los roles proporcionados por el propietario a AmazonEC2, Amazon EC2 Auto Scaling y AmazonECS.

  • logs— Permite AWS Batch crear y gestionar grupos de registros y flujos de registros para AWS Batch trabajos.

Debe configurar los permisos para permitir que una IAM entidad (como un usuario, un grupo o un rol) cree, edite o elimine un rol vinculado a un servicio. Para obtener más información, consulte Permisos de roles vinculados a un servicio en la Guía del usuario. IAM

Crear un rol vinculado a un servicio para AWS Batch

No necesita crear manualmente un rol vinculado a servicios. Si estás CreateComputeEnvironment en el AWS Management Console, el o el AWS CLI AWS API, y no especificas un valor para el serviceRole parámetro, se AWS Batch crea automáticamente el rol vinculado al servicio.

importante

Este rol vinculado a servicios puede aparecer en su cuenta si se ha completado una acción en otro servicio que utilice las características compatibles con este rol. Además, si utilizabas el AWS Batch servicio antes del 10 de marzo de 2021, cuando comenzó a admitir roles vinculados al servicio, entonces AWS Batch creaste el AWSServiceRoleForBatch rol en tu cuenta. Para obtener más información, consulta Apareció un nuevo rol en mi IAM cuenta.

Si elimina este rol vinculado a servicios y necesita crearlo de nuevo, puede utilizar el mismo proceso para volver a crear el rol en su cuenta. Cuando lo hagas CreateComputeEnvironment, AWS Batch vuelve a crear el rol vinculado al servicio para ti.

Edición de un rol vinculado a un servicio para AWS Batch

Con AWS Batch, no puedes editar el rol vinculado al AWSServiceRoleForBatch servicio. Después de crear un rol vinculado a un servicio, no puede cambiarle el nombre, ya que varias entidades pueden hacer referencia a él. Sin embargo, puede editar la descripción del rol utilizando. IAM Para obtener más información, consulte Edición de un rol vinculado a un servicio en la Guía del IAMusuario.

Para permitir que una IAM entidad edite la descripción del rol vinculado al servicio AWSServiceRoleForBatch

Añada la siguiente instrucción a la política de permisos. Esto permite a la IAM entidad editar la descripción de un rol vinculado a un servicio.

{ "Effect": "Allow", "Action": [ "iam:UpdateRoleDescription" ], "Resource": "arn:aws:iam::*:role/aws-service-role/batch.amazonaws.com/AWSServiceRoleForBatch", "Condition": {"StringLike": {"iam:AWSServiceName": "batch.amazonaws.com"}} }

Eliminar un rol vinculado a un servicio para AWS Batch

Si ya no necesita utilizar una característica o servicio que requiere un rol vinculado a servicios, recomendamos que elimine dicho rol. De esta forma no tendrá una entidad no utilizada que no se monitoree ni mantenga de forma activa. Sin embargo, debe limpiar los recursos de su rol vinculado al servicio antes de eliminarlo manualmente.

Para permitir que una IAM entidad elimine el rol vinculado al servicio AWSServiceRoleForBatch

Añada la siguiente instrucción a la política de permisos. Esto permite a la IAM entidad eliminar un rol vinculado al servicio.

{ "Effect": "Allow", "Action": [ "iam:DeleteServiceLinkedRole", "iam:GetServiceLinkedRoleDeletionStatus" ], "Resource": "arn:aws:iam::*:role/aws-service-role/batch.amazonaws.com/AWSServiceRoleForBatch", "Condition": {"StringLike": {"iam:AWSServiceName": "batch.amazonaws.com"}} }

Saneamiento de un rol vinculado a servicios

Antes de poder eliminar un rol vinculado IAM a un servicio, primero debe confirmar que el rol no tiene sesiones activas y eliminar todos los entornos de AWS Batch cómputo que utilizan el rol en todas AWS las regiones de una sola partición.

Para comprobar si el rol vinculado a servicio tiene una sesión activa
  1. Abra la IAM consola en. https://console.aws.amazon.com/iam/

  2. En el panel de navegación, seleccione Funciones y, a continuación, el AWSServiceRoleForBatch nombre (no la casilla de verificación).

  3. En la página Summary, elija Access Advisor y revise la actividad reciente del rol vinculado a servicio.

    nota

    Si no sabe si AWS Batch está utilizando el AWSServiceRoleForBatch rol, puede intentar eliminarlo. Si el servicio está utilizando el rol, este no podrá eliminarse. Puede ver las regiones en las que se está utilizando el rol. Si el rol se está utilizando, debe esperar que la sesión finalice para poder eliminarlo. No se puede revocar la sesión de un rol vinculado a un servicio.

Para eliminar AWS Batch los recursos utilizados por el rol AWSServiceRoleForBatch vinculado al servicio

Debe eliminar todos los entornos AWS Batch informáticos que utilizan el AWSServiceRoleForBatch rol en todas AWS las regiones antes de poder eliminar el AWSServiceRoleForBatch rol.

  1. Abra la AWS Batch consola en https://console.aws.amazon.com/batch/.

  2. En la barra de navegación, seleccione la región a utilizar.

  3. En el panel de navegación, elija Entornos de computación.

  4. Seleccione el entorno de computación.

  5. Elija Deshabilitar. Espere a que el estado cambie a DISABLED.

  6. Seleccione el entorno de computación.

  7. Elija Eliminar. Confirme que desea eliminar el entorno de computación mediante la elección de Eliminar entorno de computación.

  8. Repita los pasos 1 a 7 para todos los entornos de computación que utilizan la función vinculada al servicio en todas las regiones.

Eliminar un rol vinculado a un servicio en IAM (Consola)

Puede usar la IAM consola para eliminar un rol vinculado a un servicio.

Para eliminar un rol vinculado a un servicio (consola)
  1. Inicie sesión en AWS Management Console y abra la IAM consola en. https://console.aws.amazon.com/iam/

  2. En el panel de navegación de la IAM consola, selecciona Funciones. A continuación, active la casilla de verificación situada junto a ella AWSServiceRoleForBatch, no el nombre o la fila en sí.

  3. Elija Eliminar rol.

  4. En el cuadro de diálogo de confirmación, revise los datos del último acceso al servicio, que muestra cuándo cada uno de los roles seleccionados tuvo acceso a un Servicio de AWS por última vez. Esto lo ayuda a confirmar si el rol está actualmente activo. Si desea continuar, seleccione Yes, Delete para enviar la solicitud de eliminación del rol vinculado al servicio.

  5. Observe las notificaciones de la IAM consola para supervisar el progreso de la eliminación del rol vinculado al servicio. Como la eliminación del rol IAM vinculado al servicio es asincrónica, una vez enviado el rol para su eliminación, la tarea de eliminación puede realizarse correctamente o fallar.

    • Si la tarea se realiza correctamente, el rol se elimina de la lista y aparece una notificación informando de ello en la parte superior de la página.

    • Si la tarea no se realiza correctamente, puede seleccionar View details (Ver detalles) o View Resources (Ver recursos) desde las notificaciones para obtener información sobre el motivo por el que no se pudo eliminar el rol. Si la eliminación no pudo producirse porque el rol está utilizando los recursos del servicio, la notificación incluye una lista de dichos recursos si el servicio proporciona dicha información. Tras conocer esa información, podrá limpiar los recursos y volver a enviar la solicitud de eliminación.

      nota

      Es posible que tenga que repetir este proceso varias veces, en función de la información que devuelva el servicio. Por ejemplo, el rol vinculado al servicio podría estar utilizando seis recursos y el servicio podría estar devolviendo información solo acerca de cinco de ellos. Si limpia los cinco recursos y envía la solicitud de eliminación del rol de nuevo, se producirá un error y el servicio informará del recurso restante. Un servicio podría informar de todos los recursos, algunos o ninguno.

    • Si se produce un error en la tarea y la notificación no incluye una lista de los recursos, el servicio no podría no devolver dicha información. Para obtener información sobre cómo limpiar los recursos de ese servicio, consulte este artículo con.Servicios de AWS IAM Identifique su servicio en la tabla y haga clic en el enlace Yes (Sí) para consultar la documentación relacionada con los roles vinculados a dicho servicio.

Eliminar un rol vinculado a un servicio en IAM ()AWS CLI

Puede usar IAM los comandos de AWS Command Line Interface para eliminar un rol vinculado a un servicio.

Para eliminar un rol vinculado a un servicio () CLI
  1. Como los roles vinculados a servicios no se puede eliminar si están en uso o tienen recursos asociados, debe enviar una solicitud de eliminación. Esta solicitud puede denegarse si no se cumplen estas condiciones. Debe apuntar el valor deletion-task-id de la respuesta para comprobar el estado de la tarea de eliminación. Ingrese el siguiente comando para enviar una solicitud de eliminación de un rol vinculado a un servicio:

    $ aws iam delete-service-linked-role --role-name AWSServiceRoleForBatch
  2. Utilice el siguiente comando para comprobar el estado de la tarea de eliminación:

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

    El estado de la tarea de eliminación puede ser NOT_STARTED, IN_PROGRESS, SUCCEEDED o FAILED. Si ocurre un error durante la eliminación, la llamada devuelve el motivo del error para que pueda resolver el problema. Si la eliminación no pudo producirse porque el rol está utilizando los recursos del servicio, la notificación incluye una lista de dichos recursos si el servicio proporciona dicha información. Tras conocer esa información, podrá limpiar los recursos y volver a enviar la solicitud de eliminación.

    nota

    Es posible que tenga que repetir este proceso varias veces, en función de la información que devuelva el servicio. Por ejemplo, el rol vinculado al servicio podría estar utilizando seis recursos y el servicio podría estar devolviendo información solo acerca de cinco de ellos. Si limpia los cinco recursos y envía la solicitud de eliminación del rol de nuevo, se producirá un error y el servicio informará del recurso restante. Un servicio podría devolver todos los recursos, algunos de ellos. O bien, podría no reportar ningún recurso. Para obtener información sobre cómo limpiar los recursos de un servicio que no informa de ningún recurso, consulte los AWS servicios que funcionan con. IAM Identifique su servicio en la tabla y haga clic en el enlace Yes (Sí) para consultar la documentación relacionada con los roles vinculados a dicho servicio.

Eliminar un rol vinculado a un servicio en IAM ()AWS API

Puede usar el para eliminar un IAM API rol vinculado a un servicio.

Para eliminar un rol vinculado a un servicio () API
  1. Para enviar una solicitud de eliminación de una lista vinculada a un servicio, llama. DeleteServiceLinkedRole En la solicitud, especifique el nombre del AWSServiceRoleForBatch rol.

    Como los roles vinculados a servicios no se puede eliminar si están en uso o tienen recursos asociados, debe enviar una solicitud de eliminación. Esta solicitud puede denegarse si no se cumplen estas condiciones. Debe apuntar el valor DeletionTaskId de la respuesta para comprobar el estado de la tarea de eliminación.

  2. Para comprobar el estado de la eliminación, llame GetServiceLinkedRoleDeletionStatus. En la solicitud, especifique el valor de DeletionTaskId.

    El estado de la tarea de eliminación puede ser NOT_STARTED, IN_PROGRESS, SUCCEEDED o FAILED. Si ocurre un error durante la eliminación, la llamada devuelve el motivo del error para que pueda resolver el problema. Si la eliminación no pudo producirse porque el rol está utilizando los recursos del servicio, la notificación incluye una lista de dichos recursos si el servicio proporciona dicha información. Tras conocer esa información, podrá limpiar los recursos y volver a enviar la solicitud de eliminación.

    nota

    Es posible que tenga que repetir este proceso varias veces, en función de la información que devuelva el servicio. Por ejemplo, el rol vinculado al servicio podría estar utilizando seis recursos y el servicio podría estar devolviendo información solo acerca de cinco de ellos. Si limpia los cinco recursos y envía la solicitud de eliminación del rol de nuevo, se producirá un error y el servicio informará del recurso restante. Un servicio podría informar de todos los recursos, algunos o ninguno. Para obtener información sobre cómo limpiar los recursos de un servicio que no informa de ningún recurso, consulte Servicios de AWS esa sección sobre cómo trabajar con IAM. Identifique su servicio en la tabla y haga clic en el enlace Yes (Sí) para consultar la documentación relacionada con los roles vinculados a dicho servicio.

Regiones compatibles para funciones AWS Batch vinculadas al servicio

AWS Batch admite el uso de funciones vinculadas al servicio en todas las regiones en las que el servicio está disponible. Para obtener más información, consulte Puntos de enlace de AWS Batch.