View a markdown version of this page

使用浏览器企业策略 - Amazon Bedrock AgentCore

使用浏览器企业策略

企业策略允许您使用 Chromium 企业策略机制控制浏览器的行为。您在 Amazon S3 存储桶中以 JSON 形式提供策略文件,该服务会自动将其应用于浏览器会话。

概述

Chromium 企业政策可以在两个执法层面上应用:

  • 托管-管理员要求并强制执行。这些不能被覆盖。托管策略已写入/etc/chromium/policies/managed/

  • 推荐-在用户级别进行设置,在发生冲突时优先级低于托管策略。推荐的策略已写入/etc/chromium/policies/recommended/

有关 Chrome 政策类型和优先顺序的更多详细信息,请参阅 Chro mium Linux 快速入门

可以使用 CreateBrowser API 设置托管策略,并将其应用于使用该自定义浏览器创建的所有会话。推荐的策略是使用 StartBrowserSession API 在会话级别设置的,并且仅适用于该特定会话。它们需要重新应用到每个新的会话中。

您可以按照 Chrome 企业政策列表创建 JSON 策略文件,将其上传到您的 Amazon S3 存储桶,并在创建浏览器或启动会话时引用它们。

先决条件

在使用企业策略之前,请确保您已具备以下条件:

  • 已完成浏览器常规先决条件

  • 与您的浏览器位于同一区域的 Amazon S3 存储桶,用于存储策略 JSON 文件

  • 访问包含您的策略文件的 Amazon S3 存储桶的 IAM 权限。在您的 IAM 策略中添加以下权限:

    { "Version": "2012-10-17", "Statement": [ { "Sid": "EnterprisePolicyS3Access", "Effect": "Allow", "Action": [ "s3:GetObject", "s3:GetObjectVersion" ], "Resource": [ "arn:aws:s3:::<S3Bucket>/<path_to_policies>/*" ] } ] }
  • 遵循 Chromium 企业策略格式的策略 JSON 文件。每个文件都必须包含 Chrome 企业政策列表中的有效策略密钥。

准备策略文件

创建包含要应用的策略的 JSON 文件。每个文件都应包含一个包含策略密钥和值的扁平 JSON 对象。

托管策略文件示例

此文件禁用自动填充和密码保存:

{ "AutofillAddressEnabled": false, "AutofillCreditCardEnabled": false, "PasswordManagerEnabled": false }

推荐策略文件示例

此文件用于在会话级别设置策略:

{ "BookmarkBarEnabled": true, "SpellCheckServiceEnabled": false, "TranslateEnabled": false }

将策略文件上传到您的 Amazon S3 存储桶:

aws s3 cp managed-policies.json s3://my-policy-bucket/policies/managed-policies.json aws s3 cp recommended-policies.json s3://my-policy-bucket/policies/recommended-policies.json
注意

您最多可以指定 10 个企业策略文件。Amazon S3 存储桶必须与浏览器位于同一区域。

使用托管策略创建自定义浏览器

要强制执行无法覆盖的企业策略,请使用托管策略创建自定义浏览器。托管策略适用于使用此浏览器创建的每个会话。

AWS CLI
  1. aws bedrock-agentcore-control create-browser \ --region <Region> \ --name "my-managed-browser" \ --enterprise-policies '[ { "type": "MANAGED", "location": { "s3": { "bucket": "my-policy-bucket", "prefix": "policies/managed-policies.json" } } } ]'
Boto3
  1. import boto3 region = "us-west-2" client = boto3.client('bedrock-agentcore-control', region_name=region) response = client.create_browser( name="my-managed-browser", enterprisePolicies=[ { "type": "MANAGED", "location": { "s3": { "bucket": "my-policy-bucket", "prefix": "policies/managed-policies.json" } } } ] ) browser_id = response['browserId'] print(f"Created browser: {browser_id}")
API
  1. awscurl -X PUT \ "https://bedrock-agentcore-control.<Region>.amazonaws.com/browsers" \ -H "Content-Type: application/json" \ --service bedrock-agentcore-control \ --region <Region> \ -d '{ "name": "my-managed-browser", "enterprisePolicies": [ { "type": "MANAGED", "location": { "s3": { "bucket": "my-policy-bucket", "prefix": "policies/managed-policies.json" } } } ] }'

推荐的策略可以应用于使用默认浏览器 (aws.browser.v1) 的会话,也可以应用于可能已经包含托管策略的自定义浏览器。

提示

对于默认浏览器,browserIdentifier请设置为aws.browser.v1

AWS CLI
  1. aws bedrock-agentcore start-browser-session \ --region <Region> \ --browser-identifier "<BrowserId>" \ --name "my-session-with-policies" \ --session-timeout-seconds 1800 \ --enterprise-policies '[ { "type": "RECOMMENDED", "location": { "s3": { "bucket": "my-policy-bucket", "prefix": "policies/recommended-policies.json" } } } ]'
Boto3
  1. import boto3 region = "us-west-2" client = boto3.client('bedrock-agentcore', region_name=region) response = client.start_browser_session( browserIdentifier="<BrowserId>", name="my-session-with-policies", sessionTimeoutSeconds=1800, enterprisePolicies=[ { "type": "RECOMMENDED", "location": { "s3": { "bucket": "my-policy-bucket", "prefix": "policies/recommended-policies.json" } } } ] ) print(f"Session ID: {response['sessionId']}")
API
  1. awscurl -X PUT \ "https://bedrock-agentcore.<Region>.amazonaws.com/browsers/<BrowserId>/sessions/start" \ -H "Content-Type: application/json" \ -H "Accept: application/json" \ --service bedrock-agentcore \ --region <Region> \ -d '{ "name": "my-session-with-policies", "sessionTimeoutSeconds": 1800, "enterprisePolicies": [ { "type": "RECOMMENDED", "location": { "s3": { "bucket": "my-policy-bucket", "prefix": "policies/recommended-policies.json" } } } ] }'

注意事项

  • 您最多可以指定 10 个企业策略文件。

  • 每个策略文件必须具有.json扩展名,且大小不能超过 5 MB。

  • Amazon S3 存储桶必须与浏览器位于同一区域。

  • 策略文件是在调用 API 时从 Amazon S3 读取的。调用CreateBrowser或后在 Amazon S3 中对策略文件StartBrowserSession所做的更改不会反映出来。

  • 政策 JSON 文件必须包含 Chrome 企业政策列表中的有效密钥。