前端进阶之旅前端进阶之旅
基础篇
进阶篇
高频篇
精选篇
手写篇
面经篇
AI 篇
原理篇
每日一题
小程序题库
知识卡片
  • 场景篇按分类整理的大前端场景考点
  • 历年面经按年份追踪真实考点
  • 算法题库NEW在线编码即时判题
  • 专项自测100 题快速查漏
  • 前端基础
    • HTTP从报文一路讲到 HTTPS
    • 浏览器渲染、事件循环、进程
    • 计算机基础Linux、网络、操作系统
  • 进阶专项
    • 设计模式23 种模式怎么用
    • 前端系统进阶学习大型项目工程化
    • 前端综合文章长期沉淀的实践文
  • 工程与工具
    • Node学习指南从环境搭建到服务端
    • NPM工作流script、依赖与发布
    • Docker容器化部署上手
    • Canvas图形与动画实战
  • 路线与导图
    • 思维导图知识点全景图
    • 学习路线按图索骥不跑偏
  • 动态
    • 公众号动态公众号历史文章
    • 博客动态站长的技术博客
    • 开发者导航常用工具与文档站
  • AI 助手随时提问,即时解析
  • AI 模拟面试模拟真实面试 + 报告
  • AI 知识地图串起全站知识点
  • AI 定制路线按你的简历现排
AI 热点
旧版
基础篇
进阶篇
高频篇
精选篇
手写篇
面经篇
AI 篇
原理篇
每日一题
小程序题库
知识卡片
  • 场景篇按分类整理的大前端场景考点
  • 历年面经按年份追踪真实考点
  • 算法题库NEW在线编码即时判题
  • 专项自测100 题快速查漏
  • 前端基础
    • HTTP从报文一路讲到 HTTPS
    • 浏览器渲染、事件循环、进程
    • 计算机基础Linux、网络、操作系统
  • 进阶专项
    • 设计模式23 种模式怎么用
    • 前端系统进阶学习大型项目工程化
    • 前端综合文章长期沉淀的实践文
  • 工程与工具
    • Node学习指南从环境搭建到服务端
    • NPM工作流script、依赖与发布
    • Docker容器化部署上手
    • Canvas图形与动画实战
  • 路线与导图
    • 思维导图知识点全景图
    • 学习路线按图索骥不跑偏
  • 动态
    • 公众号动态公众号历史文章
    • 博客动态站长的技术博客
    • 开发者导航常用工具与文档站
  • AI 助手随时提问,即时解析
  • AI 模拟面试模拟真实面试 + 报告
  • AI 知识地图串起全站知识点
  • AI 定制路线按你的简历现排
