View a markdown version of this page

Escopo da política - Base da Amazônia AgentCore

As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.

Escopo da política

O escopo define a que a política se aplica. Cada política da Cedar especifica três componentes:

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 )

Entidades e namespaces

A Cedar usa entidades para representar diretores, ações e recursos. Todas as entidades no AgentCore Gateway usam o AgentCore namespace.

Formato da entidade: Namespace::EntityType::"identifier"

Entidade principal

O principal identifica a entidade que está fazendo a solicitação de autorização. O tipo principal depende de como seu AgentCore Gateway está configurado para autenticação.

Usuário principal do OAuth

Ao usar a autorização OAuth, o principal é: AgentCore::OAuthUser

principal is AgentCore::OAuthUser

Componentes:

  • principal- A entidade que faz a solicitação de autorização

  • AgentCore::OAuthUser- Tipo de entidade que representa OAuth-authenticated usuários

  • is- Operador de verificação de tipo (corresponde a qualquer OAuthUser entidade)

Os diretores são OAuth-authenticated usuários. Cada usuário tem um ID exclusivo da subreivindicação do JWT.

Diretor da entidade IAM

Ao usar a autorização AWS_IAM, o principal é: AgentCore::IamEntity

principal is AgentCore::IamEntity

Componentes:

  • principal- A entidade que faz a solicitação de autorização

  • AgentCore::IamEntity- Tipo de entidade que representa os IAM-authenticated chamadores

  • is- Operador de verificação de tipo (corresponde a qualquer um IamEntity)

Os diretores do IAM têm um id atributo contendo o ARN do IAM do chamador. Você pode usar a correspondência de padrões nesse atributo para implementar o controle de acesso baseado em contas ou funções.

Ação

A ação especifica a operação que está sendo solicitada:

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

Componentes:

  • action- A operação que está sendo solicitada

  • AgentCore::Action::"RefundTool___process_refund"- Entidade de ação específica

  • ==- Operador de correspondência exata (somente esta ação específica)

As ações representam chamadas de ferramentas no AgentCore Gateway MCP. Cada ferramenta tem uma entidade de ação correspondente.

Nomes de ações por tipo de alvo

O identificador de ação em sua política depende do tipo de alvo configurado em seu gateway:

Target type Formato de ação Exemplo

MCP

<TargetName>___<ToolName>

NotesTool___manage_notes

AgentCore Tempo de execução

<TargetName>___<METHOD>:/invocations

StrandsAgentTarget___POST:/invocations

Proxy (HTTP)

<TargetName>___<METHOD>:<uri>

MyAPI___POST:/inference/v1/chat/completions

Várias ações

O Cedar não suporta ações curinga. Cada ação deve ser referenciada explicitamente usando o identificador de ação exato ()AgentCore::Action::"ToolName___operation". Para agrupar várias ferramentas em uma única regra, use um Gateway Target (um Grupo de Ação) e escreva políticas em relação a esse alvo.

Por exemplo, para permitir acesso somente a ferramentas cujos nomes comecem com Read, você pode criar um Gateway Target chamado ReadToolsTarget que inclua cada uma dessas ferramentas e, em seguida, escrever uma política como:

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

Isso permitirá que todas as ferramentas incluídas nessa meta dependam do efeito da política.

Recurso

O recurso identifica o alvo da solicitação:

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

Componentes:

  • resource- O alvo da solicitação

  • AgentCore::Gateway- Tipo de entidade que representa instâncias de gateway

  • ==- Operador de correspondência exata (corresponde a esse AgentCore gateway específico)

O AgentCore Gateway é o servidor MCP que roteia as chamadas da ferramenta.

Requisitos de especificidade de recursos

Ao especificar uma ou mais ações específicas, você deve usar ARNs de AgentCore gateway específicos:

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

Isso se aplica a:

  • Ação única: action == AgentCore::Action::"ToolName"

  • Várias ações específicas: action in [AgentCore::Action::"Tool1", AgentCore::Action::"Tool2"]

Use verificações de tipo somente ao combinar qualquer ação:

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

Exemplos:

// 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");

Os ARNs de AgentCore gateway específicos fornecem:

  • Isolamento de segurança entre instâncias de AgentCore gateway

  • Separação dos ambientes de produção e desenvolvimento

  • Fine-grained controle de acesso por AgentCore Gateway