Ressourcenzugriffsstrategien

Strategien und IDs

Eine Ressourcenzugriffsstrategie ist ein Logiksatz, der angibt, auf welche Ressourcen ein Aufrufer zugreifen kann.

Eine Ressourcenzugriffs-ID ist eine Zeichenfolge, die angibt, wer der Aufrufer ist oder was der Aufrufer besitzt.

Für jeden Aufruf wird der Ressourcenzugriff durch das Ausführen der Ressourcenzugriffsstrategie unter Verwendung der Ressourcenzugriffs-ID als Eingabe bestimmt. Nehmen wir beispielsweise an, dass eine bestimmte Ressourcenzugriffsstrategie angibt, dass „der Aufrufer auf Informationen auf Informationen zu Konten zugreifen kann, die er besitzt“. Und nehmen wir dazu an, dass bei einem bestimmten Aufruf die Ressourcenzugriffs-ID die Kontonummer 464778619 ist. Dies würde Folgendes bedeuten:

  • Der Aufrufer kann auf Ressourcen zugreifen, die sich auf Schadenfälle im Zusammenhang mit dem Konto 464778619 beziehen.
  • Der Aufrufer kann nicht auf Ressourcen zugreifen, die sich auf andere Konten als 464778619 beziehen.

Einige Ressourcenzugriffsstrategien erfordern eine einzelne Ressourcenzugriffs-ID. Andere Ressourcenzugriffsstrategien lassen ein Array von Ressourcenzugriffs-IDs zu.

Liste der Ressourcenzugriffsstrategien

Die Basiskonfiguration umfasst die folgenden Ressourcenzugriffsstrategien:

Name der Strategie Rolle, die diese Strategie verwendet Die Ressourcenzugriffs-ID lautet... Gewährt Zugriff auf...
pc_accountNumbers Kontoinhaber (einschließlich anonymer Benutzer, die ein Konto erstellt haben) Eine Kontonummer Ressourcen, die mit dem Konto verknüpft sind, einschließlich der zugehörigen Jobs und Policen
pc_username Interne Benutzer Ein PolicyCenter-Benutzername Ressourcen, die dieser interne Benutzer in PolicyCenter basierend auf den zugehörigen Zugriffssteuerungslisten (ACLs) sehen kann.
pc.​service Vertrauenswürdige Service-to-Service-Anwendung Nicht zutreffend Alle Ressourcen
Standard Aufrufer, die authentifiziert wurden, aber mit dem Aufruf keine Ressourcenzugriffsstrategie angeben Nicht zutreffend Nur Metadatenressourcen (einschließlich API-Schemas und Typenlisten)
unauthenticated Nicht authentifizierte Aufrufer Nicht zutreffend API-Schemas und die Endpunkte zum Erstellen von Konten. (Die Kontoendpunkte werden von anonymen Benutzern verwendet, die ein Angebot für eine Police erstellen und diese gegebenenfalls verbindlich machen möchten.)

Der Strategiename wird im JWT verwendet. Im scp-Token-Claim wird angezeigt, welche Ressourcenzugriffsstrategie für den Aufruf verwendet werden soll. Außerdem wird er gegebenenfalls als eigener Token-Claim angezeigt, um die Ressourcenzugriffs-IDs anzugeben.

Nehmen wir beispielsweise an, dass ein bestimmter Aufruf die Ressourcenzugriffsstrategie pc_accountNumbers mit der Ressourcenzugriffs-ID 464778619 verwendet. Das JWT würde Folgendes beinhalten.

"scp": [
  "pc_accountNumbers"
],
"pc_accountNumbers": [
  "464778619"
]

Festlegen der Ressourcenzugriffsstrategie eines Aufrufs

Ressourcenzugriffsstrategien werden durch internen Code zugewiesen, wie in der folgenden Tabelle beschrieben. Für Aufrufe von Services mit Benutzerkontext werden zwei Ressourcenzugriffsstrategien zugewiesen, eine auf der Serviceebene und eine auf der Benutzerebene. Für alle anderen Aufruftypen wird nur eine Ressourcenstrategie zugewiesen.

Name der Strategie Dieser wird einem Aufruf zugewiesen, wenn...
pc_accountNumbers

Eine der folgenden Bedingungen erfüllt ist:

  • Der scp-Token-Claim des JWT enthält pc_accountNumbers oder
  • Der Aufruf enthält einen Benutzerkontext-Header und der Header enthält einen pc_accountNumbers-Token-Claim.
pc_username

Eine der folgenden Bedingungen erfüllt ist:

  • Der Anruf verwendet die Basisauthentifizierung oder
  • Der scp-Token-Claim des JWT enthält pc_username oder
  • Der Aufruf enthält einen Benutzerkontext-Header und der Header enthält einen pc_username-Token-Claim oder
  • Das JWT hat eine Client-ID angegeben, die einem Servicekonto zugeordnet wurde.
pc.​service Der scp-Token-Claim des JWT enthält pc.​service.
Standard Der Aufrufer wurde authentifiziert, aber das JWT gibt keine Ressourcenzugriffsstrategie an.
unauthenticated Der Aufrufer wurde nicht authentifiziert.

Die Ressourcenzugriffsstrategie pc.service

Die meisten Ressourcenzugriffsstrategien geben Einschränkungen an. Diese Ressourcenzugriffsstrategien schränken ein, was ein Aufrufer anzeigen kann.

Die Ressourcenzugriffsstrategie pc.service gibt jedoch fast keine Einschränkungen an. Dies liegt daran, dass diese Ressourcenzugriffsstrategie für die Verwendung durch Services erstellt wurde. Es wird erwartet, dass Services so konfiguriert werden, dass sie nur auf die den Umständen entsprechenden Ressourcen zugreifen. Folglich enthalten JWTs für API-Aufrufe von Services in der Regel keine Ressourcenzugriffs-IDs.

Beachten Sie, dass sich der Ressourcenzugriff für die verschiedenen servicebezogenen Authentifizierungsabläufe wie hier beschrieben verhält:

  • Für eigenständige Services verwenden Aufrufe die Ressourcenzugriffsstrategie pc.service. Sie haben daher uneingeschränkten Ressourcenzugriff.
  • Bei Services mit Benutzerkontext ist der Ressourcenzugriff jedes Aufrufs der Schnittpunkt des Ressourcenzugriffs auf der Serviceebene und des Ressourcenzugriffs auf der Benutzerebene. Der Ressourcenzugriff auf der Serviceebene erfolgt gemäß der Ressourcenzugriffsstrategie pc.service, bei der keine Einschränkungen bestehen. Daher hat ein Aufruf eines Services mit Benutzerkontext logisch betrachtet den Ressourcenzugriff, der dem Ressourcenzugriff auf Benutzerebene entspricht.
  • Bei Services mit Servicekontozuordnung wird der Service einem internen Servicekonto zugeordnet. Die Ressourcenzugriffsstrategie pc.service wird nicht verwendet. Stattdessen verwendet der Aufruf die Ressourcenzugriffsstrategie pc_username.