Concept : éléments à prendre en compte avec l'agent ASU externe
Nous vous recommandons de tenir compte de ces éléments lorsque vous créez des agents externes.
Délégataires ASU
Les identifiants du client ASU fournis après la configuration de l'agent doivent être utilisés pour le flux de subvention OAuth 2.0 pour permettre à votre agent d'obtenir un accès pendant son exécution.
Lorsque vous testez manuellement le flux de subvention des codes d'autorisation d'un agent externe, utilisez le détail du client et les URL de point de terminaison fournis lors de la configuration de l'agent comme entrées pour les étapes suivantes :
- Récupérez le code d'autorisation en colleant l'URL suivante dans une nouvelle fenêtre :https://<providedAuthorizeEndpoint>?response_type=code&client_id=<clientID>&state=<agentName>&redirect_uri=<redirectionURI>.L'URL vous redirige vers une page de connexion où vous devez fournir manuellement vos identifiants d'utilisateur pour le compte desquels l'agent agira.Une fois connecté, vous êtes redirigé vers une pageAutoriser/Refusersur laquelle vous subvention à l'agent l'accès à votre compte Workday.Autorisezla redirection vers l'URI de redirection fourni avec un code ajouté que vous pouvez utiliser pour appeler l' API suivante .
- Récupérez le jeton ASU en créant une nouvelle demande à l'aide d'un client API externe en utilisant le code d'autorisation fourni dans l'appel API précédent.Par exemple, Carlos :
- POST https://<providedTokenURL>
- Corps :octroi_type=AuteurCela génère un jeton d'accès et un jeton actualiser que vous pouvez utiliser pour tester les appels de test que votre agent envoie aux services Workday .
Dans le corps de la réponse depuis le point de terminaison du jeton , le paramètre
expires_in
doit être renvoyé sous la forme d'un entier. Dans différents environnements de test, ce type de paramètre peut différer entre les types Entier et Chaîne. C'est pourquoi Workday recommande que le client externe puisse gérer à la fois les types Chaîne et Intent.Lorsque vous devez mettre à jour une définition d'agent, vous pouvez indiquer le même nom d'agent, la même version et le même fournisseur à l' API POST Agent Definition et celle-ci sera mise à jour. En l'absence de correspondance, Workday crée un nouvel enregistrement de l'agent.
Lorsque votre agent envoie la demande au point de terminaison du jeton à l'aide d'AuthCode et identifiants client , le jeton d'accès et les jetons actualiser sont créés et renvoyés.
Le délai d'expiration du jeton d'accès est de 3 600 secondes (60 mins). Le délai d'expiration du jeton actualiser est de 24 heures.
Lorsqu'un jeton d'accès expire, le jeton actualiser en crée un nouveau.
Les clients OAuth types doivent seulement avoir besoin de :
- Clé secrète clientetIdentifiant client: obtenu lors du processus de configuration de l'agent.
- Authorize Endpoint:https://us.agent.workday.com/auth/authorize/ <Tenant Alias>
- Point de terminaison du jeton:https://us.agent.workday.com/auth/oauth2/<Tenant_Alias>/ jeton
- URL de redirection: fournie par le développeur de l'agent lors du processus de configuration de l'agent.
ASU ambigus
L'identifiant client et le nom d'utilisateur ASU fournis après la configuration de l'agent doivent être utilisés pour effectuer l'assertion JWT et la génération de jeton .
- L'émetteur doit être l'identifiant client.
- Le sujet doit être le nom d'utilisateur ASU.
La paire de clés x509 correspondante qui est obligatoire lors de l'enregistrement d'une aptitude en environnement de travail est utilisée lors de l'exécution de l'agent pour effectuer l'assertion JWT.
Mettez à jour le code de votre agent de sorte que, lors de l'exécution de l'agent, lorsqu'une demande est soumise à l'agent, celui-ci vérifie s'il dispose d'un jeton d'accès valide mis en cache. Si ce n'est pas le cas, ou si le jeton a expiré, nous :
- Créer une nouvelle assertion JWT
- Récupérer un jeton de porteur JWT
- jeton de mise en cache pour les demandes API Workday