

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.

# Compartir un modelo personalizado con otro Cuenta de AWS
<a name="custom-copy-sharing"></a>

Con Amazon Comprehend, puede compartir sus modelos personalizados con otras personas para que puedan importarlos a sus cuentas de AWS . Cuando un usuario importa uno de sus modelos personalizados, crea uno nuevo en su cuenta. Su nuevo modelo duplica el que usted compartió.

Para compartir un modelo personalizado, debe asociar una política que autorice a otros a importarlo. A continuación, proporcione a esos usuarios los detalles que necesiten.

**nota**  
Cuando otros usuarios importen un modelo personalizado que hayas compartido, deberán usar el mismo que contiene tu modelo, Región de AWS por ejemplo, US East (Virginia del Norte).

**Topics**
+ [Antes de empezar](#custom-copy-sharing-prerequisites)
+ [Resource-based políticas para modelos personalizados](#custom-copy-sharing-example-policy)
+ [Paso 1: agregar una política basada en recursos a un modelo personalizado](#custom-copy-sharing-adding-policy)
+ [Paso 2: proporcionar los detalles que otros usuarios necesitan importar](#custom-copy-sharing-details)

## Antes de empezar
<a name="custom-copy-sharing-prerequisites"></a>

Antes de poder compartir un modelo, debe tener un clasificador personalizado o un reconocedor de entidades personalizado entrenados en Amazon Comprehend en su Cuenta de AWS. Para obtener más información acerca de los modelos de entrenamiento, consulte [Clasificación personalizada](how-document-classification.md) o [Reconocimiento de entidades personalizado](custom-entity-recognition.md).

### Permisos necesarios
<a name="custom-copy-sharing-prerequisites-permissions"></a>

#### Declaración de política de IAM
<a name="custom-copy-sharing-prerequisites-permissions-iam"></a>

Para poder añadir una política basada en recursos a un modelo personalizado, necesita permisos en AWS Identity and Access Management (IAM). Su usuario, grupo o rol debe tener una política asociada para que pueda crear, obtener y eliminar políticas de modelo, como se muestra en el siguiente ejemplo.

**Example Política de IAM para gestionar las políticas basadas en recursos para modelos personalizados**  

```
{
  "Effect": "Allow",
  "Action": [
    "comprehend:PutResourcePolicy",
    "comprehend:DeleteResourcePolicy",
    "comprehend:DescribeResourcePolicy"
  ],
  "Resource": "arn:aws:comprehend:{{us-west-2:111122223333}}:document-classifier/{{foo}}/version/*"
}
```

Para obtener más información acerca de cómo crear una política de IAM, consulte [Creación de políticas de IAM](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_create.html) en la *Guía del usuario de IAM*. Para obtener información sobre cómo adjuntar una política de IAM, consulte [Adición y eliminación de permisos de identidad de IAM](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_manage-attach-detach.html) en la *Guía del usuario de IAM*.

#### AWS KMS declaración de política clave
<a name="custom-copy-sharing-prerequisites-permissions-kms"></a>

Si comparte un modelo cifrado, es posible que necesite añadir permisos para AWS KMS. Este requisito depende del tipo de clave de KMS que utilice para cifrar el modelo en Amazon Comprehend. 

An **Clave propiedad de AWS**es propiedad de un AWS servicio y está gestionado por él. Si usa un Clave propiedad de AWS, no necesita agregar permisos y puede omitir esta sección. AWS KMS

Una **clave administrada por el cliente** es una clave que usted ha creado, posee y administra en su Cuenta de AWS. Si utiliza una clave administrada por el cliente, debe agregar una instrucción a la política de claves de KMS. 

La declaración de política autoriza a una o más entidades (como usuarios o cuentas) a realizar las AWS KMS operaciones necesarias para descifrar el modelo. 

Puede usar claves de condición para ayudar a prevenir el problema del suplente confuso. Para obtener más información, consulte [Cross-service prevención de diputados confusos](cross-service-confused-deputy-prevention.md).

Utilice las siguientes claves de condición en la política para validar las entidades que acceden a su clave de KMS. Cuando un usuario importa el modelo, AWS KMS comprueba que el ARN de la versión del modelo de origen coincide con la condición. Si no incluye ninguna condición en la política, las entidades principales especificadas pueden usar su clave KMS para descifrar cualquier versión del modelo:
+ [aws: SourceArn](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_condition-keys.html#condition-keys-sourcearn) — Utilice esta clave de condición con las `kms:Decrypt` acciones `kms:GenerateDataKey` y.
+ [kms: EncryptionContext](https://docs.aws.amazon.com/kms/latest/developerguide/policy-conditions.html#conditions-kms-encryption-context) — Utilice esta clave de condición con las `kms:CreateGrant` acciones `kms:GenerateDataKey``kms:Decrypt`, y.

En el siguiente ejemplo, la política autoriza Cuenta de AWS `444455556666` el uso de la versión 1 del modelo de clasificador especificado propiedad de. Cuenta de AWS `111122223333`

**Example Política de claves de KMS para acceder a una versión específica del modelo de clasificador**    
****  

```
{
  "Version":"2012-10-17",		 	 	 
  "Statement": [
    {
      "Effect": "Allow",
      "Principal": {
          "AWS":
                "arn:aws:iam::{{444455556666}}:root"
      },
      "Action": [
          "kms:Decrypt",
          "kms:GenerateDataKey"
      ],
      "Resource": "*",
      "Condition": {
          "StringEquals": {
              "aws:SourceArn":
                "arn:aws:comprehend:{{us-west-2:111122223333}}:document-classifier/{{classifierName}}/version/{{1}}"
          }
      }
    },
    {
      "Effect": "Allow",
      "Principal": {
          "AWS":  "arn:aws:iam::{{444455556666}}:root"
      },
      "Action": "kms:CreateGrant",
      "Resource": "*",
      "Condition": {
        "StringEquals": {
           "kms:EncryptionContext:aws:comprehend:arn":
              "arn:aws:comprehend:{{us-west-2:111122223333}}:document-classifier/{{classifierName}}/version/{{1}}"
        }
      }
    }
  ]
}
```

El siguiente ejemplo de política autoriza al usuario **ExampleUser **desde Cuenta de AWS `444455556666` y **ExampleRole**desde el acceso Cuenta de AWS `123456789012` a esta clave de KMS a través del servicio Amazon Comprehend. 

**Example Política de claves de KMS para permitir el acceso al servicio Amazon Comprehend (alternativa 1).**  

El siguiente ejemplo de política autoriza el acceso Cuenta de AWS `444455556666` a esta clave de KMS a través del servicio Amazon Comprehend, utilizando una sintaxis alternativa a la del ejemplo anterior. 

**Example Política de claves de KMS para permitir el acceso al servicio Amazon Comprehend (alternativa 2).**    
****  

```
{
  "Version":"2012-10-17",		 	 	 
  "Statement": [
    {
      "Effect": "Allow",
      "Principal": {
          "AWS": "arn:aws:iam::{{444455556666}}:root"
      },
      "Action": [
          "kms:Decrypt",
          "kms:GenerateDataKey",
          "kms:CreateGrant"
      ],
      "Resource": "*",
      "Condition": {
          "StringLike": {
              "kms:EncryptionContext:aws:comprehend:arn": "arn:aws:comprehend:*"
          }
      }
    }
  ]
}
```

Para obtener más información, consulte [Políticas de claves en AWS KMS](https://docs.aws.amazon.com/kms/latest/developerguide/key-policies.html) en la *Guía para desarrolladores de AWS Key Management Service *.

## Resource-based políticas para modelos personalizados
<a name="custom-copy-sharing-example-policy"></a>

Antes de que un usuario de Amazon Comprehend de otra persona Cuenta de AWS pueda importar un modelo personalizado de tu AWS cuenta, debes autorizarlo a hacerlo. Para autorizarlos, debe añadir una *política basada en recursos* a la versión del modelo que desea compartir. Una política basada en recursos es una política de IAM que asocia un recurso de AWS. 

Al asociar una política de recursos a una versión de modelo personalizada, la política autoriza a los usuarios, grupos o roles a realizar la acción de `comprehend:ImportModel` en la versión del modelo.

**Example Resource-based política para una versión de modelo personalizada**  
En este ejemplo se especifican las entidades autorizadas del atributo `Principal`. El recurso “\*” hace referencia a la versión de modelo específica a la que asocia la política.    
****  

```
{
  "Version":"2012-10-17",		 	 	 
  "Statement": [
    {
      "Effect": "Allow",
      "Action": "comprehend:ImportModel",
      "Resource": "*",
      "Principal": {
        "AWS": [
                "arn:aws:iam::{{111122223333:root}}",
                "arn:aws:iam::{{444455556666}}:user/{{ExampleUser}}",
                "arn:aws:iam::{{123456789012}}:role/{{ExampleRole}}"
         ]
      }
    }
  ]
}
```
En el caso de las políticas que asocie a los modelos personalizados, `comprehend:ImportModel` es la única acción que Amazon Comprehend admite.  
*Para obtener más información sobre las políticas basadas en recursos, consulte las políticas [y Identity-based las políticas basadas en recursos](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_identity-vs-resource.html) en la Guía del usuario de IAM.*

## Paso 1: agregar una política basada en recursos a un modelo personalizado
<a name="custom-copy-sharing-adding-policy"></a>

Puede añadir una política basada en recursos mediante la API Consola de administración de AWS AWS CLI, o Amazon Comprehend.

### Consola de administración de AWS
<a name="custom-copy-sharing-adding-policy-console"></a>

Puede utilizar Amazon Comprehend en la Consola de administración de AWS.

**Cómo añadir una política basada en recursos**

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

1. En el menú de navegación de la izquierda, en **Personalización**, elija la página que contiene su modelo personalizado: 

   1. Si comparte un clasificador de documentos personalizado, elija **Clasificación personalizada**.

   1. Si comparte un reconocedor de entidades personalizado, elija **Reconocimiento de entidades personalizado**.

1. En la lista de modelos, elija el nombre del modelo para abrir su página de detalles.

1. En **Versiones**, elija el nombre de la versión del modelo que desea compartir.

1. En la página de detalles de la versión, seleccione la pestaña **Etiquetas, VPC y política**.

1. En la sección **Resource-based de políticas**, selecciona **Editar**.

1. En la página **Editar política basada en recursos**, lleve a cabo las siguientes operaciones:

   1. En **Nombre de la política**, introduzca un nombre que le ayude a reconocer la política después de crearla.

   1. En **Autorizar**, especifique una o más de las siguientes entidades para autorizarlas a importar su modelo:    
[See the AWS documentation website for more details](http://docs.aws.amazon.com/es_es/comprehend/latest/dg/custom-copy-sharing.html)

1. En **Compartir**, puede copiar el ARN de la versión del modelo para poder compartirlo con la persona que importará el modelo. Cuando alguien importa un modelo personalizado desde otro Cuenta de AWS, se requiere el ARN de la versión del modelo.

1. Seleccione **Save**. Amazon Comprehend crea su política basada en recursos y la asocia a su modelo.

### AWS CLI
<a name="custom-copy-sharing-adding-policy-cli"></a>

Para añadir una política basada en recursos a un modelo personalizado con el AWS CLI, utilice el comando. [PutResourcePolicy](https://docs.aws.amazon.com/comprehend/latest/dg/API_PutResourcePolicy.html) El comando de la usa los siguientes parámetros:
+ `resource-arn`: el ARN del modelo personalizado, incluida la versión del modelo. 
+ `resource-policy`: un archivo JSON que define la política basada en recursos que se debe asociar al modelo personalizado. 

  También puede proporcionar la política como una cadena JSON insertada. Para proporcionar un objeto JSON válido para su política, incluya los nombres de atributos y valores entre comillas dobles. Si el cuerpo de JSON también está entre comillas dobles, evite las comillas dobles dentro de la política.
+ `policy-revision-id`: el identificador de revisión que Amazon Comprehend asignó a la política que está actualizando. Si va a crear una nueva política que no tiene una versión anterior, no utilice este parámetro. Amazon Comprehend crea el identificador de revisión por usted.

**Example Agregue una política basada en recursos a un modelo personalizado mediante el comando `put-resource-policy`**  
En este ejemplo, se define una política en un archivo JSON denominado **policy File.json** y se asocia la política a un modelo. El modelo es la versión **v2** de un clasificador denominado **mycf1**.   

```
$ aws comprehend put-resource-policy \
> --resource-arn {{arn:aws:comprehend:us-west-2:111122223333:document-classifier/mycf1/version/v2}} \
> --resource-policy file://{{policyFile.json}} \
> --policy-revision-id {{revision-id}}
```
El archivo JSON de la política de recursos contiene el siguiente contenido:  
+ *Acción*: la política autoriza a las entidades principales nombradas utilizar `comprehend:ImportModel`. 
+ *Recurso*: el ARN del modelo personalizado. El recurso “\*” hace referencia a la versión del modelo que se especifica en el comando `put-resource-policy`.
+ *Principal*: la política autoriza al usuario `jane` desde el Cuenta de AWS 444455556666 y a todos los usuarios desde el 123456789012. Cuenta de AWS   
****  

```
{
"Version":"2012-10-17",		 	 	 
 "Statement":[
    {"Sid":"ResourcePolicyForImportModel",
     "Effect":"Allow",
     "Action":["comprehend:ImportModel"],
     "Resource":"*",
     "Principal":
         {"AWS":
            ["arn:aws:iam::444455556666:user/jane",
             "123456789012"]
         }
   }
 ]
}
```

### API de Amazon Comprehend
<a name="custom-copy-sharing-adding-policy-api"></a>

Para añadir una política basada en recursos a un modelo personalizado mediante la API Amazon Comprehend, utilice [PutResourcePolicy](https://docs.aws.amazon.com/comprehend/latest/dg/API_PutResourcePolicy.html)la operación API. 

También puede añadir una política a un modelo personalizado en la solicitud de API que crea el modelo. Para ello, proporcione el JSON de la política para el ModelPolicy parámetro cuando envíe una [CreateDocumentClassifier](https://docs.aws.amazon.com/comprehend/latest/dg/API_CreateDocumentClassifier.html)solicitud o solicitud. [CreateEntityRecognizer](https://docs.aws.amazon.com/comprehend/latest/dg/API_CreateEntityRecognizer.html) 

## Paso 2: proporcionar los detalles que otros usuarios necesitan importar
<a name="custom-copy-sharing-details"></a>

Ahora que ha añadido la política basada en recursos a su modelo personalizado, ha autorizado a otros usuarios de Amazon Comprehend a importar su modelo a su Cuentas de AWS. Sin embargo, antes de que puedan importarlo, debe proporcionarles los siguientes detalles:
+ El nombre de recurso de Amazon (ARN) de la versión del módulo.
+ La Región de AWS que contiene el modelo. Cualquier persona que importe su modelo debe utilizar el mismo Región de AWS .
+ Si el modelo está cifrado y, si lo está, el tipo de AWS KMS clave que utilizas: Clave propiedad de AWS o clave gestionada por el cliente.
+ Si el modelo está cifrado con una clave gestionada por el cliente, debe proporcionar el ARN de la clave KMS. Cualquier persona que importe su modelo debe incluir el ARN en un rol de servicio de IAM en su Cuenta de AWS. Este rol autoriza a Amazon Comprehend a utilizar la clave KMS para descifrar el modelo durante la importación.

Para obtener más información acerca de cómo otros usuarios importan su modelo, consulte [Importación de un modelo personalizado desde otro Cuenta de AWS](custom-copy-importing.md).