Häufig gestellte Fragen zum Upgrade auf Cedar 4 von Amazon Verified Permissions - Amazon Verified Permissions

Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.

Häufig gestellte Fragen zum Upgrade auf Cedar 4 von Amazon Verified Permissions

Amazon Verified Permissions aktualisiert die verwendete Version von Cedar von Version 2 auf Version 4. Cedar ist die Open-Source-Sprache, mit der Sie die Richtlinien, Richtlinienvorlagen und Schemas in Ihren Policy-Stores schreiben. Dank der Unterstützung von Cedar 4 in Verified Permissions können Sie neue Funktionen wie is Operator- und Entitäts-Tags verwenden, um aussagekräftigere Richtlinien zu verfassen.

Amazon Verified Permissions aktualisiert Policy Stores automatisch auf Cedar 4. Einige Richtlinien, Schemas und Autorisierungsanfragen, die für Cedar 2 geschrieben wurden, sind jedoch nicht mit Cedar 4 kompatibel. Wenn dies bei Ihrem Policy Store der Fall ist, werden wir ihn nicht automatisch aktualisieren. Möglicherweise müssen Sie Änderungen an Ihren Richtlinien, Richtlinienvorlagen, Schemas oder Ihrem Anwendungscode vornehmen, bevor Sie ein Upgrade auf Cedar 4 durchführen können.

Warum sind einige Richtlinien, Richtlinienvorlagen und Schemas nicht mit Cedar 4 kompatibel?

Das Cedar-Team hat seit Cedar 2 mehrere rückwärtsinkompatible Änderungen vorgenommen, um Fehler zu beheben und die Sprache zu vereinfachen. Diese Änderungen umfassen Folgendes:

  • Syntaxänderungen für Richtlinien, Richtlinienvorlagen und Schemas

  • ein genauerer Richtlinienvalidator, der mehr Fehler erkennt

  • Änderungen am Verhalten von eingebauten Funktionen wie isInRange

Eine vollständige Liste der abwärtsinkompatiblen Änderungen finden Sie (*) im Cedar-Changelog nach Elementen, die mit markiert sind.

Woran erkenne ich, ob mein Policy Store Cedar 2 oder Cedar 4 verwendet?

Sie können die Version von Cedar, die Ihr Policy Store verwendet, mithilfe der Amazon Verified Permissions-Konsole oder mithilfe des GetPolicyStore Vorgangs überprüfen.

Anmerkung

Alle Policy Stores in derselben AWS-Konto Region verwenden dieselbe Version von Cedar.

Console
Um die Cedar-Version eines Policy Stores (Konsole) zu überprüfen
  1. Melden Sie sich bei der an AWS-Managementkonsole und öffnen Sie die Amazon Verified Permissions-Konsole unter https://console.aws.amazon.com/verifiedpermissions/.

  2. Wählen Sie im Navigationsbereich Policy Stores und dann den Policy Store aus, den Sie überprüfen möchten.

  3. Wählen Sie im Navigationsbereich Settings (Einstellungen) aus.

  4. Suchen Sie im Feld Details das Feld Cedar Version.

In dem Feld wird CEDAR_2 angezeigt, ob Ihr Policy Store Cedar 2 verwendet und CEDAR_4 ob Cedar 4 verwendet wird.

CLI
Um die Cedar-Version eines Policy Store zu überprüfen (AWS CLI)
  1. Installieren und konfigurieren Sie AWS Command Line Interface (AWS CLI), falls Sie dies noch nicht getan haben. Weitere Informationen finden Sie unter Installieren oder Aktualisieren der neuesten Version von AWS CLI.

  2. Verwenden Sie den get-policy-store-Befehl. Ersetzen Sie es im folgenden Beispiel policy-store-id durch die ID Ihres Richtlinienspeichers:

    aws verifiedpermissions get-policy-store \ --policy-store-id policy-store-id

Das cedarVersion Feld in der Ausgabe zeigt, welche Version von Cedar der Policy Store verwendet. Beispiel:

