Permisos y seguridad en Amazon Augmented AI - Amazon SageMaker

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.

Permisos y seguridad en Amazon Augmented AI

Al utilizar Amazon Augmented AI (Amazon A2I) para crear un flujo de trabajo de revisión humana para su aplicación de ML/AI, usted crea y configura recursos en Amazon, SageMaker como plantillas de tareas para trabajadores y plantillas de tareas para trabajadores. Para configurar e iniciar un bucle humano, puede integrar Amazon A2I con otros AWS servicios, como Amazon Textract o Amazon Rekognition, o utilizar Amazon Augmented AI Runtime. API Para crear un flujo de trabajo de revisión humana e iniciar un ciclo humano, debe adjuntar determinadas políticas a su AWS Identity and Access Management rol o usuario (). IAM En concreto:

  • Cuando inicie un bucle humano con datos de entrada de imágenes a partir del 12 de enero de 2020, deberá añadir una política de CORS encabezados al bucket de Amazon S3 que contenga sus datos de entrada. Consulte CORSRequisito de permiso para obtener más información.

  • Al crear una definición de flujo, debe proporcionar un rol que le conceda permiso a Amazon A2I para acceder a Amazon S3, tanto para leer objetos que se representarán en una interfaz de usuario de tareas humanas como para escribir los resultados de la revisión humana.

    Este rol también debe tener una política de confianza adjunta para dar SageMaker permiso para asumir el rol. Esto permitirá que Amazon A2I lleve a cabo acciones de acuerdo con los permisos que usted asocie al rol.

    Consulte Agregue permisos al IAM rol utilizado para crear una definición de flujo para ver ejemplos de políticas que puede modificar y asociar a la función que utiliza para crear una definición de flujo. Estas son las políticas que se adjuntan al IAM rol que se crea en la sección Flujos de trabajo de revisión humana del área Amazon A2I de la SageMaker consola.

  • Para crear e iniciar bucles humanos, puede utilizar una API operación de un tipo de tarea integrado (como DetectModerationLabel oAnalyzeDocument) o la API operación Amazon A2I Runtime StartHumanLoop en una aplicación de aprendizaje automático personalizada. Debe adjuntar la política AmazonAugmentedAIFullAccess gestionada al usuario que invoca estas API operaciones para conceder permiso a estos servicios para utilizar las operaciones de Amazon A2I. Para saber cómo hacerlo, consulte Cree un usuario que pueda invocar Amazon API A2I Operations.

    Esta política no otorga permiso para invocar API las operaciones del AWS servicio asociadas a los tipos de tareas integradas. Por ejemplo, AmazonAugmentedAIFullAccess no concede permiso para llamar a la operación Amazon Rekognition ni a la operación DetectModerationLabel API Amazon Textract. AnalyzeDocument API También puede utilizar la política AmazonAugmentedAIIntegratedAPIAccess, más genérica, para otorgar estos permisos. Para obtener más información, consulte Cree un usuario con permisos para invocar las operaciones de Amazon A2I, Amazon Textract y Amazon Rekognition API. Esta es una buena opción si quiere conceder a un usuario amplios permisos para utilizar Amazon A2I y las operaciones de los AWS servicios API integrados.

    Si desea configurar permisos pormenorizados, consulte Ejemplos de políticas basadas en identidad de Amazon Rekognition y Ejemplos de políticas basadas en identidad de Amazon Textract para ver las políticas basadas en identidades que puede utilizar para conceder permisos para usar estos servicios individuales.

  • Para obtener una vista previa de la plantilla de interfaz de usuario de tareas de trabajo personalizada, necesita un IAM rol con permisos para leer los objetos de Amazon S3 que se renderizan en su interfaz de usuario. Consulte un ejemplo de política en Habilitar vistas previas de plantillas de tareas del trabajador .

CORSRequisito de permiso

A principios de 2020, los navegadores más utilizados, como Chrome y Firefox, cambiaron su comportamiento predeterminado para rotar las imágenes en función de los metadatos de las imágenes, denominados EXIFdatos. Anteriormente, los navegadores siempre mostraban las imágenes exactamente de la forma en que estaban almacenadas en el disco, donde normalmente no estaban giradas. Tras el cambio, las imágenes ahora giran según un elemento de los metadatos de la imagen denominado valor de orientación. Esto tiene implicaciones importantes para toda la comunidad de machine learning (ML). Por ejemplo, si no se tiene en cuenta la EXIF orientación, las aplicaciones que se utilizan para anotar imágenes pueden mostrarlas con orientaciones inesperadas y tener etiquetas incorrectas.

