OneSpan Sign Developer: Sitzung, Authentifizierungstoken und Signatur-URL - Teil2

Duo Liang, 24. Oktober 2018
Thumbnail

In dem erster Teil In dieser Blog-Reihe haben wir verschiedene Lebenszyklen und Aufgaben von Sitzungs- und Authentifizierungstoken behandelt und die drei Faktoren erörtert, die eine Signatur-URL von der durch das Authentifizierungstoken generierten unterscheiden. Inzwischen können Sie bereits eine Lösung auswählen, um eine URL für Ihre Unterzeichnungszeremonie zu generieren.

Daher konzentrieren wir uns hauptsächlich auf die Bedenken hinsichtlich der Codierungsebene dieser drei Konzepte und auf den Rest der Details, die Sie interessieren könnten.

Authentifizierungstoken für einmalige und mehrfache Verwendung

Es gibt zwei Arten von Authentifizierungstoken: einmalige und mehrfache Verwendung. Eine URL mit einem Token für die einmalige Verwendung kann dem Unterzeichner nur einmal den Zugriff auf die Unterzeichnungszeremonie ermöglichen. Wenn der Unterzeichner die Seite aktualisiert oder schließt oder das übergeordnete Fenster die URL umleitet, kann er nicht über denselben Link zur Unterzeichnungszeremonie zurückkehren.

Mehrfachverwendungs-Token bedeutet wörtlich, dass Unterzeichner jederzeit zur Unterzeichnungszeremonie zurückkehren können, solange das Token nicht abgelaufen ist. Sie können dasselbe Token mehrmals verwenden.

Sowohl die Token für den einmaligen als auch für den mehrfachen Gebrauch haben ihren Platz. Die Wahl zwischen ihnen hängt von Ihren eigenen Anforderungen ab.

Die folgenden Codes zeigen, wie Sie ein Authentifizierungstoken für einen bestimmten Unterzeichner mithilfe von SDK- und API-Methoden abrufen können:

Java SDK:

Zeichenfolge signerAuthToken = eslClient.getAuthenticationTokensService (). CreateSignerAuthenticationToken (neue PackageId (packageId), signerId); // Authentifizierungstoken für mehrere Verwendungszwecke
String singleUseToken = eslClient.getAuthenticationTokensService (). CreateSignerAuthenticationTokenForSingleUse (packageId, signerId, null); // Einweg-Authentifizierungstoken

.Net SDK:

Zeichenfolge signerAuthToken = eslClient.AuthenticationTokenService.CreateSignerAuthenticationToken (neue PackageId (packageId), signerId); // Authentifizierungstoken für mehrere Verwendungszwecke
Zeichenfolge singleUseToken = eslClient.AuthenticationTokensService.CreateSignerAuthenticationTokenForSingleUse (packageId, signerId, signerSessionFields); // Einweg-Authentifizierungstoken

REST-API

HTTP-Anfrage
POST / api / authenticationTokens / signer / multiUse // zur mehrfachen Verwendung
POST / api / authenticationTokens / signer / singleUse // zur einmaligen Verwendung
HTTP-Header
Akzeptieren: application / json
Inhaltstyp: application / json
Autorisierung: Basic api_key
Nutzlast anfordern
{
    "packageId": "5vjLRY5MWrDJ6MzRAEyCKOy5IH0 =",
    signerId: 8b734331-bc5b-4843-9784-d4ece4b7dc22
}
Antwortnutzlast
{
   "packageId": "5vjLRY5MWrDJ6MzRAEyCKOy5IH0 =",
   signerId: 8b734331-bc5b-4843-9784-d4ece4b7dc22,
   "Wert": "ZDNmMDNiNGUtNGYxOC00YWZiLTkwMmUtNWE5YmIwZTRjZDg1"
}

Jede dieser Methoden liefert ein Token wie das folgende, das aus Groß- und Kleinbuchstaben sowie Zahlen besteht.

NDlkZjEyOWYtODFmYy00NDI2LWJhNDYtZTVjMmE3ZGI1YjEy