{ "policyStoreId": "ABCDEFG12345678abcdefg", "arn": "arn:aws:verifiedpermissions::111122223333:policy-store/ABCDEFG12345678abcdefg", "validationSettings": { "mode": "STRICT" }, "createdDate": "2025-06-03T13:09:47.752255+00:00", "lastUpdatedDate": "2025-06-03T13:09:47.752255+00:00", "deletionProtection": "ENABLED", "cedarVersion": "CEDAR_2" }

Das Feld zeigt anCEDAR_2, ob Ihr Policy Store Cedar 2 verwendet und CEDAR_4 ob er Cedar 4 verwendet.

Wie führe ich ein Upgrade auf Cedar 4 durch?

Amazon Verified Permissions hat die meisten Kunden bereits auf Cedar 4 aktualisiert. Wenn Sie noch nie einen Policy Store erstellt haben, verwenden alle neuen Policy Stores, die Sie erstellen, Cedar 4. Wenn Sie bereits Kunde sind, haben wir Sie wahrscheinlich bereits auf Cedar 4 aktualisiert. Schauen Sie Woran erkenne ich, ob mein Policy Store Cedar 2 oder Cedar 4 verwendet? nach, welche Version von Cedar in Ihren Versicherungsgeschäften verwendet wird.

Wenn Sie kein Upgrade erhalten haben, hat Verified Permissions eine Richtlinie, Richtlinienvorlage, ein Schema oder eine Autorisierungsanfrage in einem Ihrer Richtlinienspeicher entdeckt, die nicht mit Cedar 4 kompatibel ist. Wir werden Ihnen im Laufe des Jahres 2025 eine E-Mail-Benachrichtigung senden, in der beschrieben wird, welche Ressourcen nicht kompatibel sind. Wenn Sie früher ein Upgrade durchführen möchten, öffnen Sie eine Hülle mit Support.

Wichtig

Alle Policy-Stores AWS-Konto verwenden dieselbe Version von Cedar. Wenn ein Policystore in Ihrem Konto nicht mit Cedar 4 kompatibel ist, können Sie Cedar 4 in keinem Policystore dieses Kontos verwenden.

Kann ich meinen Policystore von Cedar 4 auf Cedar 2 herabstufen?

Nein. Wenn nach dem Upgrade Ihres Policy Store auf Cedar 4 Probleme auftreten, öffnen Sie einen Fall mit Support.

Warum erhalte ich eine Fehlermeldung, dass mein Policy Store für Cedar 2 konfiguriert ist?

Einige Funktionen von Amazon Verified Permissions basieren auf den neuen Funktionen in Cedar 4. Wenn Ihr Policy Store Cedar 4 nicht verwendet, können Sie die folgenden API-Felder nicht verwenden:

  • In den BatchIsAuthorizedWithToken Operationen IsAuthorizedBatchIsAuthorized, IsAuthorizedWithToken und:

    • datetime, decimal oder duration Werte in den context Feldern attributes oder

Sie können Syntax oder Datentypen in Richtlinien, Richtlinienvorlagen oder Schemas, die nach Cedar 2 eingeführt wurden, erst verwenden, wenn Ihr Richtlinienspeicher aktualisiert wurde.

Wie mache ich mein Schema mit Cedar 4 kompatibel?

Die Verified Permissions-Konsole kann einige Kompatibilitätsprobleme in Ihrem Schema automatisch beheben. Wenn Ihr Schema nicht automatisch repariert werden kann, zeigt die Konsole eine Liste mit Fehlern an, die Sie manuell beheben müssen.

Wichtig

Der Code-Editor in der Amazon Verified Permissions-Konsole zeigt immer Fehler und Warnungen von Cedar 4 an, auch wenn Ihr Policy Store Cedar 2 verwendet. Sie können weiterhin Schemaaktualisierungen vornehmen, die nicht mit Cedar 4 kompatibel sind, indem Sie die Schaltfläche Änderungen speichern oder die Verified Permissions API verwenden.

