

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.

# Configuración de Etiquetas personalizadas de Amazon Rekognition
<a name="setting-up"></a>

En las siguientes instrucciones, aprenderá a configurar la consola de Etiquetas personalizadas de Amazon Rekognition y el SDK.

Tenga en cuenta que puede utilizar la consola de Etiquetas personalizadas de Amazon Rekognition con los siguientes navegadores:
+ **Chrome**: versión 21 o posterior
+ **Firefox**: versión 27 o posterior
+ **Microsoft Edge**: versión 88 o posterior
+ **Safari**: versión 7 o posterior. No es posible usar Safari para dibujar cuadros delimitadores a través de la consola de Etiquetas personalizadas de Amazon Rekognition. Para obtener más información, consulte [Etiquetado de objetos con cuadros delimitadores](md-localize-objects.md).

Antes de usar Etiquetas personalizadas de Amazon Rekognition por primera vez, complete las siguientes tareas:

**Topics**
+ [Paso 1: Crea una AWS cuenta](su-account.md)
+ [Paso 2: Configurar los permisos de la consola de Etiquetas personalizadas de Amazon Rekognition](su-console-policy.md)
+ [Paso 3: Crear un bucket de consola](su-create-console-bucket.md)
+ [Paso 4: Configure y AWS CLI AWS SDKs](su-awscli-sdk.md)
+ [Paso 5: (Opcional) Cifrar los archivos de entrenamiento](su-encrypt-bucket.md)
+ [Paso 6: (Opcional) Asociar conjuntos de datos anteriores a nuevos proyectos](su-associate-prior-dataset.md)

# Paso 1: Crea una AWS cuenta
<a name="su-account"></a>

En este paso, crearás una AWS cuenta, crearás un usuario administrativo y aprenderás a conceder acceso programático al AWS SDK. 

