View a markdown version of this page

管理策略和策略引擎 - 亚马逊基岩 AgentCore

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

管理策略和策略引擎

使用这些操作来管理您的策略引擎和策略。

列出策略引擎

查看您账户中的所有策略引擎。

选择以下方法之一:

例
AWS CLI
  1. aws bedrock-agentcore-control list-policy-engines
AWS Python SDK (Boto3)
  1. import boto3 client = boto3.client('bedrock-agentcore-control') response = client.list_policy_engines() for engine in response['policyEngines']: print(f"Policy Engine: {engine['name']} (ID: {engine['policyEngineId']})") print(f"Status: {engine['status']}") print(f"Created: {engine['createdAt']}") print(f"ARN: {engine['policyEngineArn']}")

获取策略引擎

检索有关特定策略引擎的详细信息:

例
AWS CLI
  1. aws bedrock-agentcore-control get-policy-engine --policy-engine-id my-policy-engine-id
AWS Python SDK (Boto3)
  1. import boto3 client = boto3.client('bedrock-agentcore-control') response = client.get_policy_engine( policyEngineId='my-policy-engine-id' ) print(f"Policy Engine: {response['name']}") print(f"ID: {response['policyEngineId']}") print(f"ARN: {response['policyEngineArn']}") print(f"Status: {response['status']}") print(f"Created: {response['createdAt']}") print(f"Updated: {response['updatedAt']}")

在策略引擎中列出策略

查看特定策略引擎中的所有策略:

例
AWS CLI
  1. aws bedrock-agentcore-control list-policies --policy-engine-id my-policy-engine-id
AWS Python SDK (Boto3)
  1. import boto3 client = boto3.client('bedrock-agentcore-control') response = client.list_policies( policyEngineId='my-policy-engine-id' ) for policy in response['policies']: print(f"Policy: {policy['name']} (ID: {policy['policyId']})") print(f"Status: {policy['status']}") print(f"Description: {policy.get('description', 'No description')}") print(f"Created: {policy['createdAt']}")

获取政策

检索有关特定策略的详细信息:

例
AWS CLI
  1. aws bedrock-agentcore-control get-policy --policy-engine-id my-policy-engine-id --policy-id my-policy-id
AWS Python SDK (Boto3)
  1. import boto3 client = boto3.client('bedrock-agentcore-control') response = client.get_policy( policyId='my-policy-id', policyEngineId='my-policy-engine-id' ) print(f"Policy: {response['name']}") print(f"ID: {response['policyId']}") print(f"ARN: {response['policyArn']}") print(f"Status: {response['status']}") print(f"Created: {response['createdAt']}") print(f"Updated: {response['updatedAt']}") print(f"Cedar Statement: {response['definition']['cedar']['statement']}")

更新现有政策

更新策略的定义。

注意

如果更新后的策略是临时策略,或者更新添加或删除了时态表达式,则更新它会使引擎的活跃时态策略会话失效。 In-flight 会话返回 HTTP 409 ConflictException 并且必须重新启动。有关更多信息,请参阅会话失效。

例
AWS CLI
  1. aws bedrock-agentcore-control update-policy \ --policy-id my-policy-id \ --policy-engine-id my-policy-engine-id \ --definition '{ "cedar": { "statement": "permit(principal, action, resource);" } }'
AWS Python SDK (Boto3)
  1. import boto3 client = boto3.client('bedrock-agentcore-control') client.update_policy( policyId='my-policy-id', policyEngineId='my-policy-engine-id', definition={ 'cedar': { 'statement': 'permit(principal, action, resource);' } } ) waiter = client.get_waiter('policy_active') waiter.wait(PolicyEngineId="my-policy-engine-id", PolicyId="my-policy-id")

删除策略

从策略引擎中删除策略。

例
AWS CLI
  1. aws bedrock-agentcore-control delete-policy --policy-engine-id my-policy-engine-id --policy-id my-policy-id
AWS Python SDK (Boto3)
  1. import boto3 client = boto3.client('bedrock-agentcore-control') client.delete_policy(policyId='my-policy-id', policyEngineId='my-policy-engine-id') waiter = client.get_waiter('policy_deleted') waiter.wait(PolicyEngineId="my-policy-engine-id", PolicyId="my-policy-id")

删除策略引擎

删除整个策略引擎及其所有策略。

注意

* 您无法删除当前连接到网关的策略引擎。首先通过更新网关配置将其分离。* 您无法删除包含策略的策略引擎。首先删除所有策略,然后删除引擎

例
AWS CLI
  1. aws bedrock-agentcore-control delete-policy-engine --policy-engine-id my-policy-engine-id
AWS Python SDK (Boto3)
  1. import boto3 client = boto3.client('bedrock-agentcore-control') client.delete_policy_engine(policyEngineId='my-policy-engine-id')