OneSpan Sign-Entwickler: OAuth-Ereignisbenachrichtigung für Salesforce - Teil 1

Duo Liang, 24. März 2021

In OneSpan Sign ermöglichen Callback-Ereignisbenachrichtigungen, dass Sie automatisch über Ereignisse benachrichtigt werden, die sich auf eine Transaktion beziehen. Wenn ein bestimmtes Ereignis eintritt, z. B. wenn ein Unterzeichner die Unterzeichnung abgeschlossen hat, sendet das OneSpan Sign-System einen POST-Aufruf an Ihren Listener-Endpunkt mit Basic-Authentifizierung, der den von Ihnen registrierten Callback-Schlüssel enthält, so dass Ihre Anwendung weiß, dass es sich nicht um einen Spoof-Aufruf handelt und entsprechend reagieren kann

Dies ist eine standardisierte Methode zum Senden von Anmeldeinformationen mit Basic-Authentifizierung. Es kann jedoch ein Sicherheitsrisiko darstellen, wenn das Admin-Team den Callback-Schlüssel nicht oft rotiert, oder es funktioniert einfach nicht, wenn Ihr Callback-Listener auf einer Plattform wie Salesforce gehostet wird, die die Authentifizierungsmethode Basic nicht unterstützt

Um diesen Schmerzpunkt zu entschärfen, hat OneSpan Sign einen neuen Callback-Service eingeführt, der den Salesforce OAuth 2.0 Refresh Token Flow implementiert. Es ist jetzt möglich, einen Callback-Listener in Salesforce einzurichten! Dieser leistungsstarke Callback-Mechanismus erhöht das Potenzial Ihrer Salesforce-Integration erheblich, um den laufenden Transaktionsstatus zu überwachen und signierte Dokumente direkt in Salesforce herunterzuladen und zu speichern, um nur einige Anwendungsfälle zu nennen.

In diesem Blog gehen wir die Schritte durch, um eine verbundene App in Salesforce mit aktivierten OAuth-Einstellungen zu registrieren und dann ein Aktualisierungs-Token für diese verbundene App abzurufen. Ohne weitere Verzögerung, lassen Sie uns anfangen!

Registrieren einer Connected App in Salesforce

Auf der Community-Site von Salesforce finden Sie gut dokumentierte Anleitungen, wie Sie eine verbundene App registrieren und OAuth-Einstellungen für API-Integrationen aktivieren. In diesem Abschnitt werden wir bemerkenswerte Punkte im Konfigurationsprozess hervorheben

Schritt 1: Stellen Sie sicher, dass Ihre Salesforce Edition und Ihre Benutzerberechtigungen den Anforderungen entsprechen.

Schritt 2: Wechseln Sie zu Lightning Experience und navigieren Sie zu "Setup"

Schritt 3: Suchen Sie in der Suchleiste nach "App Manager" und wählen Sie "New Connected App"

Schritt 4: Grundlegende Informationen bereitstellen

3-24-1

Schritt 5: Schalten Sie die Option "OAuth-Einstellungen aktivieren" ein

Schritt 6: Geben Sie eine Rückruf-URL an. Dies ist der Link, den Salesforce während OAuth zu Ihrer Anwendung zurückruft

Diese URL ist normalerweise ein Link innerhalb Ihrer Salesforce-Domain. Die Blitz-Homepage erscheint zum Beispiel so:

https://mydomain-dev-ed.lightning.force.com/lightning/page/home

Alternativ können Sie einfach eine generische Erfolgs-URL einfügen:

https://login.salesforce.com/services/oauth2/success

Schritt 7: Gewähren Sie in "Selected OAuth Scopes" der verbundenen App bestimmte Berechtigungen. In unserem Beispiel unten haben wir einfach "Voller Zugriff" erlaubt. Darüber hinaus müssen Sie auch den refresh_token-Bereich explizit anfordern, indem Sie die Option "Perform requests on your behalf at any time (refresh_token, offline_access)" hinzufügen.

Schritt 8: Deaktivieren Sie "Require Secret for Refresh Token Flow", da Sie Ihr Client-Geheimnis nicht an OneSpan Sign übermitteln werden.

3-24-2

Speichern Sie die Konfiguration und warten Sie ein paar Minuten, während Salesforce die Änderungen bereitstellt.

Abrufen eines Aktualisierungs-Tokens

Die OAuth-Authentifizierung verwendet ein kurzlebiges Zugriffstoken, um sicherzustellen, dass ein Benutzer oder ein API-Aufruf ausreichend Zugriff auf bestimmte Ressourcen hat. Wenn Zugriffstoken ablaufen oder ungültig werden, ermöglicht ein Refresh-Token der Anwendung, ein neues Zugriffstoken zu erhalten, ohne den Benutzer aufzufordern. Das Generieren und Versorgen von OneSpan Sign mit einem Aktualisierungs-Token ist der Schlüssel für diesen Ablauf.

Obwohl es auch andere Methoden zum Abrufen des Aktualisierungs-Tokens gibt, werden wir einen funktionierenden Ansatz mit dem Salesforce OAuth 2.0 Web Server Flow demonstrieren.

Schritt 1: Erstellen Sie eine URL mit der unten stehenden Vorlage und öffnen Sie den Link in Ihrem Browser:

https://login.salesforce.com/services/oauth2/authorize?client_id={client_id}&redirect_uri={callback_url}&response_type=code

Sie können alle Parameter auf der Bearbeitungsseite der verbundenen App finden, wenn Sie:

  • Navigieren Sie in der Beleuchtungserfahrung zum Setup und suchen Sie "App Manager"
  • Finden Sie die verbundene App, die wir gerade registriert haben
  • Erweitern Sie die Auswahlliste und wählen Sie "Bearbeiten" und speichern Sie dann, ohne die Einstellungen zu ändern

 3-24-3

Schritt 2: Dieser Link bringt Sie zu einem Web-Login-Flow. Es erfordert, dass Sie der verbundenen App den Zugriff gewähren.

3-24-4

Wenn Sie den Zugriff erfolgreich gewährt haben, werden Sie zu einem Link weitergeleitet, wo Sie den Autorisierungscode an die URL angehängt finden.

3-24-5

Schritt 3: Erstellen Sie mit dem Autorisierungscode eine zweite Anfrage mit der unten stehenden Vorlage und öffnen Sie diese im Browser:

https://login.salesforce.com/services/oauth2/token?grant_type=authorization_code&code={authorization_code}&client_id={client_id}&client_secret={client_secret}&redirect_uri={callback_url}

Der Link gibt Ihnen eine SOAP-Antwort zurück, in der Sie das Refresh-Token zusammen mit einem initialen Access-Token finden.

3-24-6

Ausblick auf die bevorstehende Installation

Da ist es. Wir haben erfolgreich eine verbundene App in Salesforce erstellt und ein funktionierendes Refresh-Token abgerufen. Unter der Standardsicherheitsrichtlinie ist das Aktualisierungs-Token gültig, bis es widerrufen wird. Im nächsten Blog werden wir damit beginnen, diese Sicherheitsrichtlinien zu ändern, um das Token regelmäßig zu rotieren, dann das Refresh-Token über die API an OneSpan Sign zu liefern und schließlich einen Callback-Listener in Salesforce einzurichten. Bleiben Sie einfach dran!

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

OneSpan Sign-Entwickler-Community

OneSpan Sign-Entwickler-Community

Treten Sie der OneSpan Sign Developer Community bei! Foren, Blogs, Dokumentationen, SDK-Downloads und mehr.

Tritt heute bei