AI 热点
旧版
返回 AI 情报前线
All News · 全部资讯9792
  • 用 ONNX 在浏览器本地分离音乐音轨
  • Agent 安全测试为何漏掉工具泄密
  • polyweave 为 Claude Code 扩展游戏素材检查
  • 工具越多越易选错:Agent工具集瘦身实践
  • Liquid开放24B推理模型,面向本地Agent
  • AWS 开源 2B 决策模型,专做选项判断
  • AI 代码审查太吵,会让真问题被忽略
  • Gemini 视频转仿真演示打通机器人训练
  • RAG 检索不准,先评测嵌入模型
  • 实测 agent-hooks:演示不等于兼容认证
  • 让 Claude Code 直接查询 Grafana 排障
  • Copilot 正式接入 Gemini 4 Argon
  • AI 写码的回报取决于审查与反馈
  • 128GB 苹果芯片 Mac 的 oMLX 部署调优
  • CodeAct 用可执行代码组织 Agent 行动
  • 实测 agent-hooks 在执行前拦截超额退款
  • 用 Python 与 Claude 搭建文本清洗流水线
  • 长任务 Agent 如何保存和恢复工作状态
  • 谷歌旗舰 Argon 开放全球 API 接入
  • GitHub 用上下文模型改进密钥扫描
  • 自动化管理 Bedrock 跨账号定价授权
  • AI Studio个人应用可直接经Play安装
  • 企业问答如何选型:检索增强还是微调
  • 日志与搜索结果如何成为提示注入入口
  • Gemini CLI 自动化为何受终端环境影响
  • Gemini 夜间优化二十万行 Python 项目
  • Gemini 4 Argon 将物理推理接入机器人开发
  • n8n 接入 Gemini 4,串联 MCP 与智能体
  • 自然语言安全查询如何降低成本与延迟
  • DeepMind 发布 Gemini 4 Argon 前沿模型
  • Gemini 4 付费上线,API 限时半价
  • Gemini 4 Argon统一百万Token额度
  • Gemini 4 发布,宣称提升编程与复杂推理
  • Google 向开发者开放 Gemini 4 Argon
  • 用 Slack 智能助手打通 IT 支持流程
  • Grok 4.7 智能体如何平衡推理成本
  • Copilot 企业策略支持启动时强制刷新
  • MoE 内核优化提升 H200 推理性能
  • SparseEngine 统一接入十五种稀疏注意力
  • 小模型提示测试:输出格式比文风更关键
  • 用运行状态自动推动编程 Agent 完成任务
  • 微调指标持平,却漏掉更多关键样本
  • 用大模型提取工程图纸中的控制点位
  • 用提交钩子约束编程 Agent 的调用
  • BitNet 提供低比特模型本地推理框架
  • Open WebUI 统一管理本地与云端模型
  • Agent 安全应落实到工具授权层
  • 用拒收日志定位 LLM 工作流故障
  • Agent 消息显示成功却未送达的排查
  • 退款智能体如何设计授权边界
  • MiniCPM-V 4.7 推出端侧 MoE 与微调方案
  • 已加载 51 / 9792
8.0
热点
AI SCORE
技术实践2026-10-14 01:17

自动化管理 Bedrock 跨账号定价授权

AWS ML Blog#AWS#Bedrock#多账号管理
Editor brief · 编辑速览

针对多个 AWS 账号需分别接受 Marketplace 私有定价报价的问题,文章介绍通过 License Manager 激活授权的两种方式:一次性脚本和持续运行的 CDK 事件驱动自动化。

文章思维导图
Knowledge map
拖拽缩放
Full translation

完整中文译文

当几十甚至上百个 AWS 账户都需要访问 AI 模型时,如果每个运行工作负载的账户都必须单独订阅并接受 AWS Marketplace Private Pricing Offers(MPPO),就会增加运维负担。Amazon Bedrock 的 managed entitlements 简化了第三方 AI 模型的多账户访问管理:你只需通过一个中央账户订阅一次,就能将访问权限分配给整个组织。

本文介绍两种在 AWS License Manager 中激活 AWS Marketplace Private Pricing Offer(MPPO)权益的方法。如果你已经信任收到的许可证,只需要一次性处理,又不想部署基础设施,可以使用轻量脚本。如果你需要持续运行、由事件驱动的处理流程,能够验证卖家、创建并激活分发授权,则可以使用 CDK 自动化方案。

为什么要自动激活授权

借助 AWS Marketplace Private Pricing Offers,你可以为 Amazon Bedrock 上的第三方模型协商定制价格。符合条件的私有报价被接受后,AWS Marketplace 会在 AWS License Manager 中创建许可证。在启用了全部功能的 AWS Organizations 中,组织级授权会被自动接受,但仍保持 Disabled 状态,直到你将其激活。

团队通常会检查 AWS License Manager 控制台,手动激活授权。手动检查可以解决问题,但会增加工作量,也容易遗漏。在有人激活授权之前,协商价格不会生效。团队采用新模型或续约时,也会遇到同样的工作。

