Sicherheit
Diese Komponenten sind in der Kategorie "Sicherheit" des YAML-basierten Dialogablaufeditors verfügbar.
System.OAuth2Client
In diesem Thema wird die Verwendung dieser Komponente im YAML-Modus behandelt. Informationen zur Verwendung im Visual Flow Designer finden Sie unter OAuth 2.0 Client.
Mit dieser Komponente können Sie ein OAuth2-Zugriffstoken des Berechtigungstyps "Clientzugangsdaten" abrufen. Sie können damit also ein Zugriffstoken abrufen, das auf den Clientzugangsdaten und nicht auf dem Namen und Kennwort des Benutzers basiert. Mit dieser Komponente können Sie ein Token abrufen, das den Zugriff auf Clientressourcen ermöglicht, die von Oracle Identity Cloud Service oder Oracle Access Manager (OAM) gesichert werden.
Wenn Sie im Namen eines Benutzers auf Ressourcen zugreifen müssen, finden Sie weitere Informationen unter System.OAuth2AccountLink und System.OAuthAccountLink.
Bevor Sie diese Komponente in einem Skill verwenden können, müssen Sie folgende Aufgaben ausführen:
- Wenn der Client noch nicht registriert wurde, registrieren Sie ihn beim Identitätsprovider, wie unter Identitätsproviderregistrierung beschrieben.
- Fügen Sie einen Clientzugangsdaten-Authentifizierungsservice für den Identitätsprovider hinzu, wie unter Authentifizierungsservices beschrieben.
Eigenschaft | Beschreibung | Erforderlich? |
---|---|---|
authenticationService |
Der Name des Clientzugangsdaten-Service, den Sie in der Authentifizierungsservices-UI für den OAuth2-Identitätsprovider erstellt haben. | Ja |
accessTokenVariableName |
Gibt die Variable an, in der das Zugriffstoken gespeichert wird. Sie können sie im Knoten context als Variable, Zeichenfolge oder einen anderen unterstützten Variablentyp deklarieren. Es kann sich auch um eine benutzerspezifische Variable handeln. Beispiel: user.accessToken .
|
Ja |
Diese Komponente hat keine Aktionen. Um mögliche Systemprobleme zu verarbeiten, fügen Sie einen nächsten Übergang hinzu, der zu einem Status führt, der derartige Fehler verarbeiten kann.
Nachfolgend finden Sie ein Beispiel für einen Status, der diese Komponente verwendet:
getAccessToken:
component: "System.OAuth2Client"
properties:
authenticationService: "myAuthenticationService"
accessTokenVariableName: "myAuthServiceToken"
transitions:
next: "next"
error: "error" # handle auth service issues
System.OAuth2AccountLink
In diesem Thema wird die Verwendung dieser Komponente im YAML-Modus behandelt. Informationen zur Verwendung im Visual Flow Designer finden Sie unter OAuth 2.0 Accountlink.
Verwenden Sie diese Komponente, um ein OAuth2-Benutzerzugriffstoken (Berechtigungstyp Autorisierungscode) für Ressourcen abzurufen, die von OCI IAM, Oracle Access Manager (OAM), Microsoft-Identitätsplattform oder Google OAuth 2.0-Autorisierung gesichert werden. Diese Komponente führt alle Schritte für den dreistufigen OAuth2-Ablauf aus und gibt das OAuth2-Zugriffstoken zurück.
Mit der Einstellung requiresAuthorization
können Sie angeben, welche Status eine Autorisierung erfordern, bevor sie aufgerufen werden können. Wenn der Benutzer für die Status, die eine Autorisierung erfordern, noch nicht autorisiert ist, wird der Status System.OAuth2AccountLink
aufgerufen. Der Ablauf ruft dann den Status auf, der die Autorisierung erforderte. Unter Benutzerautorisierung in Gruppenchats erfahren Sie, wie Sie dieses Feature verwenden (es funktioniert für alle Chats, nicht nur für Gruppenchats).
Wenn Sie ein Zugriffstoken des Berechtigungstyps "Clientzugangsdaten" anfordern müssen, finden Sie weitere Informationen unter System.OAuth2Client.
Bevor Sie diese Komponente in einem Skill verwenden können, müssen Sie folgende Aufgaben ausführen:
- Wenn der Client noch nicht registriert wurde, registrieren Sie ihn mit dem Identitätsprovider, wie unter Identitätsproviderregistrierung beschrieben.
- Fügen Sie einen Authentifizierungsservice für den Identitätsprovider hinzu, wie unter Authentifizierungsservices beschrieben.
Einige Identitätsprovider stellen Aktualisierungstoken aus. Wenn Sie diese Komponente verwenden, speichert Digital Assistant das Aktualisierungstoken für den Aufbewahrungszeitraum, der für den Authentifizierungsservice angegeben ist. Das Backend von Digital Assistant kann das Aktualisierungstoken verwenden, sofern verfügbar, um ein neues Zugriffstoken abzurufen, ohne dass sich der Benutzer erneut anmelden muss.
Tipp:
In Skills mit Plattformversion 21.04 und höher werden die Standardwerte für die EigenschaftencancelLabel
, linkLabel
und prompt
im Resource Bundle des Skills gespeichert. Um einen Standardwert zu ändern, öffnen Sie die Seite Resource Bundle des Skills, klicken Sie auf 
Sie können auch die Nachrichten Sonstige - oauthCancelPrompt und Sonstige - oauthSuccessPrompt im Konfigurations-Bundle ändern.
Eigenschaft | Beschreibung | Erforderlich? |
---|---|---|
accessTokenVariableName
|
Gibt die Variable an, in der das Zugriffstoken gespeichert wird. Wenn die Variable benutzerbezogen ist, z.B. user.accessToken , kann sie skillübergreifend gemeinsam verwendet werden.
Der Standardwert lautet |
Nein |
authenticatedUserVariableName
|
Gibt die Variable an, in der der authentifizierte Benutzername gespeichert werden soll (der Name, den der Identitätsprovider kennt). Wenn die Variable benutzerbezogen ist, z.B. user.authenticatedUser , kann sie skillübergreifend gemeinsam verwendet werden.
Der Standardwert lautet |
Nein |
authenticationService
|
Der Name des Autorisierungscodeservice, den Sie in der Authentifizierungsservices-UI für den OAuth2-Identitätsprovider erstellt haben. | Ja |
autoNumberPostbackActions
|
Wenn diese Option auf true gesetzt ist, wird der Option "Abbrechen" eine Nummer als Präfix vorangestellt. Dies ist eine serverseitige Postback-Aktion. Der Option wird keine Nummer als Präfix zum Abrufen eines Zugriffstokens vorangestellt, weil das eine URL-Aktion ist, bei der es sich um eine clientseitige Aktion handelt, der keine Folgenummer vorangestellt werden kann.
Selbst wenn Sie diese Option nicht auf
Siehe Auto-Numbering for Text-Only Channels in YAML Dialogflows und |
Nein |
cancelLabel
|
Mit dieser Option können Sie das Label für die Schaltfläche überschreiben, auf die Benutzer klicken können, um den Status zu verlassen, ohne das Authentifizierungsdialogfeld aufzurufen. Das Standardlabel ist Abbrechen .
|
Nein |
enableSingleSignOn
|
(Nur MS Teams) Wenn Sie Microsoft Teams-Single Sign-On (SSO) eingerichtet haben, können Sie diese Option auf true setzen, damit Benutzer, die sich bereits bei MS Teams angemeldet haben, sich nicht beim Skill anmelden müssen. Der Standardwert lautet false . Siehe SSO-Konfiguration für Microsoft Teams-Kanäle.
SSO wird für die Verwendung mit den Kalenderkomponenten nicht unterstützt. |
Nein |
footerText
|
Erweitert das Anmeldedialogfeld, indem unter den Optionen "Anmelden" und "Abbrechen" Text hinzugefügt wird. Wie unter Footer beschrieben, können Sie FreeMarker-Ausdrücke verwenden, um den Footertext für Nur-Text-Kanäle bedingt zu formatieren. | Nein |
linkLabel
|
Mit dieser Option können Sie das Label für die Schaltfläche überschreiben, auf die Benutzer klicken können, um das Authentifizierungsdialogfeld aufzurufen. Das Standardlabel ist Zugriffstoken abrufen .
|
Nein |
prompt
|
Die Zeichenfolge für die Benutzeraufforderung anstelle des Standardwertes Melden Sie sich an .
|
Nein |
showCancelOption
|
(Optional) Hiermit können Sie angeben, ob die Schaltfläche Abbrechen angezeigt werden soll. Standardmäßig ist diese Option auf true gesetzt, d.h. die Schaltfläche Abbrechen wird angezeigt. In einigen Fällen, wie bei SMS-Kanälen, möchten Sie diese Schaltfläche möglicherweise nicht anzeigen. Sie können ein derartiges Verhalten mit einem Ausdruck wie folgt konfigurieren:
|
Nein |
translate
|
Verwenden Sie diese optionale boolesche Eigenschaft, um den booleschen Wert der Kontextvariablen autoTranslate außer Kraft zu setzen. Beachten Sie, dass autoTranslate auf false gesetzt ist (aus automatischer Übersetzung ausschließen), wenn diese Kontextvariable nicht explizit auf true gesetzt wird.
|
Nein |
updateUserProfile
|
Wenn der Identitätsprovider eine OCI-IAM-Identitätsdomain ist und Sie das Benutzerprofil für die Dauer der Session aus IAM speichern möchten, setzen Sie diese Eigenschaft auf true . Wenn diese Eigenschaft auf true gesetzt ist und ein Benutzer zur Authentifizierung aufgefordert wird, versucht die Komponente, die Benutzerprofildaten vom Identitätsprovider abzurufen und die Ergebnisse in der userProfile.<authorization service> -Map festzulegen. Der Wert ist standardmäßig false . Siehe Benutzerprofil für die Dauer der Session speichern.
|
Nein |
Diese Komponente kann folgende Aktionen zurückgeben:
Aktion | Beschreibung |
---|---|
fail
|
Der Benutzer hat auf die Schaltfläche "Abbrechen" geklickt. |
pass
|
Das Zugriffstoken wurde erfolgreich abgerufen. |
textReceived
|
Der Benutzer hat Text eingegeben, anstatt auf die Schaltfläche "Abbrechen" zu klicken oder sich erfolgreich zu authentifizieren. |
Wenn die Dialog-Engine die Komponente ermittelt, fordert der Skillbot den Benutzer mit zwei Links zu einer Handlung auf: Zugriffstoken abrufen und Abbrechen (Sie können den Linktext mit linkLabel
und cancelLabel
ändern).

