---
sourceDocument: Sécurité de la plateforme Australie
sourceDocumentLink: https://www.servicenow.com/docs/r/fr-FR/platform-security

 Release :

    - australia

ft:locale :

    - fr-FR

ft:publication_title :

    - Sécurité de la plateforme Australie

ft:clusterId :

    - psec

bundleId :

    - psec

workflow :

    - Platform


---

# Configurer un modèle pour le type d'attribution titulaire OAuth JWT

# Configurer un modèle pour le type d'attribution titulaire OAuth JWT {#ariaid-title1}

* Rversion finale: Australia
* 
* Mis à jour 12 mars 2026
* 
* ![](https://www.servicenow.com/docs/portal-asset/ico-clock) 3 minutes de lecture

Cet exemple de modèle de configuration configure des enregistrements d'informations d'identification et de connexion à l'aide du type d'attribution JWT Bearer pour authentifier les demandes à Docusign.

## Modèle de données par défaut {#docusign-example__section_idp_mnd_3jb}

Chaque élément de niveau supérieur dans le modèle de données par défaut crée un enregistrement associé. Le modèle comprend les sections suivantes :  
* `Informations d'identification` : crée un enregistrement dans la table Informations d'identification.
* `Connexion` : crée un enregistrement dans la table Connexions \[sys_connection\] et tous les enregistrements de connexion associés.
* `Supplémentaire` : crée éventuellement des enregistrements dans une table personnalisée. Le script de post-traitement indique au système ce qu'il doit faire de ces enregistrements.
{#docusign-example__ul_qrj_wnd_3jb}

L'exemple suivant crée les enregistrements requis pour l'authentification de type d'attribution titulaire OAuth JWT.  

    {
      "credential": {
        "oauth_entity": {
          "oauth_entity_profile": [
            {
              "grant_type": "urn:ietf:params:oauth:grant-type:jwt-bearer",
              "name": "Docusign Profile",
              "default": true,
              "oauth_entity_profile_scope": [
                "users:read.email"
              ]
            }
          ],
          "code_challenge_method": "S256",
          "type": "consumer",
          "oauth_entity_scope": [
            {
              "oauth_entity_scope": "users:read.email",
              "name": "email"
            }
          ],
          "client_id": "<provider-client-id>",
          "use_mutual_auth": false,
          "revoke_token_url": "https://<provider-domain-name>.com/oauth2/revoke",
          "default_grant_type": "urn:ietf:params:oauth:grant-type:jwt-bearer",
          "public_client": false,
          "oauth_api_script": "3e3a3a11c333210016194ffe5bba8f70",
          "name": "Docusign Spoke OAuth",
          "client_secret": "<provider-client-secret>",
          "auth_url": "https://<provider-domain-name>.com/oauth2/auth",
          "token_url": "https://<provider-domain-name>.com/oauth2/token",
          "redirect_url": "https://<instance-name>.service-now.com/oauth_redirect.do"
        },
        "jwt_provider": {
          "jwt_keystore_aliases": {
            "kid": "<provider-key-id>",
            "name": "Docusign Spoke JWT Key",
            "signing_keystore": "<signing-keystore-sys-id>",
            "signing_algorithm": "rsa_256",
            "signing_key_password": "password"
          },
          "jwt_claim_validation" : [ {
            "name" : "iss",
            "is_standard" : true,
            "data_type" : "string",
            "value":"<docusign-iss-claim>"
          }, {
            "name" : "sub",
            "is_standard" : true,
            "data_type" : "string",
            "value":"<docusign-sub-claim>"
          }, {
            "name" : "aud",
            "is_standard" : true,
            "data_type" : "string",
            "value":"<docusign-aud-claim>"
          }, {
            "name" : "scope",
            "is_standard" : false,
            "data_type" : "string",
            "value" : "signature impersonation"
          } ],
          "name": "Docusign Spoke JWT Provider",
          "jwt_api_script": "9ef6af86ff10330001d3cd6bd53bf144"
        },
        "name": "Docusign Spoke Credential",
        "table": "oauth_2_0_credentials"
      },
      "connection": {
        "use_mid": false,
        "connection_url": "https://<provider-domain-name>.com",
        "name": "Docusign Spoke Connection",
        "table": "http_connection"
      },
    "additional":{
        "docusign_account_name": "<docusign-account-name>",
        "docusign_account_email": "<docusign-account-email>"
    }
    }

## Schéma de données dynamique {#docusign-example__section_hvm_q4d_3jb}

Le schéma de données dynamiques définit ce que l'utilisateur voit lorsqu'il crée un alias de connexion et d'informations d'identification et collecte ses entrées. Utilisez la syntaxe de remontée pas à pas pour mapper l'entrée de l'utilisateur aux champs créés dans le modèle de données par défaut. Par exemple, `connection_fields` mappe l'entrée de l'utilisateur au champ `connection_url` dans l'objet de `connexion` créé par le modèle de données par défaut.  

    {
      "connection_fields": [
        {
          "name": "connection.connection_url",
          "label": "Connection URL",
          "type": "text",
          "defaultValue": "https://demo.docusign.net",
          "hint": "Connection URL for Docusign"
        }],
    "additional_fields":[
        {
          "name": "additional.docusign_account_id",
          "label": "Docusign Account Number",
          "type": "text",
          "hint": "Docusign Account Number"
        },
        {
          "name": "additional.docusign_account_name",
          "label": "Docusign Account Name",
          "type": "text",
          "hint": "Name to identify the Docusign account"
        },
        {
          "name": "additional.docusign_account_email",
          "label": "Docusign Account Email",
          "type": "text",
          "hint": "Docusign Account Email"
        }
      ],
      "credential_fields": [
        {
          "name": "credential.oauth_entity.client_id",
          "label": "OAuth Client ID",
          "type": "text",
          "hint": "Client ID for Docusign"
        },
        {
          "name": "credential.oauth_entity.redirect_url",
          "label": "OAuth Redirect URL",
          "type": "text",
          "defaultValue": "https://<instance-name>.service-now.com/oauth_redirect.do",
          "hint": "Callback URL for Docusign"
        },
     {
          "name": "credential.jwt_provider.jwt_claim_validation[0].value",
          "label": "Issuer (iss) Claim value",
          "type": "text",
          "hint": "The integrator key (also known as client ID) of the application"
        },
     {
          "name": "credential.jwt_provider.jwt_claim_validation[1].value",
          "label": "Subject (sub) Claim value",
          "type": "text",
          "hint": "The user ID of the user to be impersonated"
        },
     {
          "name": "credential.jwt_provider.jwt_claim_validation[2].value",
          "label": "Audience (aud) Claim value",
          "type": "text",
          "defaultValue": "account-d.docusign.com",
          "hint": "The URI of the authentication service instance to be used e.g. account.docusign.com"
        },
        {
          "name": "credential.jwt_provider.jwt_keystore_aliases.kid",
          "label": "Key ID (kid)",
          "type": "text",
          "hint": "Indicates which key was used to secure the JWS"
        },
        {
          "name": "credential.jwt_provider.jwt_keystore_aliases.signing_keystore",
          "label": "Key Store",
          "type": "file"
        }
      ]
    }

## Script de post-traitement {#docusign-example__section_fc3_54d_3jb}

Le script de post-traitement suivant mappe l'entrée de l'utilisateur aux champs de la table sn_docusign_spoke_accounts.  

    (function execute(aliasId, connectionSysId, jsonDefaultData, jsonDynamicData) {
    	var jsonDynamicDataP = JSON.parse(jsonDynamicData);
    	var accountGR = new GlideRecord("sn_docusign_spoke_accounts");
        accountGR.setValue("account_name", jsonDynamicDataP["additional.docusign_account_name"]);
        accountGR.setValue("alias", aliasId);
        accountGR.setValue("email", jsonDynamicDataP["additional.docusign_account_email"]);
        accountGR.setValue("id", jsonDynamicDataP["additional.docusign_account_id"]);
        accountGR.insert();
    })(aliasId, connectionSysId, jsonDefaultData, jsonDynamicData);

## Formulaire de configuration des informations d'identification et de connexion Docusign résultant {#docusign-example__section_ynx_1pd_3jb}

Lorsque l'utilisateur accède à l'alias de connexion et d'informations d'identification Docusign associé et sélectionne Créer une nouvelle connexion et de nouvelles informations d'identification, la boîte de dialogue suivante s'affiche.