示例仓库提供了两条路径:

  • 路径 1:轻量方案是一个独立脚本,会列出收到的许可证,并输出 dry-run 执行计划。只有在你使用 --apply --confirm-account-id 重新运行时,它才会创建并激活覆盖整个组织的授权。这个方案没有卖家 allow-list,因此,只有当你信任管理账户收到的每一份许可证时,才应该使用它。
  • 路径 2:事件驱动方案使用 AWS Cloud Development Kit(AWS CDK),在 AWS 管理账户中部署持续运行的自动化流程。

请从下面两条实现路径中选择一条。需要一次性激活、又不想使用 CDK 时,选择路径 1;需要持续运行的事件驱动自动化时,选择路径 2。

路径 1:轻量脚本(一次性激活)

如果你需要一次性激活,又不想部署 CDK,可以使用这条路径。脚本会列出管理账户收到的所有许可证,因此,在应用变更之前,应先通过 dry run 审查执行计划。

将示例仓库克隆到本地,并进入项目目录。运行 git clone https://github.com/aws-samples/sample-bedrock-managed-entitlements.git,然后运行 cd sample-bedrock-managed-entitlements。

git clone https://github.com/aws-samples/sample-bedrock-managed-entitlements.git
cd sample-bedrock-managed-entitlements

以 dry-run 模式运行轻量脚本。执行 python3 lightweight/distribute_licenses.py。

python3 lightweight/distribute_licenses.py

审查列出的每一份许可证,确认其 ISV Partner 签发方和账户范围与你预期的私有报价一致。

在同一个 AWS Organizations 管理账户中,应用已审查的计划。执行 python3 lightweight/distribute_licenses.py --apply --confirm-account-id ACCOUNT_ID。

python3 lightweight/distribute_licenses.py --apply --confirm-account-id ACCOUNT_ID

授权激活后,在生产环境中依赖该私有报价之前,先验证计费流程。AWS Cost Explorer 的计费数据可能存在延迟,因此,应在费用数据出现后,用它核对私有报价所覆盖的 Amazon Bedrock 用量的实际收费。如果需要可重复执行的检查,可以调整示例工具 scripts/bedrock_discount_check.py,使其匹配你的 ISV Partner 签发方,并确认预期的折扣计费流程。

路径 2:CDK 自动化(持续激活)

如果你希望自动处理新的私有定价协议,可以使用这条路径。CDK stack 会监听符合条件的 AWS Marketplace 协议事件,检查你的卖家 allow-list,创建分发授权,并在 License Manager 需要更多处理时间时重试激活。方案包含三个组件:

  • Amazon EventBridge 规则:stack 会监听 us-east-1 默认事件总线上的 AWS Marketplace 协议事件。规则匹配 source 为 aws.agreement-marketplace、detail type 为 Purchase Agreement Created - Acceptor 的事件,然后调用 AWS Lambda 函数。
  • AWS Lambda 函数:函数接收 AWS Marketplace 协议事件,验证卖家 allow-list,查找许可证,创建分发授权,并通过 CreateGrantVersion(Status=ACTIVE) 请求激活。函数将处理结果记录到 Amazon CloudWatch Logs,便于审计。
  • AWS License Manager 权益:授权可以面向整个组织、选定的组织单元(OU),或特定账户。只有在授权被激活,并达到 ACTIVE 或 WORKFLOW_COMPLETED 状态后,协商价格才会生效。

下图展示了事件驱动流程。

图 1:时序图展示了 AWS Marketplace 向 Amazon EventBridge 发送 Purchase Agreement Created – Acceptor 事件,随后 EventBridge 调用 AWS Lambda 函数。函数验证卖家,查找收到的许可证,创建分发授权,通过 CreateGrantVersion(Status=ACTIVE) 请求激活,并将处理结果写入 Amazon CloudWatch Logs。

