GlideOAuthClient : inclus, inclus dans le périmètre, global

  • Rversion finale: Xanadu
  • Mis à jour 1 août 2024
  • 2 minutes de lecture
  • L’API GlideOAuthClient fournit des méthodes pour demander et révoquer des jetons d’actualisation et d’accès OAuth.

    Vous pouvez utiliser cette API dans les scripts globaux et inclus dans le champ d’application. Dans les scripts inclus dans le périmètre, utilisez l’identificateur d’espace de noms sn_auth.

    GlideOAuthClient : getToken(String requestID, String oauthProfileID)

    Récupère les jetons d’accès et d’actualisation pour le client.

    Tableau 1. Paramètres
    Nom Type Description
    requestID Chaîne ID de demande de la table Profil du demandeur OAuth [oauth_requestor_profile], qui fait référence à la table Profil de l’entité OAuth [oauth_entity_profile].
    oauthProfileID (en anglais seulement) Chaîne ID du profil OAuth de la table Profil de l’entité OAuth [oauth_entity_profile].
    Tableau 2. Renvoie
    Type Description
    GlideOAuthToken Les jetons d’accès et d’actualisation pour le client.

    Cet exemple de code montre comment récupérer les jetons d’accès et d’actualisation à partir de la base de données de l’instance.

    function dumpToken(token) {
      if(token) {
         gs.info("AccessToken:" + token.getAccessToken());
         gs.info("AccessTokenExpiresIn:" + token.getExpiresIn());
         gs.info("RefreshToken:" + token.getRefreshToken());
      }
    }
    
    var oAuthClient = new  sn_auth.GlideOAuthClient();
    var token = oAuthClient.getToken('248e3017c302301089a7dd5c2840dda5', '9c4e78d3c302301089a7dd5c2840dd76');
    dumpToken(token);

    Sortie :

    *** Script: AccessToken:6MRxD3TRYYvIaoKr-JCy3KiaOxBPu4C9k8oafo3MYf9q8zDyHQr8UzMSM3Md2alfaES1rzSYe5ydqgbOwpm7TA
    *** Script: AccessTokenExpiresIn:1207
    *** Script: RefreshToken:sc0iTK-0PcVkRi14HXPM3vT0FyOPO8iCqC10huQoDSSLBGUSnmEv_fUfJzGWCWBb_StsXIOz6r8qF-hRhURWTA

    GlideOAuthClient : requestToken(String clientName, String jsonString)

    Récupère le jeton pour le client, avec les paramètres de la demande codés au format JSON.

    Tableau 3. Paramètres
    Nom Type Description
    clientName Chaîne Nom du client.
    jsonString (en anglais seulement) Chaîne Chaîne JSON pour le client.
    Tableau 4. Renvoie
    Type Description
    GlideOAuthClientResponse Jeton pour le client.

    Cet exemple montre une demande de type d’attribution de mot de passe de propriétaire de ressource, avec des paramètres de demande codés au format JSON.

    
    var oAuthClient = new GlideOAuthClient();
    var params ={grant_type:"password", username:"itil", password:'itil'};
    var json =new JSON();
    var text = json.encode(params);
    var tokenResponse = oAuthClient.requestToken('TestClient', text);
    var token = tokenResponse.getToken();
    
    gs.log("AccessToken:"+ token.getAccessToken());
    gs.log("AccessTokenExpiresIn:"+ token.getExpiresIn());
    gs.log(" RefreshToken:"+ token.getRefreshToken());
    

    GlideOAuthClient : requestTokenByRequest(String clientName, GlideOAuthClientRequest request)

    Récupère le jeton pour le client, avec le nom du client et la demande définie dans un objet GlideOAuthClientResponse.

    Tableau 5. Paramètres
    Nom Type Description
    clientName Chaîne Nom du client.
    request GlideOAuthClientRequest La demande.
    Tableau 6. Renvoie
    Type Description
    GlideOAuthClientResponse Jeton pour le client.

    GlideOAuthClient : revokeToken(String clientName, String accessToken, String refreshToken, GlideOAuthClientRequest request)

    Révoque le jeton d’accès ou d’actualisation pour le client, avec les paramètres de demande et d’en-tête facultatifs définis dans un objet GlideOAuthClientRequest.

    Tableau 7. Paramètres
    Nom Type Description
    clientName Chaîne Nom du client.
    jeton d’accès Chaîne Le jeton d’accès.
    refreshToken (en anglais seulement) Chaîne Le jeton d’actualisation.
    request GlideOAuthClientRequest La demande.
    Tableau 8. Renvoie
    Type Description
    GlideOAuthClientResponse Jeton pour le client.