**Topics**
+ [Inscríbase en una Cuenta de AWS](#sign-up-for-aws)
+ [Creación de un usuario con acceso administrativo](#create-an-admin)
+ [Acceso programático](#su-sdk-programmatic-access)

## Inscríbase en una Cuenta de AWS
<a name="sign-up-for-aws"></a>

Si no tiene uno Cuenta de AWS, complete los siguientes pasos para crearlo.

**Para suscribirte a una Cuenta de AWS**

1. Abrir [https://portal.aws.amazon.com/billing/registro](https://portal.aws.amazon.com/billing/signup).

1. Siga las instrucciones que se le indiquen.

   Parte del procedimiento de registro consiste en recibir una llamada telefónica o mensaje de texto e indicar un código de verificación en el teclado del teléfono.

   Cuando te registras en un Cuenta de AWS, *Usuario raíz de la cuenta de AWS*se crea un. El usuario raíz tendrá acceso a todos los Servicios de AWS y recursos de esa cuenta. Como práctica recomendada de seguridad, asigne acceso administrativo a un usuario y utilice únicamente el usuario raíz para realizar [Tareas que requieren acceso de usuario raíz](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_root-user.html#root-user-tasks).

AWS te envía un correo electrónico de confirmación una vez finalizado el proceso de registro. En cualquier momento, puede ver la actividad de su cuenta actual y administrarla accediendo a [https://aws.amazon.com/](https://aws.amazon.com/)y seleccionando **Mi cuenta**.

## Creación de un usuario con acceso administrativo
<a name="create-an-admin"></a>

Después de crear un usuario administrativo Cuenta de AWS, asegúrelo Usuario raíz de la cuenta de AWS AWS IAM Identity Center, habilite y cree un usuario administrativo para no usar el usuario root en las tareas diarias.

**Proteja su Usuario raíz de la cuenta de AWS**

1.  Inicie sesión [Consola de administración de AWS](https://console.aws.amazon.com/)como propietario de la cuenta seleccionando el **usuario root** e introduciendo su dirección de Cuenta de AWS correo electrónico. En la siguiente página, escriba su contraseña.

   Para obtener ayuda para iniciar sesión con el usuario raíz, consulte [Iniciar sesión como usuario raíz](https://docs.aws.amazon.com/signin/latest/userguide/console-sign-in-tutorials.html#introduction-to-root-user-sign-in-tutorial) en la *Guía del usuario de AWS Sign-In *.

1. Active la autenticación multifactor (MFA) para el usuario raíz.

   Para obtener instrucciones, consulte [Habilitar un dispositivo MFA virtual para el usuario Cuenta de AWS raíz (consola)](https://docs.aws.amazon.com/IAM/latest/UserGuide/enable-virt-mfa-for-root.html) en la Guía del usuario de *IAM*.

**Creación de un usuario con acceso administrativo**

1. Activar IAM Identity Center.

   Consulte las instrucciones en [Activar AWS IAM Identity Center](https://docs.aws.amazon.com//singlesignon/latest/userguide/get-set-up-for-idc.html) en la *Guía del usuario de AWS IAM Identity Center *.

1. En IAM Identity Center, conceda acceso administrativo a un usuario.

   Para ver un tutorial sobre su uso Directorio de IAM Identity Center como fuente de identidad, consulte [Configurar el acceso de los usuarios con la configuración predeterminada Directorio de IAM Identity Center en la](https://docs.aws.amazon.com//singlesignon/latest/userguide/quick-start-default-idc.html) Guía del *AWS IAM Identity Center usuario*.

**Inicio de sesión como usuario con acceso de administrador**
+ Para iniciar sesión con el usuario de IAM Identity Center, use la URL de inicio de sesión que se envió a la dirección de correo electrónico cuando creó el usuario de IAM Identity Center.

  Para obtener ayuda para iniciar sesión con un usuario del Centro de identidades de IAM, consulte [Iniciar sesión en el portal de AWS acceso](https://docs.aws.amazon.com/signin/latest/userguide/iam-id-center-sign-in-tutorial.html) en la *Guía del AWS Sign-In usuario*.

**Concesión de acceso a usuarios adicionales**

1. En IAM Identity Center, cree un conjunto de permisos que siga la práctica recomendada de aplicar permisos de privilegios mínimos.

   Para conocer las instrucciones, consulte [Create a permission set](https://docs.aws.amazon.com//singlesignon/latest/userguide/get-started-create-a-permission-set.html) en la *Guía del usuario de AWS IAM Identity Center *.

1. Asigne usuarios a un grupo y, a continuación, asigne el acceso de inicio de sesión único al grupo.

   Para conocer las instrucciones, consulte [Add groups](https://docs.aws.amazon.com//singlesignon/latest/userguide/addgroups.html) en la *Guía del usuario de AWS IAM Identity Center *.

## Acceso programático
<a name="su-sdk-programmatic-access"></a>

Los usuarios necesitan acceso programático si quieren interactuar con personas AWS ajenas a. Consola de administración de AWS La forma de conceder el acceso programático depende del tipo de usuario que acceda. AWS

Para conceder acceso programático a los usuarios, elija una de las siguientes opciones.


****  

| ¿Qué usuario necesita acceso programático? | Para | Mediante | 
| --- | --- | --- | 
| IAM | (Recomendado) Utilice las credenciales de la consola como credenciales temporales para firmar las solicitudes programáticas dirigidas al AWS CLI AWS SDKs, o. AWS APIs |  Siga las instrucciones de la interfaz que desea utilizar: [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/rekognition/latest/customlabels-dg/su-account.html)  | 
|  Identidad del personal (Usuarios administrados en el IAM Identity Center)  | Utilice credenciales temporales para firmar las solicitudes programáticas dirigidas al AWS CLI, AWS SDKs, o AWS APIs. |  Siga las instrucciones de la interfaz que desea utilizar: [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/rekognition/latest/customlabels-dg/su-account.html)  | 
| IAM | Utilice credenciales temporales para firmar las solicitudes programáticas dirigidas al AWS CLI AWS SDKs, o. AWS APIs | Siga las instrucciones de [Uso de credenciales temporales con AWS recursos](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_temp_use-resources.html) de la Guía del usuario de IAM. | 
| IAM | (No recomendado)Utilice credenciales de larga duración para firmar las solicitudes programáticas dirigidas al AWS CLI AWS SDKs, o. AWS APIs |  Siga las instrucciones de la interfaz que desea utilizar: [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/rekognition/latest/customlabels-dg/su-account.html)  | 

# Paso 2: Configurar los permisos de la consola de Etiquetas personalizadas de Amazon Rekognition
<a name="su-console-policy"></a>

Para usar la consola de Amazon Rekognition, debe tener los permisos adecuados. Si desea almacenar sus archivos de entrenamiento en un bucket diferente al [bucket de consola](su-create-console-bucket.md), necesitará permisos adicionales.

**Topics**
+ [Permiso de acceso a la consola](#su-console-access)
+ [Acceso a buckets de Amazon S3 externos](#su-external-buckets)
+ [Asignación de permisos](#su-assign-permissions)

## Permiso de acceso a la consola
<a name="su-console-access"></a>

Para utilizar la consola Amazon Rekognition Custom Labels, necesita la siguiente política de IAM que cubre Amazon S3 SageMaker , AI Ground Truth y Amazon Rekognition Custom Labels. Para conocer cómo asignar permisos, consulte [Asignación de permisos](#su-assign-permissions).

------
#### [ JSON ]

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Effect": "Allow",
            "Action": [
                "s3:ListBucket",
                "s3:ListAllMyBuckets"
            ],
            "Resource": "*"
        },
        {
            "Sid": "s3Policies",
            "Effect": "Allow",
            "Action": [
                "s3:ListBucket",
                "s3:CreateBucket",
                "s3:GetBucketAcl",
                "s3:GetBucketLocation",
                "s3:GetObject",
                "s3:GetObjectAcl",
                "s3:GetObjectVersion",
                "s3:GetObjectTagging",
                "s3:GetBucketVersioning",
                "s3:GetObjectVersionTagging",
                "s3:PutBucketCORS",
                "s3:PutLifecycleConfiguration",
                "s3:PutBucketPolicy",
                "s3:PutObject",
                "s3:PutObjectTagging",
                "s3:PutBucketVersioning",
                "s3:PutObjectVersionTagging"
            ],
            "Resource": [
                "arn:aws:s3:::custom-labels-console-*"

            ]
        },
        {
            "Sid": "rekognitionPolicies",
            "Effect": "Allow",
            "Action": [
                "rekognition:*"
            ],
            "Resource": "*"
        },
        {
            "Sid": "groundTruthPolicies",
            "Effect": "Allow",
            "Action": [
                "groundtruthlabeling:*"
            ],
            "Resource": "*"
        }
    ]
}
```

------

## Acceso a buckets de Amazon S3 externos
<a name="su-external-buckets"></a>

Cuando abre por primera vez la consola Amazon Rekognition Custom Labels en una nueva AWS región, Amazon Rekognition Custom Labels crea un depósito (depósito de consola) que se utiliza para almacenar los archivos del proyecto. También puede utilizar su propio bucket de Amazon S3 (bucket externo) para subir las imágenes o el archivo de manifiesto en la consola. Para usar un bucket externo, agregue el siguiente bloque de políticas a la política anterior. Sustituya `amzn-s3-demo-bucket` por el nombre del bucket.

```
        {
            "Sid": "s3ExternalBucketPolicies",
            "Effect": "Allow",
            "Action": [
                "s3:GetBucketAcl",
                "s3:GetBucketLocation",
                "s3:GetObject",
                "s3:GetObjectAcl",
                "s3:GetObjectVersion",
                "s3:GetObjectTagging",
                "s3:ListBucket",
                "s3:PutObject"
            ],
            "Resource": [
                "arn:aws:s3:::amzn-s3-demo-bucket*"
            ]
        }
```

## Asignación de permisos
<a name="su-assign-permissions"></a>

Para dar acceso, agregue permisos a los usuarios, grupos o roles:
+ Usuarios y grupos en: AWS IAM Identity Center

  Cree un conjunto de permisos. Siga las instrucciones de [Creación de un conjunto de permisos](https://docs.aws.amazon.com//singlesignon/latest/userguide/howtocreatepermissionset.html) en la *Guía del usuario de AWS IAM Identity Center *.
+ Usuarios gestionados en IAM a través de un proveedor de identidades:

  Cree un rol para la federación de identidades. Siga las instrucciones descritas en [Creación de un rol para un proveedor de identidad de terceros (federación)](https://docs.aws.amazon.com//IAM/latest/UserGuide/id_roles_create_for-idp.html) en la *Guía del usuario de IAM*.
+ Usuarios de IAM:
  + Cree un rol que el usuario pueda aceptar. Siga las instrucciones descritas en [Creación de un rol para un usuario de IAM](https://docs.aws.amazon.com//IAM/latest/UserGuide/id_roles_create_for-user.html) en la *Guía del usuario de IAM*.
  + (No recomendado) Adjunte una política directamente a un usuario o agregue un usuario a un grupo de usuarios. Siga las instrucciones descritas en [Adición de permisos a un usuario (consola)](https://docs.aws.amazon.com//IAM/latest/UserGuide/id_users_change-permissions.html#users_change_permissions-add-console) de la *Guía del usuario de IAM*.

# Paso 3: Crear un bucket de consola
<a name="su-create-console-bucket"></a>

Utilice un proyecto de Etiquetas personalizadas de Amazon Rekognition para crear y administrar sus modelos. Cuando abre por primera vez la consola Amazon Rekognition Custom Labels en una nueva AWS región, Amazon Rekognition Custom Labels crea un bucket de Amazon S3 (bucket de consola) para almacenar sus proyectos. Debe anotar el nombre del bucket de la consola en algún lugar donde pueda consultarlo más adelante, ya que es posible que necesite usar el nombre del bucket en las operaciones del AWS SDK o en las tareas de la consola, como la creación de un conjunto de datos.

El formato del nombre del bucket es `custom-labels-console` - *<region>* -*<random value>*. El valor aleatorio garantiza que no haya colisiones entre los nombres de los buckets.

**Cómo crear un bucket de consola**

1. Asegúrese de que el usuario tenga los permisos correspondientes. Para obtener más información, consulte [Permiso de acceso a la consola](su-console-policy.md#su-console-access).

1. Inicie sesión en la consola Amazon Rekognition Consola de administración de AWS y ábrala en. [https://console.aws.amazon.com/rekognition/](https://console.aws.amazon.com/rekognition/)

1. Elija **Comenzar**.

1. Si es la primera vez que abre la consola en la región de AWS actual, realice lo siguiente en el cuadro de diálogo **Configuración inicial**:

   1. Anote el nombre del bucket de Amazon S3 que aparece. Necesitará esta información más tarde.

   1. Seleccione **Crear bucket de S3** para permitir que Etiquetas personalizadas de Amazon Rekognition cree un bucket de Amazon S3 (bucket de consola) en su nombre.

1. Cierre la ventana del navegador.

# Paso 4: Configure y AWS CLI AWS SDKs
<a name="su-awscli-sdk"></a>

Puede utilizar las etiquetas AWS Command Line Interface personalizadas Amazon Rekognition con () y.AWS CLI AWS SDKs Si necesita ejecutar las operaciones de Etiquetas personalizadas de Amazon Rekognition a través del terminal, instale la AWS CLI. Si va a crear una aplicación, descargue el AWS SDK del lenguaje de programación que utilice. 

**Topics**
+ [Instale los AWS SDK](#sdk-install-sdk)
+ [Concesión de acceso programático](su-sdk-programmatic-access.md)
+ [Configuración de permisos de SDK](su-sdk-permissions.md)
+ [Llamar a una operación de Etiquetas personalizadas de Amazon Rekognition](su-sdk-list-projects.md)

## Instale los AWS SDK
<a name="sdk-install-sdk"></a>

Siga los pasos para descargar y configurar la AWS SDKs.

**Para configurar el AWS CLI y el AWS SDKs**
+ Descargue e instale el [AWS CLI](https://docs.aws.amazon.com/cli/latest/userguide/getting-started-install.html)y el AWS SDKs que desee usar. Esta guía proporciona ejemplos AWS CLI de [Java](https://docs.aws.amazon.com/sdk-for-java/latest/developer-guide/setup.html) y [Python](https://boto3.amazonaws.com/v1/documentation/api/latest/guide/quickstart.html#installation). Para obtener información sobre la instalación AWS SDKs, consulte [Herramientas para Amazon Web Services](https://aws.amazon.com/tools/).

# Concesión de acceso programático
<a name="su-sdk-programmatic-access"></a>

Puede ejecutar los ejemplos de código AWS CLI y los ejemplos de código de esta guía en su ordenador local o en otros AWS entornos, como una instancia de Amazon Elastic Compute Cloud. Para ejecutar los ejemplos, debes conceder acceso a las operaciones del AWS SDK que utilizan los ejemplos. 

**Topics**
+ [Ejecución del código en su equipo local](#su-sdk-programmatic-access-general)
+ [Ejecutar código en AWS entornos](#su-sdk-aws-environments)

## Ejecución del código en su equipo local
<a name="su-sdk-programmatic-access-general"></a>

Para ejecutar código en un equipo local, te recomendamos que utilices credenciales de corta duración para conceder al usuario acceso a las operaciones AWS del SDK. Para obtener información específica sobre la ejecución del código AWS CLI y los ejemplos de código en un equipo local, consulte[Uso de un perfil en su equipo local](#su-sdk-programmatic-access-customlabels-examples).

Los usuarios necesitan acceso mediante programación si quieren interactuar con personas AWS ajenas a. Consola de administración de AWS La forma de conceder el acceso programático depende del tipo de usuario que acceda. AWS

Para conceder acceso programático a los usuarios, elija una de las siguientes opciones.


****  

| ¿Qué usuario necesita acceso programático? | Para | Mediante | 
| --- | --- | --- | 
| IAM | (Recomendado) Utilice las credenciales de la consola como credenciales temporales para firmar las solicitudes programáticas dirigidas al AWS CLI AWS SDKs, o. AWS APIs |  Siga las instrucciones de la interfaz que desea utilizar: [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/rekognition/latest/customlabels-dg/su-sdk-programmatic-access.html)  | 
|  Identidad del personal (Usuarios administrados en el IAM Identity Center)  | Utilice credenciales temporales para firmar las solicitudes programáticas dirigidas al AWS CLI, AWS SDKs, o AWS APIs. |  Siga las instrucciones de la interfaz que desea utilizar: [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/rekognition/latest/customlabels-dg/su-sdk-programmatic-access.html)  | 
| IAM | Utilice credenciales temporales para firmar las solicitudes programáticas dirigidas al AWS CLI AWS SDKs, o. AWS APIs | Siga las instrucciones de [Uso de credenciales temporales con AWS recursos](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_temp_use-resources.html) de la Guía del usuario de IAM. | 
| IAM | (No recomendado)Utilice credenciales de larga duración para firmar las solicitudes programáticas dirigidas al AWS CLI AWS SDKs, o. AWS APIs |  Siga las instrucciones de la interfaz que desea utilizar: [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/rekognition/latest/customlabels-dg/su-sdk-programmatic-access.html)  | 

### Uso de un perfil en su equipo local
<a name="su-sdk-programmatic-access-customlabels-examples"></a>

Puedes ejecutar los ejemplos AWS CLI y códigos de esta guía con las credenciales a corto plazo que hayas creado. [Ejecución del código en su equipo local](#su-sdk-programmatic-access-general) Para obtener las credenciales y otra información de configuración, en los ejemplos se utiliza un perfil denominado `custom-labels-access`. Por ejemplo: 

```
session = boto3.Session(profile_name='custom-labels-access')
rekognition_client = session.client("rekognition")
```

El usuario que representa el perfil debe tener permisos para llamar a las operaciones del SDK de Amazon Rekognition Custom Labels AWS y a otras operaciones del SDK que se necesitan en los ejemplos. Para obtener más información, consulte [Configuración de permisos de SDK](su-sdk-permissions.md). Para asignar permisos, consulte [Configuración de permisos de SDK](su-sdk-permissions.md).

Para crear un perfil que funcione con los ejemplos de código AWS CLI y, elija una de las siguientes opciones. Asegúrese de que el nombre del perfil que haya creado es `custom-labels-access`.
+ Usuarios administrados por IAM: siga las instrucciones que aparecen en [Cambiar a un rol de IAM (AWS CLI)](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_use_switch-role-cli.html). 
+ Identidad de la fuerza laboral (usuarios gestionados por AWS IAM Identity Center): siga las instrucciones que se indican en [Configuración de la AWS CLI que va a utilizar AWS IAM Identity Center](https://docs.aws.amazon.com/cli/latest/userguide/cli-configure-sso.html). Para los ejemplos de código, le recomendamos usar un entorno de desarrollo integrado (IDE), que sea compatible con el kit de herramientas de AWS y que permita la autenticación a través del IAM Identity Center. Para ver los ejemplos de Java, consulte [Comenzar a crear con Java](https://aws.amazon.com/developer/language/java/). Para ver los ejemplos de Java, consulte [Comenzar a crear con Python](https://aws.amazon.com/developer/tools/#IDE_and_IDE_Toolkits). Para obtener más información, consulte [Credenciales de IAM Identity Center](https://docs.aws.amazon.com/sdkref/latest/guide/feature-sso-credentials.html).

**nota**  
Puede usar el código para obtener las credenciales a corto plazo. Para obtener más información, consulte [Cambiar a un rol de IAM (AWS API)](https://docs.aws.amazon.com//IAM/latest/UserGuide/id_roles_use_switch-role-api.html). En el caso del Identity Center IAM, consiga las credenciales a corto plazo de un rol siguiendo las instrucciones que se indican en [Obtener las credenciales de rol de IAM para el acceso a la CLI](https://docs.aws.amazon.com/singlesignon/latest/userguide/howtogetcredentials.html). 

## Ejecutar código en AWS entornos
<a name="su-sdk-aws-environments"></a>

No debes usar las credenciales de usuario para firmar las llamadas al AWS SDK en AWS entornos, como el código de producción que se ejecuta en una AWS Lambda función. En su lugar, debe configurar un rol que defina los permisos que necesita el código. Tras esto, asocie la función al entorno en el que se ejecute el código. La forma de asignar el rol y hacer que las credenciales temporales estén disponibles varía en función del entorno en el que se ejecute el código:
+ AWS Lambda función: utilice las credenciales temporales que Lambda proporciona automáticamente a la función cuando asume la función de ejecución de la función Lambda. Las credenciales están disponibles en las variables de entorno de Lambda. No es necesario especificar un perfil. Para obtener más información, consulte [Rol de ejecución de Lambda](https://docs.aws.amazon.com/lambda/latest/dg/lambda-intro-execution-role.html).
+ Amazon EC2: utilice el proveedor de credenciales de punto de conexión de metadatos de la instancia de Amazon EC2. El proveedor generará y actualizará automáticamente las credenciales por usted mediante el *perfil de instancia* de Amazon EC2 que asocie a la instancia de Amazon EC2. Para obtener más información, consulte [Uso de un rol de IAM para conceder permisos a aplicaciones que se ejecutan en instancias de Amazon EC2](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_use_switch-role-ec2.html).
+ Amazon Elastic Container Service: utilice el proveedor de credenciales de Container. Amazon ECS envía y actualiza las credenciales a un punto de conexión de metadatos. Un *rol de IAM de tarea* que indique proporcionará una estrategia para administrar las credenciales que utilice su aplicación. Para obtener más información, consulte [Interacción con servicios de AWS](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/task-iam-roles.html).

Para obtener más información sobre los proveedores de credenciales, consulte [Proveedores de credenciales estandarizados](https://docs.aws.amazon.com/sdkref/latest/guide/standardized-credentials.html).

# Configuración de permisos de SDK
<a name="su-sdk-permissions"></a>

Para utilizar las operaciones del SDK de Etiquetas personalizadas de Amazon Rekognition, necesita permisos de acceso a la API de Etiquetas personalizadas de Amazon Rekognition y al bucket de Amazon S3 que se utilice para el entrenamiento de modelos.

**Topics**
+ [Otorgar permisos de operaciones del SDK](#su-grant-sdk-permissions)
+ [Actualizaciones de políticas para el uso del AWS SDK](#su-sdk-policy-update)
+ [Asignación de permisos](#su-sdk-assign-permissions)

## Otorgar permisos de operaciones del SDK
<a name="su-grant-sdk-permissions"></a>

Se recomienda conceder solo los permisos necesarios para realizar una tarea (permisos de privilegios mínimos). Por ejemplo, para llamar [DetectCustomLabels](https://docs.aws.amazon.com/rekognition/latest/APIReference/API_DetectCustomLabels.html), necesita permiso para realizar una llamada. `rekognition:DetectCustomLabels` Para buscar los permisos de una operación, consulte la [referencia de API](https://docs.aws.amazon.com/rekognition/latest/APIReference/Welcome.html). 

Cuando esté comenzando con una aplicación, es posible que no conozca los permisos concretos que necesite, por lo que puede empezar con los permisos más amplios. Las políticas administradas de AWS otorgan permisos que le servirán como punto de partida. Puede utilizar la política `AmazonRekognitionCustomLabelsFullAccess` AWS gestionada para obtener acceso completo a la API de etiquetas personalizadas de Amazon Rekognition. Para obtener más información, consulte la [política administrada de AWS: AmazonRekognitionCustomLabelsFullAccess](https://docs.aws.amazon.com/rekognition/latest/dg/security-iam-awsmanpol.html#security-iam-awsmanpol-custom-labels-full-access). Cuando conozca los permisos que necesita su aplicación, cree políticas administradas por el cliente según la finalidad de uso para reducir aún más el número de permisos. Para obtener más información, consulte [Políticas administradas por el cliente](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_managed-vs-inline.html#customer-managed-policies). 

Para asignar permisos, consulte [Asignación de permisos](#su-sdk-assign-permissions).

## Actualizaciones de políticas para el uso del AWS SDK
<a name="su-sdk-policy-update"></a>

Para usar el AWS SDK con la última versión de Amazon Rekognition Custom Labels, ya no necesita conceder permisos a Amazon Rekognition Custom Labels para acceder al bucket de Amazon S3 que contiene sus imágenes de formación y pruebas. Si ha añadido permisos anteriormente, no deberá eliminarlos. Si lo desea, elimine cualquier política del bucket donde el servicio de la entidad principal sea `rekognition.amazonaws.com`. Por ejemplo:

```
"Principal": {
    "Service": "rekognition.amazonaws.com"
}
```

Para obtener más información, consulte [Uso de políticas de buckets](https://docs.aws.amazon.com/AmazonS3/latest/userguide/bucket-policies.html).

## Asignación de permisos
<a name="su-sdk-assign-permissions"></a>

Para dar acceso, agregue permisos a los usuarios, grupos o roles:
+ Usuarios y grupos en: AWS IAM Identity Center

  Cree un conjunto de permisos. Siga las instrucciones de [Creación de un conjunto de permisos](https://docs.aws.amazon.com//singlesignon/latest/userguide/howtocreatepermissionset.html) en la *Guía del usuario de AWS IAM Identity Center *.
+ Usuarios gestionados en IAM a través de un proveedor de identidades:

  Cree un rol para la federación de identidades. Siga las instrucciones descritas en [Creación de un rol para un proveedor de identidad de terceros (federación)](https://docs.aws.amazon.com//IAM/latest/UserGuide/id_roles_create_for-idp.html) en la *Guía del usuario de IAM*.
+ Usuarios de IAM:
  + Cree un rol que el usuario pueda aceptar. Siga las instrucciones descritas en [Creación de un rol para un usuario de IAM](https://docs.aws.amazon.com//IAM/latest/UserGuide/id_roles_create_for-user.html) en la *Guía del usuario de IAM*.
  + (No recomendado) Adjunte una política directamente a un usuario o agregue un usuario a un grupo de usuarios. Siga las instrucciones descritas en [Adición de permisos a un usuario (consola)](https://docs.aws.amazon.com//IAM/latest/UserGuide/id_users_change-permissions.html#users_change_permissions-add-console) de la *Guía del usuario de IAM*.

# Llamar a una operación de Etiquetas personalizadas de Amazon Rekognition
<a name="su-sdk-list-projects"></a>

Ejecute el siguiente código para confirmar que puede realizar llamadas a la API de Etiquetas personalizadas de Amazon Rekognition. El código muestra los proyectos de tu AWS cuenta, en la AWS región actual. Si no ha creado ningún proyecto anteriormente, la respuesta saldrá vacía, pero le confirmará que puede llamar a la operación `DescribeProjects`. 

En general, para llamar a una función de ejemplo es necesario un cliente de Rekognition del AWS SDK y cualquier otro parámetro obligatorio. El cliente del AWS SDK se declara en la función principal. 

Si el código no funciona, compruebe que el usuario tenga los permisos adecuados. Comprueba también que la AWS región que utilizas como etiquetas personalizadas de Amazon Rekognition no esté disponible en todas las regiones. AWS 

**Cómo llamar a una operación de Etiquetas personalizadas de Amazon Rekognition**

1. Si aún no lo ha hecho, instale y configure el y el AWS CLI . AWS SDKs Para obtener más información, consulte [Paso 4: Configure y AWS CLI AWS SDKs](su-awscli-sdk.md).

1. Utilice el siguiente código de ejemplo para ver sus proyectos.

------
#### [ CLI ]

   Usa el comando `describe-projects` para ver los proyectos en su cuenta.

   ```
   aws rekognition describe-projects \
   --profile custom-labels-access
   ```

------
#### [ Python ]

   ```
   # Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
   # SPDX-License-Identifier: Apache-2.0
   
   """
   This example shows how to describe your Amazon Rekognition Custom Labels projects.
   If you haven't previously created a project in the current AWS Region,
   the response is an empty list, but does confirm that you can call an
   Amazon Rekognition Custom Labels operation.
   """
   from botocore.exceptions import ClientError
   import boto3
   
   def describe_projects(rekognition_client):
       """
       Lists information about the projects that are in in your AWS account
       and in the current AWS Region.
   
       : param rekognition_client: A Boto3 Rekognition client.
       """
       try:
           response = rekognition_client.describe_projects()
           for project in response["ProjectDescriptions"]:
               print("Status: " + project["Status"])
               print("ARN: " + project["ProjectArn"])
               print()
           print("Done!")
       except ClientError as err:
           print(f"Couldn't describe projects. \n{err}")
           raise
   
   
   def main():
       """
       Entrypoint for script.
       """
   
       session = boto3.Session(profile_name='custom-labels-access')
       rekognition_client = session.client("rekognition")
   
       describe_projects(rekognition_client)
   
   
   if __name__ == "__main__":
       main()
   ```

------
#### [ Java V2 ]

   ```
   /*
      Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
      SPDX-License-Identifier: Apache-2.0
   */
   
   package com.example.rekognition;
   
   import java.util.ArrayList;
   import java.util.List;
   import java.util.logging.Level;
   import java.util.logging.Logger;
   
   import software.amazon.awssdk.auth.credentials.ProfileCredentialsProvider;
   import software.amazon.awssdk.regions.Region;
   import software.amazon.awssdk.services.rekognition.RekognitionClient;
   import software.amazon.awssdk.services.rekognition.model.DatasetMetadata;
   import software.amazon.awssdk.services.rekognition.model.DescribeProjectsRequest;
   import software.amazon.awssdk.services.rekognition.model.DescribeProjectsResponse;
   import software.amazon.awssdk.services.rekognition.model.ProjectDescription;
   import software.amazon.awssdk.services.rekognition.model.RekognitionException;
   
   public class Hello {
   
       public static final Logger logger = Logger.getLogger(Hello.class.getName());
   
       public static void describeMyProjects(RekognitionClient rekClient) {
   
           DescribeProjectsRequest descProjects = null;
   
           // If a single project name is supplied, build projectNames argument
   
           List<String> projectNames = new ArrayList<String>();
   
   
           descProjects = DescribeProjectsRequest.builder().build();
   
           // Display useful information for each project.
   
           DescribeProjectsResponse resp = rekClient.describeProjects(descProjects);
   
           for (ProjectDescription projectDescription : resp.projectDescriptions()) {
   
               System.out.println("ARN: " + projectDescription.projectArn());
               System.out.println("Status: " + projectDescription.statusAsString());
               if (projectDescription.hasDatasets()) {
                   for (DatasetMetadata datasetDescription : projectDescription.datasets()) {
                       System.out.println("\tdataset Type: " + datasetDescription.datasetTypeAsString());
                       System.out.println("\tdataset ARN: " + datasetDescription.datasetArn());
                       System.out.println("\tdataset Status: " + datasetDescription.statusAsString());
                   }
               }
               System.out.println();
           }
   
       }
   
       public static void main(String[] args) {
   
           try {
   
               // Get the Rekognition client
               RekognitionClient rekClient = RekognitionClient.builder()
                   .credentialsProvider(ProfileCredentialsProvider.create("custom-labels-access"))
                   .region(Region.US_WEST_2)
                   .build();
               
               // Describe projects
   
               describeMyProjects(rekClient);
   
               rekClient.close();
   
           } catch (RekognitionException rekError) {
               logger.log(Level.SEVERE, "Rekognition client error: {0}", rekError.getMessage());
               System.exit(1);
           }
   
       }
   
   }
   ```

------

# Paso 5: (Opcional) Cifrar los archivos de entrenamiento
<a name="su-encrypt-bucket"></a>

Puede elegir una de las siguientes opciones para cifrar los archivos de manifiesto y los archivos de imagen de Etiquetas personalizadas de Amazon Rekognition que se encuentran en un bucket de consola o en un bucket externo de Amazon S3.
+ Use una clave de Amazon S3 (SSE-S3).
+ Usa tu AWS KMS key. 
**nota**  
El proceso de llamada a la [entidad principal de IAM](https://docs.aws.amazon.com/IAM/latest/UserGuide/intro-structure.html#intro-structure-principal%23intro-structure-principal) necesita una serie de permisos para descifrar los archivos. Para obtener más información, consulte [Descifrar archivos cifrados con AWS Key Management Service](#su-kms-encryption).

Para obtener más información sobre el cifrado de un bucket de Amazon S3, consulte [Ajuste del comportamiento predeterminado del cifrado del servidor para buckets de Amazon S3](https://docs.aws.amazon.com/AmazonS3/latest/userguide/bucket-encryption.html).

## Descifrar archivos cifrados con AWS Key Management Service
<a name="su-kms-encryption"></a>

Si utiliza AWS Key Management Service (KMS) para cifrar los archivos de manifiesto y los archivos de imagen de Amazon Rekognition Custom Labels, añada el principal de IAM que denomina Amazon Rekognition Custom Labels a la política de claves de la clave de KMS. De este modo, Etiquetas personalizadas de Amazon Rekognition podrá descifrar los archivos de manifiesto y de imagen antes del entrenamiento. Para obtener más información, consulte [Mi bucket de Amazon S3 tiene cifrado predeterminado mediante una clave de AWS KMS personalizada. ¿Cómo puedo permitir que los usuarios descarguen y suban contenido al bucket?](https://aws.amazon.com/premiumsupport/knowledge-center/s3-bucket-access-default-encryption/)

La entidad principal de IAM necesita los siguientes permisos en la clave de KMS.
+ kms: GenerateDataKey
+ kms:Decrypt

Para obtener más información, consulte [Protección de datos mediante el cifrado del servidor con claves de KMS almacenadas en AWS Key Management Service (SSE-KMS)](https://docs.aws.amazon.com/AmazonS3/latest/userguide/UsingKMSEncryption.html).

## Cifrado de imágenes de entrenamiento y de prueba copiadas
<a name="w2aab8c21c11"></a>

Para entrenar el modelo, Etiquetas personalizadas de Amazon Rekognition hace una copia de las imágenes de entrenamiento y de prueba de origen. De forma predeterminada, las imágenes copiadas se cifran en reposo con una clave que AWS posee y administra. También puede optar por utilizar su propia AWS KMS key. Si usa su propia clave de KMS, necesitará los siguientes permisos en la clave de KMS.
+ km: CreateGrant
+ km: DescribeKey

Si lo desea, puede indicar la clave de KMS cuando entrene el modelo con la consola o cuando llama a la operación `CreateProjectVersion`. La clave de KMS que utilice no tiene por qué ser la misma clave de KMS usada para cifrar los archivos de manifiesto y de imagen en el bucket de Amazon S3. Para obtener más información, consulte [Paso 5: (Opcional) Cifrar los archivos de entrenamiento](#su-encrypt-bucket). 

Para obtener más información, consulte [Conceptos de AWS Key Management Service](https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#master_keys). Las imágenes de origen no se ven afectadas.

Para obtener más información sobre el entrenamiento de un modelo, consulte [Entrenamiento de un modelo de Etiquetas personalizadas de Amazon Rekognition](training-model.md).

# Paso 6: (Opcional) Asociar conjuntos de datos anteriores a nuevos proyectos
<a name="su-associate-prior-dataset"></a>

Etiquetas personalizadas de Amazon Rekognition ahora administra conjuntos de datos con proyectos. Los conjuntos de datos previos (antiguos) que haya creado son de solo lectura y deben estar asociados a un proyecto antes de poder usarlos. Al abrir la página de detalles de un proyecto a través de la consola, asociamos automáticamente al proyecto los conjuntos de datos que entrenaron la última versión del modelo del proyecto. La asociación automática de un conjunto de datos con un proyecto no se produce si se utiliza el AWS SDK.

Los conjuntos de datos anteriores no asociados son los que no se han usado entrenar un modelo o se usaron para entrenar la versión anterior de un modelo. En la página de conjuntos de datos anteriores aparecen todos los conjuntos de datos asociados y no asociados.

Para usar un conjunto de datos anterior no asociado, cree un nuevo proyecto en la página de conjuntos de datos anteriores. El conjunto de datos se convertirá en el conjunto de datos de entrenamiento del nuevo proyecto. También puede crear un proyecto para un conjunto de datos ya asociado, ya que los conjuntos de datos anteriores pueden tener varias asociaciones. 

**Cómo asociar un conjunto de datos anterior a un proyecto nuevo**

1. Abra la consola Amazon Rekognition en. [https://console.aws.amazon.com/rekognition/](https://console.aws.amazon.com/rekognition/)

1. En el panel izquierdo, elija **Usar etiquetas personalizadas**. Se abrirá la página de inicio de Etiquetas personalizadas de Amazon Rekognition. 

1. En el panel de navegación de la izquierda, elija **Conjuntos de datos anteriores**.

1. En la vista de conjuntos de datos, elija el conjunto de datos anterior que desee asociar a un proyecto.

1. Elija **Crear proyecto con conjunto de datos**.

1. En la ventana **Crear un proyecto**, en **Nombre del proyecto**, escriba un nombre para el proyecto.

1. Seleccione **Crear proyecto** para crearlo. La creación del proyecto puede tardar un tiempo.

1. Use el proyecto. Para obtener más información, consulte [Qué es Etiquetas personalizadas de Amazon Rekognition](understanding-custom-labels.md). 

## Uso de un conjunto de datos anterior como conjunto de datos de prueba
<a name="su-prior-dataset-as-test-dataset"></a>

Puede usar un conjunto de datos anterior como conjunto de datos de prueba en un proyecto existente asociando primero el conjunto de datos anterior a un proyecto nuevo. Tras esto, debe copiar el conjunto de datos de entrenamiento del nuevo proyecto al conjunto de datos de prueba del proyecto existente.

**Cómo usar un conjunto de datos anterior como conjunto de datos de prueba**

1. Siga las instrucciones que aparecen en [Paso 6: (Opcional) Asociar conjuntos de datos anteriores a nuevos proyectos](#su-associate-prior-dataset) para asociar el conjunto de datos anterior a un proyecto nuevo. 

1. Cree el conjunto de datos de prueba del proyecto existente copiando el conjunto de datos de entrenamiento del nuevo proyecto. Para obtener más información, consulte [Copia de contenido de un conjunto de datos existente](md-create-dataset-existing-dataset.md).

1. Siga las instrucciones que aparecen en [Eliminación de un proyecto de Etiquetas personalizadas de Amazon Rekognition (consola)](mp-delete-project.md#mp-delete-project-console) para eliminar el nuevo proyecto. 

También tiene la opción de crear el conjunto de datos de prueba mediante el archivo de manifiesto del conjunto de datos anterior. Para obtener más información, consulte [Creación de un archivo de manifiesto](md-create-manifest-file.md).