这种方案的主要优势:

  • 更快享受协商价格。 分发授权达到 ACTIVE 或 WORKFLOW_COMPLETED 状态后,协商费率即可生效,无需等待人工检查控制台。
  • 跨账户处理方式一致。 对于每个接收第三方模型授权的组织,都可以部署相同的 AWS Lambda 函数和 Amazon EventBridge 规则模式,让激活逻辑保持一致,不因操作人员而异。
  • 内置审计记录。 每次激活尝试或跳过决定都会记录到 CloudWatch Logs,让你能够追踪每份授权何时被激活、延后处理或忽略。

部署这条路径之前,请确认以下前提条件:

  • 使用 AWS Organizations 管理账户,在 us-east-1 中操作,并配置好 Python 3.12+、AWS Command Line Interface(AWS CLI)和 AWS CDK v2。
  • 确认 AWS Organizations 已启用全部功能,且私有报价对应的是由 License Manager 管理许可证的 Bedrock 模型。Software as a service(SaaS)产品不在此自动化方案的适用范围内。

将示例仓库克隆到本地,并进入项目目录。运行 git clone https://github.com/aws-samples/sample-bedrock-managed-entitlements.git,然后运行 cd sample-bedrock-managed-entitlements。

git clone https://github.com/aws-samples/sample-bedrock-managed-entitlements.git
cd sample-bedrock-managed-entitlements

验证或启用组织级前提配置。执行 python3 scripts/bootstrap_prereqs.py --check --region us-east-1。在进行变更之前,审查所有标记为 APPLY 或 MANUAL 的项目。bootstrap 脚本可以启用 License Manager 的组织集成、License Manager 的 trusted access、AWS Marketplace 许可证管理的 trusted access,以及所需的 service-linked roles。执行 python3 scripts/bootstrap_prereqs.py --apply --region us-east-1 --confirm-account-id ACCOUNT_ID。

python3 scripts/bootstrap_prereqs.py --check --region us-east-1

在进行变更之前,审查所有标记为 APPLY 或 MANUAL 的项目。bootstrap 脚本可以启用 License Manager 的组织集成、License Manager 的 trusted access、AWS Marketplace 许可证管理的 trusted access,以及所需的 service-linked roles。

python3 scripts/bootstrap_prereqs.py --apply --region us-east-1 --confirm-account-id ACCOUNT_ID

配置部署参数。执行 python3 scripts/setup_config.py。审查 config/sellers.json。配置你的 Organization ID、卖家 allow-list、通知,以及可选的授权目标。默认情况下,授权面向整个组织。可以使用 grantTargets,将授权范围限定为选定的 OU 或 AWS 账户。

python3 scripts/setup_config.py

审查 config/sellers.json。配置你的 Organization ID、卖家 allow-list、通知,以及可选的授权目标。默认情况下,授权面向整个组织。可以使用 grantTargets,将授权范围限定为选定的 OU 或 AWS 账户。

部署 CDK stack。依次执行 cd cdk、pip install -r requirements.txt、cdk bootstrap aws://ACCOUNT_ID/us-east-1 和 cdk deploy。

cd cdk
pip install -r requirements.txt
cdk bootstrap aws://ACCOUNT_ID/us-east-1
cdk deploy

从 config/sellers.json 向 Amazon DynamoDB 写入初始卖家 allow-list。执行 cd ..,然后执行 python scripts/seed_sellers.py --config config/sellers.json。请将卖家 allow-list 视为安全边界。在向表中写入初始数据之前,应对照你已接受的 AWS Marketplace 私有报价,或收到的 License Manager 许可证,验证每个卖家账户 ID。不要添加范围过宽或未经验证的卖家条目,因为匹配到的卖家可能触发在你配置的所有授权目标中创建并激活授权。完成部署和卖家数据初始化后,stack 就可以处理符合条件的 AWS Marketplace 协议事件。只有 allow-list 中经过验证的卖家才能触发授权创建和激活;激活操作可能会延后,直到 License Manager 完成授权工作流的处理。