Es wird mit Großbuchstaben, Kleinbuchstaben und Zahlen kombiniert.

Hinweis:

1. Die Unterzeichner-ID in diesem SDK / API-Aufruf kann durch die E-Mail-Adresse des Unterzeichners ersetzt werden.

2. Das Authentifizierungstoken kann nur generiert werden, wenn sich das Paket im Status "SENT" oder "COMPLETED" befindet.

3. Wenn Sie die E-Mail-Adresse Ihres Unterzeichners in Ihrem Workflow geändert haben, müssen Sie ein neues Authentifizierungstoken generieren, da dessen E-Mail-Adresse auch beim Zugriff auf die Unterzeichnungszeremonie überprüft wird. Wenn diese Überprüfung fehlschlägt, wird der Unterzeichner auf eine Seite umgeleitet, die wie im folgenden Screenshot aussieht:10-24-1

Nach dem Abrufen des Authentifizierungstokens können Sie eine Signatursitzung erhalten, indem Sie die folgende URL erstellen:

https://sandbox.esignlive.com/access?sessionToken={signerAuthToken}

Signing Url

Im Java SDK können Sie mithilfe dieser Funktion direkt eine Signatur-URL generieren:

String signingUrl = eslClient.getPackageService (). GetSigningUrl (neue PackageId ("Paket-ID"), "Signierer-ID"); // In diesem Fall kann die Unterzeichner-ID nicht durch eine E-Mail ersetzt werden

Und im .Net SDK:

Zeichenfolge signingUrl = eslClient.PackageService.GetSigningUrl (neue PackageId ("Paket-ID"), "Unterzeichner-ID"); // In diesem Fall kann die Unterzeichner-ID nicht durch eine E-Mail ersetzt werden

Wenn Sie ein SDK zum Generieren der Signatur-URL verwenden, werden Sie von OneSpan Sign aufgefordert, die Signierer-ID anstelle der E-Mail- oder Rollen-ID zu verwenden. Beim Erstellen eines Signer-Objekts wird daher dringend empfohlen, eine withCustomId () -Funktion zum Synchronisieren der Rollen-ID und der Signer-ID zu verwenden.

HTTP-Anfrage
GET / api / packages / {packageId} / role / {roleId} / testingUrl
HTTP-Header
Akzeptieren: application / json
Inhaltstyp: application / json
Autorisierung: Basic api_key
Antwortnutzlast
{
  "roleId": "2jsTTXD2dZMZ",
  "url": "https://sandbox.e-signlive.com/auth?target=https %3 EIN %2 F. %2 Fsandbox.esignlive.com \ r \ n %2 Fpackages %2 FnaXQwWFSQB9RkOiH6AguBCkXp2k = %2 Fsign & loginToken = \ r \ nMi4xMDAwGpGY3JJPS55ZnNSeHBmekNxc1RzdnNJRVlBSDkZBR1RhcmxKS09aZ3M4aFZXVlpvdExrdz09 ",
  "packageId": "a3b023bf-db56-4c53-b36e-bd9acd0579f4"
}

In Ruhe

Dies unterscheidet sich vom SDK, da hierfür eine Rollen-ID anstelle einer Unterzeichner-ID erforderlich ist.

Hinweis:

Ähnlich wie beim Authentifizierungstoken ist die Signatur-URL an eine bestimmte E-Mail gebunden. Wenn Sie die E-Mail-Adresse Ihres Unterzeichners ändern, stellen Sie sicher, dass Sie die Funktion erneut ausführen und eine neue Signatur-URL erstellen.

In diesem Blog haben wir gezeigt, wie ein Authentifizierungstoken und eine Signatur-URL programmgesteuert abgerufen werden. Zusammen mit Teil eins dieses Blogs , du kannst Sie haben mehr Flexibilität bei der Auswahl von Authentifizierungstoken.

Wenn Sie Fragen zu diesem Blog oder zu anderen Aspekten der Integration von OneSpan Sign in Ihrer Anwendung haben, besuchen Sie die Entwickler-Community-Foren . Ihr Feedback ist uns wichtig!