View a markdown version of this page

Time-based apoio político - 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á.

Time-based apoio político

A política em AgentCore suporta restrições baseadas em tempo nas políticas de Cedar por meio do valor de context.system.now data e hora. Isso permite que você aplique políticas com base em datas, horários ou intervalos de tempo específicos.

Como funciona

Durante a avaliação da política, o timestamp UTC atual é fornecido como parte do contexto de avaliação:

// Current datetime in UTC context.system.now

Você pode usar as funções de data e hora do Cedar para criar condições baseadas em tempo:

  • datetime("YYYY-MM-DDTHH:MM:SSZ")— Crie um valor de data e hora

  • duration("Xh")— Crie uma duração (horas, minutos, segundos)

  • .toTime()— Extraia a hora do dia da data e hora

  • Operadores de comparação: <⇐,,>,>=, ==

Restrições absolutas de data e intervalo de tempo

Aplique políticas dentro de períodos específicos do calendário.

Exemplo: política do período promocional

permit( principal, action == AgentCore::Action::"RefundToolTarget___refund", resource == AgentCore::Gateway::"arn:aws:bedrock-agentcore:us-east-1:123456789012:gateway/my-gateway" ) when { context.system.now >= datetime("2025-01-01T00:00:00Z") && context.system.now < datetime("2025-01-31T23:59:59Z") };

Caso de uso: permita reembolsos somente durante janeiro de 2025.

Restrições diárias de tempo recorrentes

Aplique políticas com base na hora do dia que ocorre diariamente.

Exemplo: política de horário comercial

permit( principal, action == AgentCore::Action::"RefundToolTarget___refund", resource == AgentCore::Gateway::"arn:aws:bedrock-agentcore:us-east-1:123456789012:gateway/my-gateway" ) when { duration("9h") <= context.system.now.toTime() && context.system.now.toTime() <= duration("17h") };

Caso de uso: permita reembolsos somente durante o horário comercial (diariamente das 9h às 17h UTC).

Restrições combinadas de data e hora

Combine datas absolutas com restrições de tempo diárias.

Exemplo: Limited-time promoção com horários diários

permit( principal, action == AgentCore::Action::"DiscountToolTarget___apply_discount", resource == AgentCore::Gateway::"arn:aws:bedrock-agentcore:us-east-1:123456789012:gateway/my-gateway" ) when { // Valid dates: Feb 1-28, 2025 context.system.now >= datetime("2025-02-01T00:00:00Z") && context.system.now < datetime("2025-03-01T00:00:00Z") && // Valid hours: 9am-9pm UTC daily duration("9h") <= context.system.now.toTime() && context.system.now.toTime() <= duration("21h") };

Caso de uso: permita a ferramenta de descontos somente durante fevereiro de 2025, entre 9h e 21h UTC diariamente.

Tratamento de fuso horário

Todos os valores de data e hora devem estar em UTC. O Policy Engine não oferece suporte a conversões de fuso horário ou políticas com reconhecimento de fuso horário.

Ao especificar horários em suas políticas, sempre use UTC. Se sua empresa opera em um fuso horário diferente, converta seus horários locais em UTC antes de criar a política.

Usando linguagem natural para gerar políticas baseadas em tempo

O serviço de criação de políticas pode gerar políticas baseadas em tempo a partir de descrições em linguagem natural.

Exemplo: gerar política de horário comercial

aws bedrock-agentcore-control start-policy-generation \ --policy-engine-id MyEngine-abc123 \ --name BusinessHoursOnly \ --content '{ "rawText": "Allow refunds only during business hours 9am to 5pm UTC" }' \ --resource '{ "arn": "arn:aws:bedrock-agentcore:us-east-1:123456789012:gateway/MyGateway-xyz789" }'

Política gerada:

permit( principal, action == AgentCore::Action::"RefundToolTarget___refund", resource == AgentCore::Gateway::"arn:aws:bedrock-agentcore:us-east-1:123456789012:gateway/MyGateway-xyz789" ) when { duration("9h") <= context.system.now.toTime() && context.system.now.toTime() <= duration("17h") };

Melhores práticas para linguagem natural

  • Seja explícito sobre os horários — Use “9h às 17h UTC” em vez de “horário comercial”

  • Sempre especifique UTC — Inclua “UTC” para evitar ambigüidades

  • Use o formato ISO para datas — Use “2025-01-01" em vez de “1º de janeiro”

  • Forneça intervalos de tempo específicos — Evite termos vagos como “diurno” ou “após o expediente”

Bons exemplos de instruções de linguagem natural:

"Allow refunds only between 9am and 5pm UTC" "Allow payments except between 2am and 4am UTC daily" "Allow discounts only from 2025-02-01 to 2025-02-28" "Permit high-value transactions between 8am and 8pm UTC"