Cómo funciona Amazon Rekognition con IAM - Amazon Rekognition

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.

Cómo funciona Amazon Rekognition con IAM

Antes de utilizar IAM para administrar el acceso a Amazon Rekognition, debe conocer qué características de IAM están disponibles con Amazon Rekognition. Para obtener una visión general de cómo Amazon Rekognition AWS y otros servicios funcionan con IAM AWS , consulte Servicios que funcionan con IAM en la Guía del usuario de IAM.

Políticas de Amazon Rekognition basadas en identidades

Con las políticas basadas en identidades de IAM, puede especificar las acciones y los recursos permitidos o denegados, así como las condiciones en las que se permiten o deniegan las acciones. Amazon Rekognition admite acciones, claves de condiciones y recursos específicos. Para obtener información sobre todos los elementos que utiliza en una política JSON, consulte Referencia de los elementos de las políticas JSON de IAM en la Guía del usuario de IAM.

Acciones

Los administradores pueden usar las políticas de AWS JSON para especificar quién tiene acceso a qué. Es decir, qué entidad principal puedes realizar acciones en qué recursos y en qué condiciones.

El elemento Action de una política JSON describe las acciones que puedes utilizar para conceder o denegar el acceso en una política. Las acciones políticas suelen tener el mismo nombre que la operación de AWS API asociada. Hay algunas excepciones, como acciones de solo permiso que no tienen una operación de API coincidente. También hay algunas operaciones que requieren varias acciones en una política. Estas acciones adicionales se denominan acciones dependientes.

Incluya acciones en una política para conceder permisos y así llevar a cabo la operación asociada.

Las acciones de políticas de Amazon Rekognition utilizan el siguiente prefijo antes de la acción: rekognition:. Por ejemplo, para conceder permiso a alguien para detectar objetos, escenas o conceptos en una imagen con la operación DetectLabels de la API de Amazon Rekognition, debe incluir la acción rekognition:DetectLabels en su política. Las instrucciones de la política deben incluir un elemento Action o un elemento NotAction. Amazon Rekognition define su propio conjunto de acciones que describen las tareas que se pueden realizar con este servicio.

Para especificar varias acciones en una única instrucción, sepárelas con comas del siguiente modo:

"Action": [ "rekognition:action1", "rekognition:action2"

Puede utilizar caracteres comodín para especificar varias acciones (*). Por ejemplo, para especificar todas las acciones que comiencen con la palabra Describe, incluya la siguiente acción:

"Action": "rekognition:Describe*"

Para ver una lista de las acciones de Amazon Rekognition, consulte Acciones definidas por Amazon Rekognition en la Guía del usuario de IAM.

Recursos

Los administradores pueden usar las políticas de AWS JSON para especificar quién tiene acceso a qué. Es decir, qué entidad principal puedes realizar acciones en qué recursos y en qué condiciones.

El elemento Resource de la política JSON especifica el objeto u objetos a los que se aplica la acción. Las instrucciones deben contener un elemento Resource o NotResource. Como práctica recomendada, especifique un recurso utilizando el Nombre de recurso de Amazon (ARN). Puedes hacerlo para acciones que admitan un tipo de recurso específico, conocido como permisos de nivel de recurso.

Para las acciones que no admiten permisos de nivel de recurso, como las operaciones de descripción, utiliza un carácter comodín (*) para indicar que la instrucción se aplica a todos los recursos.

"Resource": "*"

Para obtener más información sobre el formato de ARNs, consulte Amazon Resource Names (ARNs) y AWS Service Namespaces.

Por ejemplo, para especificar la colección MyCollection en la instrucción, utilice el siguiente ARN:

"Resource": "arn:aws:rekognition:us-east-1:123456789012:collection/MyCollection"

Para especificar todas las instancias que pertenecen a una cuenta específica, utilice el carácter comodín (*):

"Resource": "arn:aws:rekognition:us-east-1:123456789012:collection/*"

Algunas acciones de Amazon Rekognition, como las que se utilizan para crear recursos, no se pueden llevar a cabo en un recurso específico. En dichos casos, debe utilizar el carácter comodín (*).

"Resource": "*"

Para ver una lista de los tipos de recursos de Amazon Rekognition ARNs y sus tipos de recursos, consulte Recursos definidos por Amazon Rekognition en la Guía del usuario de IAM. Para obtener información acerca de las acciones con las que puede especificar el ARN de cada recurso, consulte Acciones definidas por Amazon Rekognition.

Claves de condición

Amazon Rekognition no proporciona ninguna clave de condición específica del servicio, pero sí admite el uso de algunas claves de condición globales. Para ver todas las claves de condición AWS globales, consulte las claves de contexto de condición AWS globales en la Guía del usuario de IAM.

Políticas basadas en recursos de Amazon Rekognition

Políticas basadas en recursos de Amazon Rekognition para operaciones de copia de modelos de Etiquetas personalizadas. Para obtener más información, vea Amazon Rekognition resource-based policy examples.

Otros servicios, como Amazon S3, también admiten políticas de permisos basadas en recursos. Por ejemplo, puede asociar una política a un bucket de S3 para administrar los permisos de acceso a dicho bucket.

Para tener acceso a las imágenes almacenadas en un bucket de Amazon S3, debe tener permiso de acceso al objeto en el bucket de S3. Con este permiso, Amazon Rekognition puede descargar imágenes del bucket de S3. El siguiente ejemplo de política permite al usuario realizar la s3:GetObject acción en el bucket de S3 denominado amzn-s3-demo-bucket3.

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": "s3:GetObject", "Resource": [ "arn:aws:s3:::amzn-s3-demo-bucket3/*" ] } ] }

Para usar un bucket de S3 con el control de versiones habilitado, añada la acción s3:GetObjectVersion, como se muestra en el siguiente ejemplo.

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "s3:GetObject", "s3:GetObjectVersion" ], "Resource": [ "arn:aws:s3:::amzn-s3-demo-bucket3/*" ] } ]

Roles de IAM de Amazon Rekognition

Un rol de IAM es una entidad de tu cuenta que tiene permisos específicos. AWS

Uso de credenciales temporales con Amazon Rekognition

Puede utilizar credenciales temporales para iniciar sesión con federación, asumir un rol de IAM o asumir un rol de acceso entre cuentas. Para obtener credenciales de seguridad temporales, puede llamar a operaciones de AWS STS API como AssumeRoleo GetFederationToken.

Amazon Rekognition admite el uso de credenciales temporales.

Roles vinculados a servicios

Los roles vinculados a un servicio permiten a AWS los servicios acceder a los recursos de otros servicios para completar una acción en tu nombre. Los roles vinculados a servicios aparecen en la cuenta de IAM y son propiedad del servicio. Un administrador de IAM puede ver, pero no editar, los permisos de los roles vinculados a servicios.

Amazon Rekognition no admite roles vinculados a servicios.

Roles de servicio

Esta característica permite que un servicio asuma un rol de servicio en su nombre. Este rol permite que el servicio obtenga acceso a los recursos de otros servicios para completar una acción en su nombre. Los roles de servicio aparecen en su cuenta de IAM y son propiedad de la cuenta. Esto significa que un administrador de IAM puede cambiar los permisos de este rol. Sin embargo, hacerlo podría deteriorar la funcionalidad del servicio.

Amazon Rekognition admite roles de servicio.

El uso de un rol de servicio puede crear un problema de seguridad en el que Amazon Rekognition se utilice para llamar a otro servicio y actuar sobre recursos a los que no debería tener acceso. Para mantener la seguridad de su cuenta, debe limitar el alcance del acceso de Amazon Rekognition únicamente a los recursos que esté utilizando. Para ello, puede adjuntar una política de confianza a su rol de servicio de IAM. Para obtener información sobre cómo hacerlo, consulte Prevención de la sustitución confusa entre servicios.

Elegir un rol de IAM en Amazon Rekognition

Al configurar Amazon Rekognition para analizar vídeos almacenados, debe elegir un rol para permitir a Amazon Rekognition acceder a Amazon SNS en su nombre. Si ha creado previamente un rol de servicio o un rol vinculado a servicios, Amazon Rekognition le proporciona una lista de roles para elegir. Para obtener más información, consulte Configuración de Amazon Rekognition Video.

Ejemplo: configuración de Amazon Rekognition para acceder a las imágenes de un bucket de Amazon S3

El siguiente es un ejemplo de cómo puede configurar Amazon Rekognition para analizar las imágenes de un bucket de Amazon S3. Si quiere utilizar Amazon Rekognition para analizar las imágenes de un bucket de Amazon S3, debe hacer lo siguiente:

  1. Asegúrese de que su usuario/rol de IAM (el cliente) tenga permiso para llamar a las operaciones de la API Amazon Rekognition pertinentes (por ejemplo, etc.) DetectLabels DetectFaces

    Adjunte una política basada en la identidad que otorgue los permisos adecuados para invocar las operaciones de API que desee. Por ejemplo, para conceder a su función permisos de llamada DetectLabelsDetectFaces, adjuntaría a su función una política similar a la siguiente:

    { "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "rekognition:DetectLabels", "rekognition:DetectFaces" // other Rekognition permissions as needed ], "Resource": "*" } ] }
  2. El servicio Amazon Rekognition necesita permiso para acceder a su bucket de Amazon S3. Cree un rol de servicio de IAM, que deberá transferir a Amazon Rekognition cuando realice llamadas a la API. Asegúrese de que la función de servicio: confía en el director s3:GetObject de servicio de Amazon Rekognition y tiene permisos para su bucket.

    La política de confianza podría tener este aspecto:

    { "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "Service": "rekognition.amazonaws.com" }, "Action": "sts:AssumeRole" } ] }

    La política basada en la identidad asociada a la función de servicio podría tener el siguiente aspecto:

    { "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": "s3:GetObject", "Resource": "arn:aws:s3:::amzn-s3-demo-bucket/*" } ] }