Accès délégué par l’utilisateur vs. accès de l’application
- Accès de l’application : utilisé pour l’accès machine à machine, ce qui correspond au flux d’identification du client.
- Accès délégué par l’utilisateur : utilisé pour tous les flux d’accès qui génèrent un jeton d’accès associé à un utilisateur final et permettant à l’application d’accéder à une API au nom de l’utilisateur. Les flux d’accès délégué par l’utilisateur n’incluent pas le flux d’identification du client. Pour en savoir plus sur les flux d’accès délégué par l’utilisateur, consultez Flux d’authentification et d’autorisation.
Stratégies d’accès des applications à l’API
Lors de la configuration de la stratégie d’accès des applications pour une API, Auth0 recommande d’utiliser
Per-app authorization, car cette option applique le principe du moindre privilège. Pour en savoir plus, consultez Accès des applications aux API : autorisations d’application.
Lorsque vous définissez la stratégie d’accès des applications d’une API sur Per-app authorization, vous devez fournir explicitement les scopes requis dans la demande de jeton. Cela ne s’applique pas aux demandes de jeton d’actualisation : si vous omettez les scopes, le serveur d’autorisation suppose que l’application veut tous les scopes qui lui ont été accordés dans le jeton d’accès d’origine. Par conséquent, le serveur d’autorisation renvoie un jeton d’accès avec les mêmes scopes que ceux initialement accordés par le propriétaire de la ressource.
Configurer la stratégie d’accès des applications à l’API
- Auth0 Dashboard
- Management API
Pour configurer la stratégie d’accès des applications à une API :
- Accédez à Dashboard > Applications > APIs et sélectionnez votre API.
- Sélectionnez l’onglet Settings et faites défiler la page jusqu’à Application Access Policy pour configurer les stratégies User-Delegated Access et Client Access.
- Définissez la stratégie User-Delegated Access sur All apps allowed, Per-app authorization ou No apps allowed.
- All apps allowed : les applications sont autorisées à accéder à l’API au nom de l’utilisateur.
- Per-app authorization : les applications doivent disposer d’une autorisation d’application pour accéder à l’API au nom de l’utilisateur.
- No apps allowed : l’accès à l’API au nom de l’utilisateur est refusé aux applications.
- Définissez la stratégie Client Access sur Per-app authorization ou No apps allowed.
- Per-app authorization : les applications machine-à-machine sont autorisées à accéder à cette API tant qu’elles disposent de l’autorisation d’application correspondante.
- No apps allowed : restreint l’accès machine-à-machine à cette API.
- Définissez la stratégie User-Delegated Access sur All apps allowed, Per-app authorization ou No apps allowed.
- Sélectionnez Save pour enregistrer Application Access Policy.
- Pour User-Delegated Access, sélectionnez Grant Access, puis les permissions souhaitées. Vous pouvez également sélectionner Always grant all permissions.
- Pour Client Access, sélectionnez Grant Access, puis les permissions souhaitées. Vous pouvez également sélectionner Always grant all permissions. Pour Organization Support, sélectionnez :
- None : l’accès machine-à-machine ne peut pas être limité à une organisation.
- Optional : l’accès machine-à-machine peut être limité à une organisation.
- Required : l’accès machine-à-machine doit être limité à une organisation.
Stratégies d’accès à l’API et applications tierces
Vous pouvez aussi configurer les autorisations par défaut pour toutes les applications tierces :
- Accédez à Applications > APIs et sélectionnez l’API.
- Sous l’onglet Settings, accédez à Default Permissions for Third Party Applications.
- Sélectionnez Authorized pour User-delegated Access ou Client Access, puis sélectionnez les scopes à accorder.
- Sélectionnez Save.
Certains locataires existants peuvent avoir des applications tierces dont le comportement en matière de stratégie d’accès diffère. Pour en savoir plus, consultez Permissive Mode for Third-Party Applications.