

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.

# Probar su modelo de autorización
<a name="authorization-testing"></a>

Para comprender el efecto de la decisión de autorización de permisos verificados de Amazon al implementar su aplicación, puede evaluar sus políticas a medida que las desarrolla con la API REST HTTPS [Uso del banco de pruebas de permisos verificados de Amazon](test-bench.md) y con las solicitudes de la API REST de HTTPS a Verified Permissions. El banco de pruebas es una herramienta que sirve Consola de administración de AWS para evaluar las solicitudes de autorización y las respuestas en su almacén de políticas.

La API REST de permisos verificados es el siguiente paso en su desarrollo, a medida que pasa de la comprensión conceptual al diseño de la aplicación. La API de permisos verificados acepta solicitudes de autorización con [IsAuthorized](https://docs.aws.amazon.com/verifiedpermissions/latest/apireference/API_IsAuthorized.html)y [BatchIsAuthorized](https://docs.aws.amazon.com/verifiedpermissions/latest/apireference/API_BatchIsAuthorized.html)como [solicitudes de AWS API firmadas](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_aws-signing.html) para [puntos finales de servicios](https://docs.aws.amazon.com/general/latest/gr/verifiedpermissions.html) regionales. [IsAuthorizedWithToken](https://docs.aws.amazon.com/verifiedpermissions/latest/apireference/API_IsAuthorizedWithToken.html) Para probar tu modelo de autorización, puedes generar solicitudes con cualquier cliente de API y comprobar que tus políticas devuelven las decisiones de autorización según lo previsto.

Por ejemplo, puede realizar una prueba `IsAuthorized` en un almacén de políticas de muestra con el siguiente procedimiento.

------
#### [ Test bench ]

1. Abra la consola de permisos verificados en la consola de [permisos verificados](https://console.aws.amazon.com/verifiedpermissions/). Cree un almacén de políticas a partir del **almacén de políticas de muestra** con el nombre **DigitalPetStore**.

1. Selecciona **Test bench** en tu nuevo almacén de políticas.

1. Rellena tu formulario de solicitud de banco de pruebas [IsAuthorized](https://docs.aws.amazon.com/verifiedpermissions/latest/apireference/API_IsAuthorized.html#API_IsAuthorized_Examples)en la referencia de la API de permisos verificados. Los siguientes detalles reproducen las condiciones del **ejemplo 4** que hace referencia a la **DigitalPetStore**muestra.

   1. Pon a Alice como la directora. Para que el **director tome medidas**, elige `DigitalPetStore::User` e ingresa`Alice`.

   1. Establece el rol de Alice como cliente. Elija **Agregar un padre**`DigitalPetStore::Role`, elija e introduzca Cliente.

   1. Establezca el recurso como pedido «1234». Elija `DigitalPetStore::Order` e introduzca **el recurso sobre el que actúa el principal**`1234`.

   1. El `DigitalPetStore::Order` recurso requiere un `owner` atributo. Establece a Alice como la propietaria del pedido. Elige `DigitalPetStore::User` e ingresa `Alice`

   1. Alice solicitó ver el pedido. Para **la acción que está tomando el director**, elija`DigitalPetStore::Action::"GetOrder"`.

1. Elija **Ejecutar solicitud de autorización**. En un almacén de políticas sin modificar, esta solicitud da lugar a una `ALLOW` decisión. Tenga en cuenta la **política de satisfacción** que dio lugar a la decisión.

1. Elija **Políticas** en la barra de navegación izquierda. Revise la política estática con la descripción **Customer Role: Get Order**.

1. Observe que los permisos verificados permitieron la solicitud porque el principal tenía un rol de cliente y era el propietario del recurso.

------
#### [ REST API ]

1. Abra la consola de permisos verificados en la consola de [permisos verificados](https://console.aws.amazon.com/verifiedpermissions/). Cree un almacén de políticas a partir del **almacén de políticas de muestra** con el nombre **DigitalPetStore**.

1. Anote el **ID del almacén de políticas** del nuevo almacén de políticas.

1. [IsAuthorized](https://docs.aws.amazon.com/verifiedpermissions/latest/apireference/API_IsAuthorized.html#API_IsAuthorized_Examples)En la referencia de la API de permisos verificados, copia el cuerpo de la solicitud del **ejemplo 4** que hace referencia al **DigitalPetStore**ejemplo.

1. Abre tu cliente de API y crea una solicitud al punto final del servicio regional de tu almacén de políticas. [Rellene los encabezados como se muestra en el ejemplo.](https://docs.aws.amazon.com/verifiedpermissions/latest/apireference/API_IsAuthorized.html#API_IsAuthorized_Examples)

1. Pegue el ejemplo del cuerpo de la solicitud y cambie el valor por el ID del almacén de `policyStoreId` políticas que indicó anteriormente.

1. Envía la solicitud y revisa los resultados. En un almacén **DigitalPetStore**de políticas predeterminado, esta solicitud devuelve una `ALLOW` decisión.

------

Puede realizar cambios en las políticas, el esquema y las solicitudes de su entorno de prueba para cambiar los resultados y tomar decisiones más complejas.

1. Cambia la solicitud de forma que modifique la decisión de Verified Permissions. Por ejemplo, cambia el rol de Alice a `Employee` o cambia el `owner` atributo del pedido 1234 a`Bob`.

1. Cambie las políticas de manera que afecten a las decisiones de autorización. Por ejemplo, modifique la política con la descripción **Customer Role: Get Order** para eliminar la condición de que `User` debe ser el propietario del pedido `Resource` y modifique la solicitud para que `Bob` desee ver el pedido.

1. Cambie el esquema para permitir que las políticas tomen una decisión más compleja. Actualice las entidades solicitadas para que Alice pueda cumplir con los nuevos requisitos. Por ejemplo, edite el esquema `User` para poder ser miembro de `ActiveUsers` o`InactiveUsers`. Actualice la política para que solo los usuarios activos puedan ver sus propios pedidos. Actualice las entidades de la solicitud para que Alice sea una usuaria activa o inactiva.