Beispielablauf für eigenständige Services
Das folgende Diagramm veranschaulicht den Austausch von Authentifizierungs- und Autorisierungsinformationen für eigenständige Services. Die Farben stehen für Folgendes:
- Orange: Anmeldeinformationen
- Blau: Endpunktzugriffsinformationen
- Grün: Ressourcenzugriffsinformationen
- Rot: Proxy-Benutzer- und Sitzungsinformationen
Einige Werte werden verwendet, um mehrere Zugriffsarten zu bestimmen. Diese Werte erscheinen zunächst in schwarz (wenn sie nicht für einen speziellen Zugriffstyp gelten) und dann später in einer oder mehreren bestimmten Farben (als Identifizierung des Werts, der zu diesem Zeitpunkt im Prozess für eine bestimmte Zugriffsart verwendet wird).
Im folgenden Beispiel wird ein API-Aufruf vom Acme FNOLReporter ausgelöst.

- Wenn FNOLReporter einen API-Aufruf auslöst, muss zuerst ein JWT vom Guidewire Hub angefordert werden. Die Anforderung des JWT umfasst die Client-ID (
0oaqt9pl1vZK1kybt0h7), das Geheimnis (aSecret), die API-Rolle der Anwendung (scp.cc.acme_fnolreporter), die Ressourcenzugriffsstrategie der Anwendung (cc.service) und zusätzliche Bereitstellungsinformationen (tenant.acme,project.default,planet_class.prod). - Guidewire Hub authentifiziert die Services basierend auf der Client-ID und dem Geheimnis. Außerdem wird verifiziert, dass die API-Rolle und die Ressourcenzugriffsstrategie in der Anforderung mit den Angaben übereinstimmen, die bei der Registrierung des Services bei Guidewire Hub angegeben wurden.
- Guidewire Hub generiert ein JWT und sendet es an den Service. Dieses JWT enthält die Client-ID (
cid) und einenscp-Token-Claim, der die API-Rolle (scp.cc.acme_fnolreporter), die Ressourcenzugriffsstrategie (cc.service) und zusätzliche Bereitstellungsinformationen enthält. - Der Service sendet die API-Anforderung zusammen mit dem JWT an ClaimCenter.
- ClaimCenter bestimmt den Endpunktzugriff. Ausgehend vom Wert „
scp.cc.“ der im JWT (scp.cc.acme_fnolreporter) enthalten ist, wird der Endpunktzugriff mithilfe der API-Rollendateiacme_fnolreporter.role.yamldefiniert. - Als Nächstes bestimmt ClaimCenter die Ressourcenzugriffsstrategie. Ausgehend von dem im JWT enthaltenen Wert der Ressourcenzugriffsstrategie (
cc.service) wird der Ressourcenzugriff laut Definition in der DateiserviceUseraccess.yamlgewährt. (* ClaimCenter beginnt mitserviceUser_ext-1.0.access.yaml, aber diese Datei verweist auf zusätzlicheaccess.yaml-Dateien, deren Namen mit „serviceUser“ beginnen.) - Um zu bestimmen, welcher Proxy-Benutzer der Sitzung zugewiesen werden soll, greift ClaimCenter auf das
RestAuthenticationSourceCreator-Plugin zu. Das JWT hat eine Ressourcenzugriffsstrategie mit dem Namencc.servicefestgelegt. Das Plugin gibt somit den Proxy-Benutzer für Services zurück:serviceuser. - ClaimCenter verarbeitet die Anforderung.
- Der Sitzungsbenutzer ist der Proxy-Service-Benutzer:
serviceuser. - Der Endpunktzugriff wird durch die Datei
acme_fnolreporter.role.yamldefiniert. - Der Ressourcenzugriff wird durch die Datei
serviceUseraccess.yamldefiniert. In der Basiskonfiguration werden alle Ressourcen durch die Dateienserviceuseraccess.yamlzur Verfügung gestellt. Daher gibt es logisch betrachtet keine Beschränkungen des Ressourcenzugriffs.
- Der Sitzungsbenutzer ist der Proxy-Service-Benutzer:
- ClaimCenter stellt die Antwort auf den ersten Aufruf bereit.