Développeurs de panneaux OneSpan : Rôle du compte - Partie 2

Duo Liang,

En permettant aux administrateurs d'entreprise de définir des rôles personnalisés avec certaines permissions et d'attribuer ces rôles à vos comptes utilisateurs, la fonction "Rôles et Permissions" de OneSpan Sign offre une solution de gestion des utilisateurs plus sécurisée et une efficacité opérationnelle accrue.

Dans la première partie de cette série de blogs, nous avons brièvement présenté la fonctionnalité Rôles et Permissions et appris à créer un rôle de compte. Reprenant là où nous nous sommes arrêtés, nous continuerons à présenter les autres API et fonctions SDK relatives aux rôles de compte. Sans plus attendre, commençons !

Manipuler les rôles de compte

Afin de récupérer tous les rôles de compte existants ou d'interroger un rôle de compte spécifique par son ID, OneSpan Sign utilise les deux API et fonctions SDK ci-dessous :

API REST

Requête HTTP

GET /api/account/roles
GET /api/account/roles/{accountRoleId}

En-têtes HTTP

Authorization : Basic {votre_clé_api}
Accept : application/json

SDK Java

AccountRole accountRole = eslClient.getAccountService().getAccountRole("account_role_id") ;
Liste accountRoles = eslClient.getAccountService().getAccountRoles() ;

Compte tenu d'un rôle de compte existant, vous pouvez mettre à jour son nom, sa description et les autorisations qui lui sont associées à l'aide de l'API REST :

API REST

Requête HTTP

PUT /api/account/roles/{accountRoleId}

En-têtes HTTP

Authorization : Basic {votre_clé_api}
Content-Type : application/json
Accept : application/json

Exemple de charge utile

{
  "name" : "Nom du rôle du compte mis à jour",
  "enabled" : vrai,
  "description" : "Description mise à jour",
  "permissions" : [
    "sender_admin.security_settings",
    "sender_admin.reports"
    ......
  ]
}

SDK Java

AccountRole accountRole = eslClient.getAccountService().getAccountRole("account_role_id") ;
accountRole.setDescription("Description mise à jour") ;
accountRole.getPermissions().addAll(Arrays.asList("sender_admin.security_settings", "sender_admin.reports")) ;
eslClient.getAccountService().updateAccountRole("account_role_id", accountRole) ;

Un autre cas d'utilisation important pour lequel vous souhaitez utiliser l'appel de mise à jour est celui où vous souhaitez annuler un rôle de compte. Au lieu de supprimer directement le rôle, vous pouvez choisir de le désactiver d'abord. Le statut du rôle de compte est alors désactivé, ce qui fonctionne de la même manière que l'opération de suppression, tout en conservant la possibilité de récupérer l'annulation (voir ci-dessous).

API REST

Requête HTTP

PUT /api/account/roles/{accountRoleId}

En-têtes HTTP

Authorization : Basic {votre_clé_api}
Content-Type : application/json
Accept : application/json

Exemple de charge utile

{"enabled":false}

SDK Java

AccountRole accountRole = eslClient.getAccountService().getAccountRole("account_role_id") ;
accountRole.setEnabled(false) ;
eslClient.getAccountService().updateAccountRole("account_role_id", accountRole) ;

9-22-1

Si vous avez décidé de ne pas conserver un rôle de compte désactivé après avoir testé l'ajustement, vous pouvez supprimer le rôle à l'aide de l'API REST :

API REST

Demande HTTP

DELETE /api/account/roles/{accountRoleId}

En-têtes HTTP

Authorization : Basic {votre_clé_api}

SDK Java

eslClient.getAccountService().deleteAccountRole("account_role_id") ;

Attribuer des rôles à un expéditeur

Une fois les rôles de compte configurés dans votre compte, l'étape suivante consiste à associer les rôles à vos expéditeurs existants. Selon que votre compte a activé ou non la "fonction de sous-compte", utilisez l'une des deux API énumérées ci-dessous :

Requête HTTP

POST /api/account/senders/{senderId}/roles                                     
POST /api/account/senders/{senderId}/account/{accountId}/roles

En-têtes HTTP

Authorization : Basic {votre_clé_api}
Content-Type : application/json
Accept : application/json

Exemple de charge utile

[
  {
    "id" : "owner"
  },
  {
    "id" : "membre"
  },
  {
    "id" : "manager"
  },
  {
    "id" : "dc996466-8a0a-40d2-a9fb-461de2c2fab7"
  }
]

Remarque :

  • Si votre compte n'a pas activé la fonction de sous-compte, ne tenez pas compte de "/account/{accountId}/" dans l'URL de l'API. Sinon, l'ID du compte transmis dans le chemin de l'URL doit être l'ID du sous-compte auquel vous souhaitez que l'expéditeur ait accès.
  • Dans le payload, vous devrez fournir au moins l'ID du rôle du compte pour chaque nœud.

9-22-2

Pour obtenir une vue d'ensemble des ID d'expéditeur et des personnes affectées à un rôle donné, utilisez l'API ou la fonction SDK ci-dessous :

API REST

Requête HTTP

GET /api/account/roles/{accountRoleId}/users

En-têtes HTTP

Authorization : Basic {votre_clé_api}
Accept : application/json

SDK Java

Liste accountRoleUsers = client.getAccountService().getAccountRoleUsers("account_role_id") ;

Nous apprécions vos commentaires

Ceci conclut le blog d'aujourd'hui. Jusqu'à présent, nous avons expliqué comment la fonctionnalité Rôles et Permissions a été améliorée par rapport à son implémentation précédente, quelles sont les permissions disponibles pour les utilisateurs administrateurs afin de définir un rôle de compte personnalisé, et comment les développeurs peuvent intégrer cette fonctionnalité dans votre propre application via les codes API et SDK.

Si vous avez des questions concernant ce blog ou tout autre sujet relatif à l'intégration de OneSpan Sign dans votre application, visitez les forums de la communauté des développeurs. Vos commentaires nous intéressent !