A partir de Chrome 89, ya no se AWS puede impedir automáticamente la rotación de las imágenes porque el grupo de estándares web W3C ha decidido que la posibilidad de controlar la rotación de las imágenes infringe la política de la web sobre el mismo origen. Por lo tanto, para garantizar que los trabajadores humanos anoten las imágenes de entrada con una orientación predecible cuando envíes solicitudes para crear un bucle humano, debes añadir una política de CORS encabezados a los compartimentos de S3 que contienen las imágenes de entrada.

importante

Si no agrega una CORS configuración a los depósitos de S3 que contenga sus datos de entrada, las tareas de revisión humana de esos objetos de datos de entrada fallarán.

Puede añadir una CORS política a un bucket de S3 que contenga datos de entrada en la consola de Amazon S3. Para configurar CORS los encabezados necesarios en el depósito de S3 que contiene las imágenes de entrada en la consola de S3, siga las instrucciones que se detallan en ¿Cómo puedo añadir el uso compartido de recursos entre dominios? CORS . Utilice el siguiente código CORS de configuración para los depósitos que alojan las imágenes. Si utilizas la consola Amazon S3 para añadir la política a tu bucket, debes usar el JSON formato.

JSON

[{ "AllowedHeaders": [], "AllowedMethods": ["GET"], "AllowedOrigins": ["*"], "ExposeHeaders": [] }]

XML

<CORSConfiguration> <CORSRule> <AllowedOrigin>*</AllowedOrigin> <AllowedMethod>GET</AllowedMethod> </CORSRule> </CORSConfiguration>

A continuación, GIF se muestran las instrucciones que se encuentran en la documentación de Amazon S3 para añadir una política de CORS encabezados mediante la consola de Amazon S3.

Gif sobre cómo añadir una política de CORS encabezados mediante la consola Amazon S3.

Agregue permisos al IAM rol utilizado para crear una definición de flujo

Para crear una definición de flujo, asocie las políticas de esta sección a la función que utilice al crear un flujo de trabajo de revisión humana en la SageMaker consola o al utilizar la CreateFlowDefinition API operación.

  • Si utiliza la consola para crear un flujo de trabajo de revisión humana, introduzca el rol Amazon Resource Name (ARN) en el campo del IAMrol al crear un flujo de trabajo de revisión humana en la consola.

  • Al crear una definición de flujo mediante elAPI, asocie estas políticas al rol que se transfiere al RoleArn parámetro de la CreateFlowDefinition operación.

Al crear un flujo de trabajo de revisión humana (definición de flujo), Amazon A2I invoca a Amazon S3 para completar la tarea. A fin de darle permiso a Amazon A2I para recuperar y almacenar los archivos en el bucket de Amazon S3, cree la siguiente política y asóciela a su rol. Por ejemplo, si las imágenes, documentos, etc. que envía para revisión humana se almacenan en un bucket de S3 denominado my_input_bucket, y si desea que las revisiones humanas se almacenen en un bucket denominado my_output_bucket, deberá crear la siguiente política.

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "s3:GetObject" ], "Resource": [ "arn:aws:s3:::my_input_bucket/*" ] }, { "Effect": "Allow", "Action": [ "s3:PutObject" ], "Resource": [ "arn:aws:s3:::my_output_bucket/*" ] } ] }

Además, el IAM rol debe tener la siguiente política de confianza para dar SageMaker permiso para asumir el rol. Para obtener más información sobre las políticas de IAM confianza, consulte la sección Políticas basadas en recursos de Políticas y permisos en la documentación de AWS Identity and Access Management.

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

Para obtener más información sobre la creación y administración de IAM funciones y políticas, consulte los siguientes temas de la Guía del AWS Identity and Access Management usuario:

Cree un usuario que pueda invocar Amazon API A2I Operations

Para usar Amazon A2I para crear e iniciar bucles humanos para Amazon Rekognition, Amazon Textract o el entorno de ejecución de Amazon A2I, debe utilizar un usuario que tenga permisos para invocar las operaciones de Amazon API A2I. Para ello, utilice la IAM consola para adjuntar la política gestionada a un usuario nuevo o existente. AmazonAugmentedAIFullAccess

