View a markdown version of this page

Portée de la politique - Base rocheuse de l'Amazonie AgentCore

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

Portée de la politique

Le champ d'application définit ce à quoi s'applique la politique. Chaque politique de Cedar spécifie trois éléments :

permit( principal is AgentCore::OAuthUser, // WHO is making the request action == AgentCore::Action::"...", // WHAT they want to do resource is AgentCore::Gateway::"..." // WHICH resource they want to access )

Entités et espaces de noms

Cedar utilise des entités pour représenter les principes, les actions et les ressources. Toutes les entités de AgentCore Gateway utilisent l'espace de AgentCore noms.

Format de l'entité : Namespace::EntityType::"identifier"

Principal

Le mandant identifie l'entité qui fait la demande d'autorisation. Le type principal dépend de la façon dont votre AgentCore passerelle est configurée pour l'authentification.

Utilisateur principal d'OAuth

Lors de l'utilisation de l'autorisation OAuth, le principal est un : AgentCore::OAuthUser

principal is AgentCore::OAuthUser

Composantes :

  • principal- L'entité qui fait la demande d'autorisation

  • AgentCore::OAuthUser- Type d'entité représentant OAuth-authenticated les utilisateurs

  • is- Opérateur de vérification de type (correspond à n'importe quelle OAuthUser entité)

Les principaux sont des OAuth-authenticated utilisateurs. Chaque utilisateur possède un identifiant unique issu de la sous-réclamation JWT.

Directeur de l'entité IAM

Lorsque vous utilisez l'autorisation AWS_IAM, le principal est : AgentCore::IamEntity

principal is AgentCore::IamEntity

Composantes :

  • principal- L'entité qui fait la demande d'autorisation

  • AgentCore::IamEntity- Type d'entité représentant les IAM-authenticated appelants

  • is- Opérateur de vérification du type (correspond à n'importe quel opérateur IamEntity)

Les principaux IAM possèdent un id attribut contenant l'ARN IAM de l'appelant. Vous pouvez utiliser la correspondance de modèles sur cet attribut pour implémenter un contrôle d'accès basé sur les comptes ou les rôles.

Action

L'action spécifie l'opération demandée :

action == AgentCore::Action::"RefundTool___process_refund"

Composantes :

  • action- L'opération demandée

  • AgentCore::Action::"RefundTool___process_refund"- Entité d'action spécifique

  • ==- Opérateur de correspondance exacte (uniquement cette action spécifique)

Les actions représentent des appels d'outils dans la AgentCore passerelle MCP. Chaque outil possède une entité d'action correspondante.

Noms des actions par type de cible

L'identifiant d'action de votre politique dépend du type de cible configuré sur votre passerelle :

Type de cible Format de l'action Exemple

MCP

<TargetName>___<ToolName>

NotesTool___manage_notes

AgentCore Temps d'exécution

<TargetName>___<METHOD>:/invocations

StrandsAgentTarget___POST:/invocations

Proxy (HTTP)

<TargetName>___<METHOD>:<uri>

MyAPI___POST:/inference/v1/chat/completions

Actions multiples

Cedar ne prend pas en charge les actions avec caractères génériques. Chaque action doit être référencée explicitement à l'aide de l'identifiant d'action exact (AgentCore::Action::"ToolName___operation"). Pour regrouper plusieurs outils sous une seule règle, utilisez une cible de passerelle (un groupe d'actions) et rédigez des politiques en fonction de cette cible.

Par exemple, pour autoriser l'accès uniquement aux outils dont le nom commence par Read, vous pouvez créer une cible de passerelle appelée ReadToolsTarget qui inclut chacun de ces outils, puis rédiger une politique telle que :

permit( principal, action in AgentCore::Action::"ReadToolsTarget", resource == AgentCore::Gateway::"<gateway-arn>" );

Cela permettra d'utiliser tous les outils inclus dans cette cible en fonction de l'effet de la politique.

Ressource

La ressource identifie la cible de la demande :

resource == AgentCore::Gateway::"arn:aws:bedrock-agentcore:us-west-2:123456789012:gateway/refund-gateway"

Composantes :

  • resource- La cible de la demande

  • AgentCore::Gateway- Type d'entité représentant les instances de passerelle

  • ==- Opérateur de correspondance exacte (correspond à cette AgentCore passerelle spécifique)

La AgentCore passerelle est le serveur MCP qui achemine les appels d'outils.

Exigences relatives à la spécificité des ressources

Lorsque vous spécifiez une ou plusieurs actions spécifiques, vous devez utiliser des ARN de AgentCore passerelle spécifiques :

// Required: Specific Gateway ARN for specific action(s) resource == AgentCore::Gateway::"arn:aws:bedrock-agentcore:us-west-2:123456789012:gateway/refund-gateway"

Cela s’applique aux éléments suivants :

  • Action unique : action == AgentCore::Action::"ToolName"

  • De multiples actions spécifiques : action in [AgentCore::Action::"Tool1", AgentCore::Action::"Tool2"]

Utilisez les vérifications de type uniquement lorsque vous faites correspondre une action :

// For policies covering any action (not specific tools) resource is AgentCore::Gateway

Exemples :

// Blocks all actions forbid(principal, action, resource); // Allow any CallTool action permit(principal, action in AgentCore::Action::"CallTool", resource is AgentCore::Gateway::"arn:aws:bedrock-agentcore:us-west-2:123456789012:gateway/refund-gateway");

Les ARN de AgentCore passerelle spécifiques fournissent :

  • Isolation de sécurité entre les instances de AgentCore Gateway

  • Séparation des environnements de production et de développement

  • Fine-grained contrôle d'accès par AgentCore passerelle