

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.

# Creación de un documento de política del proyecto
<a name="md-create-project-policy-document"></a>

Etiquetas personalizadas de Amazon Rekognition utiliza una política basada en recursos, conocida como *política de proyecto*, destinada a gestionar los permisos de copia de la versión de un modelo. Una política de proyecto es un documento en formato JSON.

La política de proyecto permite o deniega el permiso a una [entidad principal](https://docs.aws.amazon.com/IAM/latest/UserGuide/intro-structure.html#intro-structure-principal) para que copie la versión de un modelo de un proyecto de origen en un proyecto de destino. Necesitas una política de proyecto si el proyecto de destino está en una AWS cuenta diferente. Esto también se aplica si el proyecto de destino está en la misma cuenta de AWS que el proyecto de origen y se quiere restringir el acceso a versiones específicas del modelo. Por ejemplo, es posible que desee denegar los permisos de copia a un rol de IAM específico dentro de una AWS cuenta.

En el siguiente ejemplo, se permite a la entidad principal `arn:aws:iam::111111111111:role/Admin` para que copie la versión del modelo `arn:aws:rekognition:us-east-1:123456789012:project/my_project/version/test_1/1627045542080`. 

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

****  

```
{
  "Version":"2012-10-17",		 	 	 
  "Statement":[
    {
      "Effect":"Allow",
      "Principal":{
        "AWS":"arn:aws:iam::111111111111:role/Admin"
      },
      "Action":"rekognition:CopyProjectVersion",
      "Resource":"arn:aws:rekognition:us-east-1:111111111111:project/my_project/version/test_1/1627045542080"
    }
  ]
}
```

------

**nota**  
En un documento de política de proyecto, los campos `Action`, `Resource`, `Principal` y `Effect` son obligatorios.  
La única `action` que se admite es `rekognition:CopyProjectVersion`.  
Los campos `NotAction`, `NotResource` y `NotPrincipal` están prohibidos y no deben estar presentes en el documento de política de proyecto.

Si no especificas una política de proyecto, un director de la misma AWS cuenta que el proyecto de origen puede seguir copiando un modelo si el director tiene una política basada en la identidad, por ejemplo` AmazonRekognitionCustomLabelsFullAccess`, que dé permiso para llamar. `CopyProjectVersion`

En el siguiente procedimiento se crea un archivo de documento de política de proyecto que puede utilizar con el ejemplo de Python en [Asociación de una política de proyecto (SDK)](md-attach-project-policy.md). Si usa el `put-project-policy` AWS CLI comando, proporciona la política del proyecto como una cadena JSON. 

**Cómo un documento de política de proyecto**

1. En un editor de texto, cree el siguiente documento. Cambie los siguientes valores:
   + Effect: indique `ALLOW` para conceder el permiso de copia. Indique `DENY` para denegar el permiso de copia. 
   + Principal: elija la entidad principal a la que desee permitir o denegar el acceso a las versiones del modelo que indique en `Resource`. Por ejemplo, puede especificar el [principal de la cuenta de AWS](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_elements_principal.html#principal-accounts) para una AWS cuenta diferente. No existen limitaciones a las entidades principales que puede usar. Para obtener más información, consulte [Especificación de una entidad principal](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_elements_principal.html#Principal_specifying).
   + Resource: el nombre de recurso de Amazon (ARN) de la versión del modelo para la que desea conceder o no los permisos de copia. Si desea conceder permisos a todas las versiones del modelo del proyecto de origen, utilice el siguiente formato `arn:aws:rekognition:{{region}}:{{account}}:project/{{source project}}/version/* `

1. Guarde la política del proyecto en su ordenador.

1. Asocie la política del proyecto al proyecto de origen según las instrucciones que aparecen en [Asociación de una política de proyecto (SDK)](md-attach-project-policy.md).