Esta política otorga permiso a un usuario SageMaker API para invocar API operaciones desde la creación y administración de definiciones de flujos y desde Amazon Augmented AI Runtime API para la creación y administración de bucles humanos. Para obtener más información sobre estas API operaciones, consulte Uso APIs en Amazon Augmented AI.

AmazonAugmentedAIFullAccessno concede permisos para utilizar las operaciones de Amazon Rekognition o API Amazon Textract.

nota

También puede adjuntar la AmazonAugmentedAIFullAccess política a un IAM rol que se utilice para crear e iniciar un ciclo humano.

Para dar acceso, agregue permisos a los usuarios, grupos o roles:

Para obtener más información, consulte Añadir y eliminar permisos de IAM identidad en la Guía del AWS Identity and Access Management usuario.

Cree un usuario con permisos para invocar las operaciones de Amazon A2I, Amazon Textract y Amazon Rekognition API

Para crear un usuario que tenga permiso para invocar API las operaciones utilizadas por los tipos de tareas integradas (es decir, DetectModerationLables para Amazon AnalyzeDocument Rekognition y Amazon Textract) y permiso para API usar todas las operaciones de Amazon A2I, adjunte la política gestionada,. IAM AmazonAugmentedAIIntegratedAPIAccess Es posible que desee utilizar esta política cuando quiera conceder permisos amplios a un usuario que utilice Amazon A2I con más de un tipo de tarea. Para obtener más información sobre estas API operaciones, consulte Uso APIs en Amazon Augmented AI.

nota

También puede adjuntar la AmazonAugmentedAIIntegratedAPIAccess política a un IAM rol que se utilice para crear e iniciar un ciclo humano.

Para dar acceso, agregue permisos a los usuarios, grupos o roles:

Para obtener más información, consulte Añadir y eliminar permisos de IAM identidad en la Guía del AWS Identity and Access Management usuario.

Habilitar vistas previas de plantillas de tareas del trabajador

Para personalizar la interfaz y las instrucciones que ven los trabajadores al trabajar en las tareas, puede crear una plantilla de tarea de trabajador. Puede crear la plantilla mediante la CreateHumanTaskUioperación o la SageMaker consola.

Para obtener una vista previa de la plantilla, necesita un IAM rol con los siguientes permisos para leer los objetos de Amazon S3 que se renderizan en su interfaz de usuario.

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

Para los tipos de tareas Amazon Rekognition y Amazon Textract, puede obtener una vista previa de la plantilla en la sección Amazon Augmented AI de la consola. SageMaker Para los tipos de tareas personalizados, puede obtener una vista previa de la plantilla invocando la operación RenderUiTemplate. Para obtener una vista previa de la plantilla, siga las instrucciones del tipo de tarea:

  • SageMaker Tipos de tareas de Amazon Rekognition y Amazon Textract: en la consola, utilice el nombre de recurso de ARN Amazon () del rol en el procedimiento documentado en. Crear y eliminar una plantilla de tareas de trabajador

  • Tipos de tareas personalizados: en la RenderUiTemplate operación, utilice las funciones del ARN parámetro. RoleArn

Uso de Amazon A2I con AWS KMS buckets cifrados

Si especifica una AWS Key Management Service (AWS KMS) clave gestionada por el cliente para cifrar los datos OutputConfig de salida CreateFlowDefinition, debe añadir a esa clave una IAM política similar a la siguiente. Esta política otorga a la función de IAM ejecución que utilizas para crear tus bucles humanos permiso para usar esta clave para realizar todas las acciones enumeradas en"Action". Para obtener más información sobre estas acciones, consulta AWS KMS los permisos en la Guía para AWS Key Management Service desarrolladores.

Para usar esta política, sustituya la función de IAM servicio por ARN la "Principal" función ARN de ejecución que utiliza para crear el flujo de trabajo de revisión humana (definición de flujo). Cuando crea un trabajo de etiquetado utilizandoCreateFlowDefinition, es lo ARN que ha especificado. RoleArn Tenga en cuenta que no puede proporcionar un KmsKeyId al crear una definición de flujo en la consola.

{ "Sid": "AllowUseOfKmsKey", "Effect": "Allow", "Principal": { "AWS": "arn:aws:iam::111122223333:role/service-role/example-role" }, "Action": [ "kms:Encrypt", "kms:Decrypt", "kms:ReEncrypt*", "kms:GenerateDataKey*", "kms:DescribeKey" ], "Resource": "*" }

Permisos adicionales y recursos de seguridad