cd ..
python scripts/seed_sellers.py --config config/sellers.json

请将卖家 allow-list 视为安全边界。在向表中写入初始数据之前,应对照你已接受的 AWS Marketplace 私有报价,或收到的 License Manager 许可证,验证每个卖家账户 ID。不要添加范围过宽或未经验证的卖家条目,因为匹配到的卖家可能触发在你配置的所有授权目标中创建并激活授权。

完成部署和卖家数据初始化后,stack 就可以处理符合条件的 AWS Marketplace 协议事件。只有 allow-list 中经过验证的卖家才能触发授权创建和激活;激活操作可能会延后,直到 License Manager 完成授权工作流的处理。

验证已部署的自动化流程。执行 python scripts/e2e_validate.py --org-id o-xxxxxxxxxx --seller-account SELLER_ACCOUNT_ID --simulate。

python scripts/e2e_validate.py --org-id o-xxxxxxxxxx --seller-account SELLER_ACCOUNT_ID --simulate

在符合条件的 AWS Marketplace 协议事件发生后,验证授权是否激活。执行 aws logs tail /aws/lambda/mppo-grants-handler --follow --region us-east-1,然后执行 python scripts/bedrock_discount_check.py --issuer "ISV Partner"。授权激活以及计费数据可见,可能需要数小时甚至数天。事件驱动工作流接受并激活授权后,先在 AWS License Manager 中确认授权状态,再等计费数据出现后,在 AWS Cost Explorer 中验证报价所覆盖的 Amazon Bedrock 用量。如果需要可重复执行的检查,可以调整示例工具 scripts/bedrock_discount_check.py,使其匹配你的 ISV Partner 签发方和目标关联账户。

aws logs tail /aws/lambda/mppo-grants-handler --follow --region us-east-1
python scripts/bedrock_discount_check.py --issuer "ISV Partner"

授权激活以及计费数据可见,可能需要数小时甚至数天。事件驱动工作流接受并激活授权后,先在 AWS License Manager 中确认授权状态,再等计费数据出现后,在 AWS Cost Explorer 中验证报价所覆盖的 Amazon Bedrock 用量。如果需要可重复执行的检查,可以调整示例工具 scripts/bedrock_discount_check.py,使其匹配你的 ISV Partner 签发方和目标关联账户。

如果你只是为了测试而部署这个 stack,请将其删除,避免持续产生少量 Lambda 和 Amazon EventBridge 费用:

cdk destroy

“作为每周支持数百万次临床医生问诊的 AI Care Partner,Heidi Health 大规模使用第三方 foundation models。AWS Marketplace 的私有定价让我们能够以经济、高效的方式管理业务增长:我们可以在 AWS 账户和组织单元之间,细粒度地归集用量和价格,并在采用新模型时自动管理授权。这让平台团队能够扩大成本治理的覆盖范围,而无需相应增加人工工作。”

—— Marcus Lau,Heidi Health 平台工程负责人

本文介绍了两种为 Amazon Bedrock 私有定价报价激活 managed entitlements 的方法。如果你需要一次性激活已经信任的收到的许可证,可以使用轻量脚本;如果你需要持续处理新的 AWS Marketplace 协议,则可以部署 CDK 事件驱动自动化方案。两种方法都能减少人工操作,并帮助协商价格在分发授权激活后生效。

要开始使用,可以在你的 AWS 管理账户中尝试这个代码示例,实现模型订阅自动化。

示例代码:Amazon Bedrock with managed entitlements(GitHub)

AWS License Manager 用户指南

AWS License Manager API 参考:CreateGrantVersion

Amazon EventBridge 用户指南

AWS CDK 开发者指南

Original source

本文由 AI 翻译整理自 AWS ML Blog,原文版权归原作者所有。

阅读英文原文
上一篇
GitHub 用上下文模型改进密钥扫描
下一篇
AI Studio个人应用可直接经Play安装