View a markdown version of this page

Die Richtlinien von Cedar verstehen - Amazon Grundgestein AgentCore

Die Richtlinien von Cedar verstehen

Policy in AgentCore verwendet die Richtlinien von Cedar, um den Zugriff auf AgentCore Gateway-Tools zu kontrollieren. In diesem Abschnitt werden die Richtlinienstruktur, die Evaluierungssemantik und die wichtigsten Konzepte von Cedar erläutert.

Beispielrichtline

Ziehen Sie ein Tool zur Bearbeitung von Rückerstattungen in Betracht, das folgende Anforderungen erfüllt:

  • Nur der Benutzer „John“ kann Rückerstattungen bearbeiten

  • Rückerstattungen sind auf 500$ oder weniger begrenzt

Die Cedar-Richtlinie, die diese Anforderungen durchsetzt:

permit( principal is AgentCore::OAuthUser, action == AgentCore::Action::"RefundTool___process_refund", resource == AgentCore::Gateway::"arn:aws:bedrock-agentcore:your-region:your-account-id:gateway/refund-gateway" ) when { principal.hasTag("username") && principal.getTag("username") == "John" && context.input.amount < 500 };

Diese Richtlinie ermöglicht die Bearbeitung von Rückerstattungen nur, wenn der Benutzer „John“ ist und der Rückerstattungsbetrag weniger als 500$ beträgt.

Richtlinienstruktur

Die Richtlinien von Cedar bestehen aus drei Hauptkomponenten:

  1. Wirkung — Bestimmt, ob der Zugriff erlaubt oder verweigert werden soll (permitoderforbid)

  2. Geltungsbereich — Gibt das Prinzip, die Aktion und die Ressource an, für die die Richtlinie gilt

  3. Bedingung — Definiert zusätzliche Logik, die erfüllt (whenoderunless) sein muss und sich auf die Werkzeugparameter (über den Kontext) und das OAuth-Token (über die Tags) beziehen kann

Auswirkungen auf die Politik

Die Richtlinien von Cedar nutzen zwei Effekte, um den Zugang zu kontrollieren:

  • permit- Ermöglicht das Fortfahren der Aktion

  • forbid- Lehnt die Aktion ab

Standardmäßige Ablehnung

Alle Aktionen werden standardmäßig verweigert. Wenn keine Richtlinien mit einer Anfrage übereinstimmen, gibt Cedar DENY zurück. Sie müssen explizit Genehmigungsrichtlinien schreiben, um Aktionen zuzulassen.

Bewertung der Autorisierung

Cedar verwendet ein Bewertungsmodell, bei dem das Außerkraftsetzen von Genehmigungen verboten ist:

  1. Cedar bewertet alle Richtlinien, die für die Anfrage gelten

  2. Wenn eine Verbotsrichtlinie zutrifft, lautet das Ergebnis DENY

  3. Wenn mindestens eine Genehmigungsrichtlinie zutrifft und keine verbotene Richtlinie zutrifft, lautet das Ergebnis ALLOW

  4. Wenn keine Richtlinien übereinstimmen, lautet das Ergebnis DENY (Standardeinstellung verweigern)

Unabhängigkeit der Politik

Jede Cedar-Richtlinie wird unabhängig bewertet. Die Bewertung einer Richtlinie hängt nur von folgenden Faktoren ab:

  • Der Geltungsbereich (Prinzip, Maßnahme, Ressource)

  • Der Kontext und die Tags

Richtlinien verweisen nicht auf andere Richtlinien und sind auch nicht von diesen abhängig.

Algorithmus zur Bewertung von Richtlinien

Wenn eine Anfrage ausgewertet wird, bestimmt die Policy-Engine die Autorisierungsentscheidung mithilfe des folgenden Algorithmus:

  1. Wenn eine forbid Richtlinie mit der Anfrage übereinstimmt, lautet die Entscheidung DENY.

  2. Wenn keine forbid Richtlinie mit der Anfrage übereinstimmt und mindestens eine permit Richtlinie zutrifft, lautet die Entscheidung ALLOW.

  3. Wenn forbid weder permit die Richtlinien noch die Richtlinien mit der Anfrage übereinstimmen, lautet die Entscheidung VERWEIGERN.

Dieses Bewertungsmodell erzwingt die Standardeinstellung „Ablehnen“.

Eine forbid Richtlinie kann niemals zu einer ALLOW-Entscheidung führen. Die unless Klausel zu einer forbid Richtlinie legt Bedingungen fest, unter denen diese forbid Richtlinie nicht gilt. Sie erteilt keine Genehmigung und setzt eine entsprechende permit Richtlinie nicht außer Kraft.