

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

# Intégration de vos modèles d'autorisation aux applications
<a name="authorization-sdk"></a>

Pour implémenter les autorisations vérifiées par Amazon dans votre application, vous devez définir les politiques et le schéma que vous souhaitez que votre application applique. Une fois votre modèle d'autorisation en place et testé, l'étape suivante consiste à commencer à générer des demandes d'API dès leur mise en application. Pour ce faire, vous devez configurer la logique de l'application afin de collecter les données utilisateur et de les renseigner en fonction des demandes d'autorisation.

**Comment une application autorise les demandes avec des autorisations vérifiées**

1. Rassemblez des informations sur l'utilisateur actuel. Généralement, les informations d'un utilisateur sont fournies dans les détails d'une session authentifiée, comme un JWT ou un cookie de session Web. Ces données utilisateur peuvent provenir d'une [source d' Amazon Cognito identité](identity-sources.md#identity-sources.title) liée à votre magasin de politiques ou d'un autre fournisseur [OpenID Connect (OIDC)](cognito-validation.md#identity-sources-other-idp.title).

1. Rassemblez des informations sur la ressource à laquelle un utilisateur souhaite accéder. En règle générale, votre application reçoit des informations sur la ressource lorsqu'un utilisateur effectue une sélection nécessitant le chargement d'une nouvelle ressource par votre application.

1. Déterminez l'action que votre utilisateur souhaite effectuer.

1. Générez une demande d'autorisation auprès de Verified Permissions avec le principal, l'action, la ressource et les entités correspondant à la tentative d'opération de votre utilisateur. Verified Permissions évalue la demande par rapport aux politiques de votre magasin de politiques et renvoie une décision d'autorisation.

1. Votre application lit la réponse d'autorisation ou de refus de Verified Permissions et applique la décision concernant la demande de l'utilisateur.

Les opérations de l'API Verified Permissions sont intégrées AWS SDKs. Pour inclure des autorisations vérifiées dans une application, intégrez le AWS SDK correspondant à la langue de votre choix dans le package de l'application.

Pour en savoir plus et télécharger AWS SDKs, consultez la section [Outils pour Amazon Web Services](https://aws.amazon.com/tools/).

Vous trouverez ci-dessous des liens vers la documentation des différentes ressources relatives aux autorisations vérifiées AWS SDKs.
+ [AWS SDK pour .NET](https://docs.aws.amazon.com/sdkfornet/v3/apidocs/items/VerifiedPermissions/NVerifiedPermissions.html)
+ [AWS SDK pour C\$1\$1](https://sdk.amazonaws.com/cpp/api/LATEST/aws-cpp-sdk-verifiedpermissions/html/class_aws_1_1_verified_permissions_1_1_verified_permissions_client.html)
+ [AWS SDK pour Go](https://pkg.go.dev/github.com/aws/aws-sdk-go-v2/service/verifiedpermissions)
+ [AWS SDK pour Java](https://sdk.amazonaws.com/java/api/latest/software/amazon/awssdk/services/verifiedpermissions/package-summary.html)
+ [AWS SDK pour JavaScript](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/client/verifiedpermissions/)
+ [AWS SDK pour PHP](https://docs.aws.amazon.com/aws-sdk-php/v3/api/api-verifiedpermissions-2021-12-01.html)
+ [AWS SDK pour Python (Boto)](https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/verifiedpermissions.html)
+ [AWS SDK pour Ruby](https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/VerifiedPermissions/Client.html)
+ [AWS SDK pour Rust](https://docs.rs/aws-sdk-verifiedpermissions/latest/aws_sdk_verifiedpermissions/)

L' AWS SDK pour JavaScript exemple suivant `IsAuthorized` provient de [Simplify fined authorization with Amazon Verified Permissions et Amazon Cognito](https://aws.amazon.com/blogs/security/simplify-fine-grained-authorization-with-amazon-verified-permissions-and-amazon-cognito/).

```
const authResult = await avp.isAuthorized({
    principal: 'User::"alice"',
    action: 'Action::"view"',
    resource: 'Photo::"VacationPhoto94.jpg"',
    // whenever our policy references attributes of the entity,
    // isAuthorized needs an entity argument that provides    
    // those attributes
    entities: {
       entityList: [
         {
            "identifier": {
                "entityType": "User",
                "entityId": "alice"
            },
            "attributes": {
                "location": {
                    "String": "USA"
                }
            }
         }
       ]
    }
});
```

**Plus de ressources pour les développeurs**
+ [Atelier sur les autorisations vérifiées par Amazon](https://catalog.workshops.aws/verified-permissions-in-action)
+ [Autorisations vérifiées par Amazon - Ressources](https://aws.amazon.com/verified-permissions/resources/)
+ [Implémenter un fournisseur de politique d'autorisation personnalisé pour les applications ASP.NET Core à l'aide d'Amazon Verified Permissions](https://aws.amazon.com/blogs/dotnet/implement-a-custom-authorization-policy-provider-for-asp-net-core-apps-using-amazon-verified-permissions/)
+ [Créez un service d'autorisation pour les applications professionnelles à l'aide d'Amazon Verified Permissions](https://aws.amazon.com/blogs/security/build-an-entitlement-service-for-business-applications-using-amazon-verified-permissions/)
+ [Simplifiez les autorisations détaillées avec Amazon Verified Permissions et Amazon Cognito](https://aws.amazon.com/blogs/security/simplify-fine-grained-authorization-with-amazon-verified-permissions-and-amazon-cognito/)