Um ein Schema mithilfe der Konsole zu korrigieren
  1. Melden Sie sich bei der an AWS-Managementkonsole und öffnen Sie die Amazon Verified Permissions-Konsole unter verifiedpermissions.

  2. Wählen Sie im Navigationsbereich Policy Stores und dann den Policy Store aus, den Sie überprüfen möchten.

  3. Wählen Sie im Navigationsbereich Schema aus.

  4. Wenn Ihr Schema automatisch repariert werden kann, sehen Sie ein Banner mit der Aufschrift „Klicken Sie auf 'Reparieren', um eine Vorschau einer kompatiblen Version anzuzeigen“. Wählen Sie „Reparieren“.

  5. Überprüfen Sie die an Ihrem Schema vorgenommenen Änderungen und klicken Sie auf Vorschau des aktualisierten Schemas anzeigen.

  6. Überprüfen Sie das aktualisierte Schema und klicken Sie auf Änderungen speichern.

Wenn Ihr Schema nicht automatisch repariert werden kann, finden Sie in der Konsole eine Liste mit Fehlern, die Sie selbst beheben können.

  1. Öffnen Sie die Seite „Schema bearbeiten“ wie oben beschrieben.

  2. Wählen Sie den JSON-Modus aus.

  3. Bewegen Sie den Mauszeiger über das rote Fehlersymbol in der Rinne auf der linken Seite des Code-Editors. Die Fehlermeldung wird in einem Tooltip angezeigt.

Im Folgenden finden Sie einige häufig auftretende Fehler und wie Sie sie beheben können:

Das Schema konnte nicht aus JSON analysiert werden: `` field-name

Mit Cedar 2 können Sie beliebige Felder in Teile von Schemas wie Typdefinitionen aufnehmen, auch wenn sie als Teil eines Cedar-Schemas keine Bedeutung haben. In Cedar 4 ist dies nicht mehr zulässig. Um diesen Fehler zu beheben, entfernen Sie das aufgerufene Feld field-name aus Ihrem JSON-Schema. Eine Liste der gültigen Schemafelder finden Sie in der Cedar-Dokumentation.

unbekannter Erweiterungstyp `extension-name`

Wenn Sie in Cedar 2 ein Attribut deklarieren, dessen 'typeist'Extension, können Sie einen beliebigen Wert für das name Feld angeben, unabhängig davon, ob es sich bei dem Wert um einen gültigen Erweiterungstypnamen handelt oder nicht. Dies ist jetzt ein Fehler bei Cedar 4. Um das Problem zu beheben, extension-name ersetzen Sie es durch einen gültigen Namen für den Erweiterungstyp. Eine Liste der gültigen Namen von Erweiterungstypen finden Sie in der Cedar-Dokumentation.

Wenn Sie sich immer noch nicht sicher sind, wie Sie die Fehler in Ihrem Schema beheben können, wenden Sie sich an Support

Wie mache ich meine Richtlinien und Vorlagen mit Cedar 4 kompatibel?

In der Konsole Verified Permissions werden Ihnen alle Fehler in Ihrer Richtlinie oder Vorlage angezeigt, die dazu führen, dass diese nicht mit Cedar 4 kompatibel ist.

Um die Fehler einer Richtlinie oder Vorlage in der Konsole anzuzeigen
  1. Melden Sie sich bei der an AWS-Managementkonsole und öffnen Sie die Amazon Verified Permissions-Konsole unter verifiedpermissions.

  2. Wählen Sie im Navigationsbereich Policy Stores und dann den Policy Store aus, den Sie überprüfen möchten.

  3. Wählen Sie im Navigationsbereich je nach Bedarf Richtlinien oder Richtlinienvorlagen aus.

  4. Wählen Sie die inkompatible Richtlinie oder Vorlage aus.

  5. Wählen Sie Bearbeiten

  6. Bewegen Sie den Mauszeiger über das rote Fehlersymbol in der Rinne auf der linken Seite des Code-Editors. Die Fehlermeldung wird in einem Tooltip angezeigt.

Im Folgenden finden Sie einige häufig auftretende Fehler und wie Sie sie beheben können:

Literale mit leeren Sätzen sind in Richtlinien verboten

In Cedar 2 können Sie die Syntax verwenden, mySet == [] um zu überprüfen, ob ein Satz leer ist. Mit Cedar 4 werden Richtlinien, die diese Syntax verwenden, nicht mehr anhand eines Schemas validiert. Ersetzen Sie mySet == [] in Ihrer Richtlinie durchmySet.isEmpty().