Beschreibung der Abbildung oauth2accountlinksignin1.png
Wenn der Benutzer auf den Link zum Abrufen eines Zugriffstokens klickt, wird die Anmeldeseite oder das Authentifizierungsdialogfeld des Identitätsproviders angezeigt, wie vom Authentifizierungsservice angegeben. Nach erfolgreicher Anmeldung wird das Zugriffstoken abgerufen, die Werte für die Variablen accessTokenVariableName
und authenticatedUserVariableName
werden festlegt, und es wird in den Status übergegangen, der durch die pass
-Aktion benannt wird (oder den nächsten Status, wenn keine pass
-Aktion vorhanden ist). Wenn der Benutzer den Vorgang abbricht, wird die Postback-Aktion auf fail
gesetzt. Wenn der Benutzer Text eingibt, wird die Aktion textReceived
zurückgegeben.

Beschreibung der Abbildung oauth2accountlinksignin2.png
Wie bereits erwähnt können Sie requiresAuthorization
für einen Status festlegen, um sicherzustellen, dass der Benutzer autorisiert ist, bevor die Komponente des Status aufgerufen wird. Wenn der Benutzer noch nicht autorisiert ist, ruft das Dialogfeld die Aktion system.authorizeUser
in defaultTransitions
auf. Beispiel:
main: true
name: RequiresAuthorizationExample
context:
variables:
iResult: "nlpresult"
defaultTransitions:
actions:
system.authorizeUser: "login"
states:
intent:
component: "System.Intent"
properties:
variable: "iResult"
transitions:
actions:
reg.general.showPasscode: "showPasscode"
reg.general.showPhoneNumber: "showPhoneNumber"
unresolvedIntent: "handleUnresolved"
showPasscode:
component: "System.Output"
requiresAuthorization: true
properties:
text: "XYZABC123"
transitions:
return: "done"
showPhoneNumber:
component: "System.Output"
requiresAuthorization: false
properties:
text: "555-1212"
transitions:
return: "done"
handleUnresolved:
component: "System.Output"
requiresAuthorization: false
properties:
text: "You can ask for my phone number or ask for the passcode."
transitions:
return: "done"
login:
component: "System.OAuth2AccountLink"
properties:
prompt: "${profile.firstName}, please login"
authenticationService: "MyAuthenticationService"
accessTokenVariableName: "user.accessToken"
authenticatedUserVariableName: "user.authenticatedUserId"
transitions:
actions:
pass : "${system.requestedState}"
fail : "handleFailedLogin"
textReceived: "intent"
handleFailedLogin:
component: "System.Output"
requiresAuthorization: false
properties:
text: "Sorry, you aren't authorized to do that"
transitions:
return: "done"
Benutzerprofil für die Dauer der Session speichern
Wenn der Skill den Dialogablauf basierend auf dem OCI-IAM-Identitätsdomainprofil des Benutzers steuern muss, setzen Sie die Eigenschaft updateUserProfile
der System.OAuth2AccountLink
-Komponente auf true
. Dadurch können Sie die Profilinformationen des IAM-Benutzers aus der userProfile.<authorization service>
-Map abrufen.
Wenn updateUserProfile
auf true
gesetzt ist, ruft die System.OAuth2AccountLink
-Komponente das Benutzerprofil von IAM ab und speichert die Daten in einem Objekt in der userProfile.<authorization service>
-Map.
Nehmen wir beispielsweise an, dass der Dialogablauf folgenden Status aufweist:
oauth2AccountLink:
component: "System.OAuth2AccountLink"
properties:
authenticationService: "myIAMProvider"
authenticatedUserVariableName: "user.authuser"
accessTokenVariableName: "user.accessToken"
updateUserProfile: true
transitions:
actions:
pass: "askGreeting"
fail: "fail"
textReceived: "authTextReceived"
Nach der Anmeldung des Benutzers wird das userProfile.myIAMProvider
-Objekt mit dem Benutzerprofil von IAM vordefiniert, wie in diesem Beispiel gezeigt:
"userProfile.myIAMProvider": {
"sub": "myUsername",
"website": "",
"birthdate": "",
"email_verified": false,
"gender": "",
"updated_at": 1584561296,
"name": "First Last",
"preferred_username": "myUsername",
"given_name": "First",
"family_name": "Last",
"email": "first.last@oracle.com",
"appRoles": [
{
"appName": "some-instance-1_APPID",
"displayName": "RoleName",
"appID": "1234567abcd12345",
"name": "some-instance-1_APPID",
"adminRole": false,
"legacyName": "some-instance-1.RoleName",
"id": "1234567abcdefg",
"$ref": "http://some/path/v1/AppRoles/a111234567abcdefg"
}
]
}
Mehrere Authentifizierungsservices verarbeiten
Wenn der Skillbot Zugriffstoken von mehreren Authentifizierungsservices benötigt, können Sie eindeutige Variablennamen für Zugriffstoken und authentifizierte Benutzer für jede Verwendung dieser Komponente angeben, wie in diesem Beispiel dargestellt:
...
states:
# First Authentication Service
getAccessToken1:
component: "System.OAuth2AccountLink"
properties:
authenticationService: "AuthService1"
accessTokenVariableName: "user.accessToken1"
authenticatedUserVariableName: "user.authenticatedUser1"
transitions:
actions:
pass: "getAccessToken2"
textReceived: "handleAuthTextResponse"
fail: "authCancelled"
# Second Authentication Service
getAccessToken2:
component: "System.OAuth2AccountLink"
properties:
authenticationService: "AuthService2"
accessTokenVariableName: "user.accessToken2"
authenticatedUserVariableName: "user.authenticatedUser2"
transitions:
actions:
pass: "getBankUserProfile"
textReceived: "handleAuthTextResponse"
fail: "authCancelled"
...
System.OAuth2ResetTokens
In diesem Thema wird die Verwendung dieser Komponente im YAML-Modus behandelt. Informationen zur Verwendung im Visual Flow Designer finden Sie unter OAuth 2.0-Token zurücksetzen.
Mit dieser Komponente können Sie alle Aktualisierungs- und Benutzerzugriffstoken des angemeldeten Benutzers vom Identitätsprovider entziehen, den der Authentifizierungsservice repräsentiert. Außerdem werden die Aktualisierungstoken aus der Datenbank entfernt. Um diese Komponente verwenden zu können, müssen Sie die URL zum Widerrufen von Aktualisierungstoken des Identitätsproviders in der Authentifizierungsservice-UI angeben.
Der Skill muss einen Status enthalten, der die Komponente OAuth2AccountLink
für denselben Authentifizierungsservice verwendet, und er muss vor dem Status aufgerufen werden, der die Komponente System.OAuth2ResetTokens
verwendet.
Eigenschaft | Beschreibung | Erforderlich? |
---|---|---|
authenticationService |
Der Name des Service, den Sie in der Authentifizierungsservice-UI für den OAuth2-Identitätsprovider erstellt haben. Dieser Service muss eine gültige URL zum Widerrufen von Aktualisierungstoken haben. | Ja |
Diese Komponente kann folgende Aktion zurückgeben:
Aktion | Beschreibung |
---|---|
noRefreshTokenFound |
Der Authentifizierungsservice verfügt über keine Aktualisierungstoken für den Benutzer. |
System.OAuthAccountLink
In diesem Thema wird die Verwendung dieser Komponente im YAML-Modus behandelt. Informationen zur Verwendung im Visual Flow Designer finden Sie unter OAuth Accountlink.
Verwenden Sie diese Komponente, um den Autorisierungscode für Services zu erhalten, die durch den Autorisierungscode-Berechtigungsablauf gesichert werden, wie LinkedIn, Twitter, Google oder Microsoft. Die benutzerdefinierten Komponenten des Skills können den Autorisierungscode für ein Zugriffstoken austauschen, mit dem sie dann den Endservice aufrufen.
Die Komponente leitet den Benutzer zunächst zur Anmeldeseite des Identitätsproviders weiter. Nach erfolgreicher Anmeldung gibt die Komponente den Autorisierungscode in einer Variablen zurück, mit der Sie den Autorisierungscode an die benutzerdefinierte Komponente übergeben. Die benutzerdefinierte Komponenten-API muss den Autorisierungscode, die Client-ID und das Client Secret gegen ein OAuth2-Benutzerzugriffstoken austauschen.
Mit der Einstellung requiresAuthorization
können Sie angeben, welche Status eine Autorisierung erfordern, bevor sie aufgerufen werden können. Wenn der Benutzer für die Status, die eine Autorisierung erfordern, noch nicht autorisiert ist, wird der Status System.OAuthAccountLink
aufgerufen. Der Ablauf ruft dann den Status auf, der die Autorisierung erforderte. Unter Benutzerautorisierung in Gruppenchats erfahren Sie, wie Sie dieses Feature verwenden (es funktioniert für alle Chats, nicht nur für Gruppenchats).
Tipp:
In Skills mit Plattformversion 21.04 und höher werden die Standardwerte für die EigenschaftencancelLabel
, linkLabel
und prompt
im Resource Bundle des Skills gespeichert. Um einen Standardwert zu ändern, öffnen Sie die Seite Resource Bundle des Skills, klicken Sie auf 
Sie können auch die Nachrichten Sonstige - oauthCancelPrompt und Sonstige - oauthSuccessPrompt im Konfigurations-Bundle ändern.
Eigenschaft | Beschreibung | Erforderlich? |
---|---|---|
authorizeURL |
Die Anmelde-URL. In der Eigenschaft "authorizeURL" wird beschrieben, wie diese URL konfiguriert wird. | Ja |
autoNumberPostbackActions |
Wenn Sie dies auf true setzen, stellt diese Option der Option "Abbrechen" eine Zahl voran. Selbst wenn Sie diese Option nicht auf true gesetzt haben, kann die automatische Nummerierung für Listenelemente erzwungen werden, wenn die Konfiguration Automatische Nummerierung bei Postback-Aktionen aktivieren des digitalen Assistenten auf true gesetzt ist. Kanalspezifische automatische Nummerierung kann auf alle bei einem digitalen Assistenten registrierten Skillbots angewendet werden:
|
Nein |
cancelLabel |
Mit dieser Option können Sie das Label für die Schaltfläche überschreiben, auf die Benutzer klicken können, um den Status zu verlassen, ohne das Authentifizierungsdialogfeld aufzurufen. Das Standardlabel ist Abbrechen .
|
Nein |
footerText |
Erweitert das Anmeldedialogfeld, indem unter den Optionen "Anmelden" und "Abbrechen" Text hinzugefügt wird. Wie unter Footer beschrieben, können Sie FreeMarker-Ausdrücke verwenden, um den Footertext für Nur-Text-Kanäle bedingt zu formatieren. | Nein |
linkLabel |
Mit dieser Option können Sie das Label für die Schaltfläche überschreiben, auf die Benutzer klicken können, um das Authentifizierungsdialogfeld aufzurufen. Das Standardlabel ist Anmelden .
|
Nein |
prompt |
Die Zeichenfolge, mit der der Benutzer zur Anmeldung aufgefordert wird. | Ja |
showCancelOption |
(Optional) Hiermit können Sie angeben, ob die Schaltfläche Abbrechen angezeigt werden soll. Standardmäßig ist diese Option auf true gesetzt, d.h. die Schaltfläche Abbrechen wird angezeigt. In einigen Fällen, wie bei SMS-Kanälen, möchten Sie diese Schaltfläche möglicherweise nicht anzeigen. Sie können ein derartiges Verhalten mit einem Ausdruck wie folgt konfigurieren:
|
Ja |
translate |
Verwenden Sie diese optionale boolesche Eigenschaft, um den booleschen Wert der Kontextvariablen autoTranslate außer Kraft zu setzen. Beachten Sie, dass autoTranslate auf false gesetzt ist (aus automatischer Übersetzung ausschließen), wenn diese Kontextvariable nicht explizit auf true gesetzt wird.
|
Nein |
variable |
Gibt die Variable an, in der der Autorisierungscode gespeichert wird. Sie können sie im Kontextknoten als Variable, Zeichenfolge oder als einen anderen unterstützten Variablentyp deklarieren. Es kann sich auch um eine Benutzervariable handeln. | Ja |
Diese Komponente kann folgende Aktionen zurückgeben:
Aktion | Beschreibung |
---|---|
fail |
Der Benutzer hat auf die Schaltfläche "Abbrechen" geklickt. |
pass |
Der Autorisierungscode wurde erfolgreich abgerufen. |
textReceived |
Der Benutzer hat Text eingegeben, anstatt auf die Schaltfläche "Abbrechen" zu klicken oder sich erfolgreich zu authentifizieren. |
In diesem Beispiel werden die erforderlichen Eigenschaften dargestellt, die Sie für die Komponente System.OAuthAccountLink
definieren müssen: prompt
, in der die Anmeldenachricht festgelegt wird, variable
, die die Komponente anweist, wo der Autorisierungscode gespeichert werden soll, und authorizeURL
, die die OAuth-URL des Providers und die Umleitungs-URL definiert, die den Autorisierungscode erhält.
login:
component: "System.OAuthAccountLink"
properties:
prompt: "Please login now."
linkLabel: "login"
cancelLabel: "cancel"
authorizeURL: "https://www.linkedin.com/oauth/v2/authorization?response_type=code&client_id=75k0vq4&scope=r_basicprofile&redirect_uri=https%3A%2F%2FmyBotsinstance%2Fconnectors%2Fv2%2Fcallback"
variable: "authCode"
transitions:
next: getBankUserProfile
actions:
textReceived: handleAuthTextResponse
fail: authCancelled
Wenn die Dialog-Engine diese Komponente aufruft, bietet der Skillbot dem Benutzer zwei Links an: Anmelden und Abbrechen.
Es gibt mehrere Möglichkeiten für den Übergang von dieser Komponente aus:
-
Der Benutzer klickt auf die Schaltfläche "Abbrechen", und die Komponente geht in den Status über, der von der Aktion
fail
benannt wird. -
Der Benutzer klickt nicht auf eine der Schaltflächen, sondern gibt stattdessen Text ein. Die Komponente geht in den Status über, der von der Aktion
textReceived
benannt wird. -
Der Benutzer klickt auf den Anmeldelink, und der Kanal zeigt die Anmeldeseite des Identitätsproviders oder das zugehörige Authentifizierungsdialogfeld als Webview an, wie im folgenden Beispiel dargestellt. Nach erfolgreicher Autorisierung geht die Komponente in den Status über, der von der Aktion
pass
benannt wird (oder in den nächsten Status, wenn keine Aktionpass
vorhanden ist). Dabei wird normalerweise eine benutzerdefinierte Komponente aufgerufen, die den Autorisierungscode gegen ein Zugriffstoken austauscht.
Wenn das Testfenster nicht als Webview angezeigt wird, können Sie den Linktext kopieren und in den Browser einfügen.
Die Eigenschaft authorizeURL
Um diese Eigenschaft zu konfigurieren, beginnen Sie mit der URL des Identitätsproviders, wie https://www.linkedin.com/oauth/v2/authorization
im Beispiel. Hängen Sie als Nächstes die folgenden OAuth-Parameter an diese URL an:
-
response_type
: Setzen Sie diesen Wert aufcode
, da der Skillbot einen Autorisierungscode erwartet. -
client_id
: Der API-Schlüsselwert, den Sie erhalten haben, als Sie die App beim Identitätsprovider registriert haben. -
scope
: Eine Liste mit Berechtigungen für den Zugriff auf Ressourcen im Namen des Benutzers. Dies sind die Berechtigungen, die Sie beim Registrieren der App beim Provider festlegen. Sie können je nach Provider variieren. Für LinkedIn umfassen sie:r_basicprofile
(im Beispiel angezeigt) undr_emailadress
. Bei Microsoft werden sie mitopenid email
undopenid profile
definiert. -
redirect_uri
: Dies ist die Umleitungs-URI, mit der Sie Ihre App beim Identitätsprovider registriert haben. Sie weist den Provider an, wohin die Benutzer umgeleitet werden sollen. Dieser Parameter ist der Hostname des Digital Assistant-Service, an denconnectors/v2/callback
angehängt ist. Er ist der Endpunkt, der den Autorisierungscode erhält und mit dem aktiven Kanal verknüpft. Die Eigenschaftredirect_uri
basiert auf der Webhook-URL, die beim Erstellen eines Kanals generiert wird. Siehe Was sind Kanäle?Stellen Sie sicher, dass der von Ihnen für
redirect_uri
eingegebene Wert exakt mit der Umleitungs-URI übereinstimmt, die Sie beim Registrieren der App verwendet haben. In beiden Fällen mussconnectors/v2/callback
an die URI angehängt werden.
Wenn die Instanz auf Oracle Cloud Platform bereitgestellt ist (wie alle Instanzen der Version 19.4.1), verwenden Sie v1
anstelle von v2
.