mcpField
A
azure-cost-management-app

azure-cost-management-app

github.com/julianobarbosa云与 DevOps1454 次安装2 天前更新
代码仓库

关于 azure-cost-management-app

此浏览器自动化 Skill 用于在 Power BI Service 中安装并连接 Microsoft Azure Cost Management App。它指导配置 EA 注册数据,并说明所需权限、身份验证和连接检查。

主要功能

  1. 01检查已有的应用安装
  2. 02从 AppSource 安装 Microsoft 官方应用
  3. 03将应用连接到 EA 注册数据
  4. 04配置数据源身份验证
  5. 05验证刷新与连接状态

适用场景

  1. 01连接仍显示示例数据的已安装应用
  2. 02为 EA 注册安装 Cost Management App
  3. 03排查身份验证或刷新配置问题

MCP 相关

该 Skill 使用 `mcp__claude-in-chrome__*` 浏览器自动化工具操作 Power BI Service 界面,并通过已登录的浏览器标签页安装和配置应用。

安装

复制下面的命令,在终端中运行。

$npx skills add https://github.com/julianobarbosa/claude-code-skills --skill azure-cost-management-app

安装后在 Claude Code 中输入/azure-cost-management-app确认已加载。

详细介绍

Azure Cost Management 应用 — 安装与连接技能

通过浏览器自动化,在 Power BI Service 中部署并连接 Microsoft Azure Cost Management 应用, 目标是指定的工作区和 EA 注册协议。

此技能适用场景

  • 用户想要从 AppSource 将 Azure Cost Management 应用安装到 Power BI
  • 用户想要将现有的 Cost Management 应用安装连接到真实的 EA 数据
  • 用户提到注册协议编号、EA 连接器,或 Cost Management 应用中的“连接数据”
  • 用户想要在 Power BI Service(而非 Power BI Desktop)中查看 Azure 成本数据

关键事实(开始前请阅读)

模板应用的工作区行为: Power BI 模板应用(例如此应用)始终会创建一个自动命名的工作区,无法将其直接安装到任意现有工作区(例如 devops-team)。实际上,“部署到工作区”指的是以下操作之一:

  1. 将已创建的 AzureCostManagementApp 工作区连接到真实 EA 数据(最常见)
  2. 安装后使用部署管道将内容推广到另一个工作区

EA 连接器身份验证: EA 注册协议的 Azure Cost Management 连接器要求在计费帐户级别具有**企业管理员(只读)**角色。标准 Azure RBAC 角色(Cost Management Reader、Billing Reader) 不起作用,并会导致身份验证错误。

应用来源: 始终从 Microsoft Corporation 安装(不要安装社区副本)。在 AppSource 库中,Microsoft 发布的应用显示在靠下的位置——请滚动越过发布者显示为内部用户名的用户分享副本。

工作流

步骤 1:检查现有安装

安装新副本前,请检查应用列表:

  1. 导航到 https://app.powerbi.com/groups/me/apps
  2. 查找现有的 Azure Cost Management App 条目
  3. 如果已存在(尤其是显示“示例数据”的条目),用户很可能只需将其连接到 EA 数据,而不是安装新副本。继续之前请先确认用户的意图。

要询问的关键问题:“已经有一个显示示例数据的安装。您想将它连接到 EA 数据,还是安装一个全新的副本?”

步骤 2:从 AppSource 查找并安装(需要全新安装时)
  1. 点击 获取应用(应用页面右上角)
  2. 在库的搜索栏中搜索“Cost Management”
  3. 向下滚动——Microsoft Corporation 版本显示在用户分享的副本下方
  4. 通过以下信息确认:发布者 = “Microsoft Corporation”、评分约为 2.3 星(73 条评价)、版本 1006
  5. 点击应用卡片 → 点击 立即获取
  6. 在“确认以继续”对话框中确认 → 点击 立即获取

安装对话框选项:

  • “更新工作区和应用” → 更新现有安装(会覆盖设置)
  • “仅更新工作区内容,不更新应用” → 仅更新内容
  • “将应用的另一个副本安装到新工作区” → 创建一个自动命名的工作区;需要输入工作区名称

根据用户意图选择。若要将现有安装连接到 EA 数据,请直接前往步骤 3。

步骤 3:连接到 EA 数据(“连接数据”)

导航到已安装的应用报表(左侧边栏 → AzureCostManagementApp 工作区图标,或通过应用列表)。在“入门”页面上会显示一个横幅:“您正在查看此应用的示例数据。连接数据”。

点击 连接数据,并在“参数”对话框中填写:

字段值备注
BillingProfileIdOrEnrollmentNumber<enrollment number>例如 53329720
NumberOfMonths<integer>例如,12 表示 12 个月的历史记录
ScopeEnrollment Number字面文本——这是范围类型标识符

点击 下一步。

第 4 步:验证数据源身份(2 步)

第 1 步(共 2 步)——Blob 存储终结点(匿名):

  • URL:https://ccmstorageprod.blob.core.windows.net/...
  • 身份验证方法:Anonymous
  • 隐私级别:None
  • 点击 Sign in and continue(此处无需凭据)

第 2 步(共 2 步)——EA Cost Management 连接器(OAuth2):

  • ExtensionDataSourceKind:AzureCostManagement
  • ExtensionDataSourcePath:Enrollment Number;<enrollment-number>(自动填充)
  • 身份验证方法:OAuth2
  • 隐私级别:Organizational
  • 点击 Sign in and connect → 将打开 OAuth2 弹出窗口,供 EA 管理员进行身份验证

重要提示: OAuth2 弹出窗口会在自动化会话之外作为单独的浏览器窗口打开。 用户必须在该弹出窗口中手动完成 EA 企业管理员登录。 确认后,告知用户返回并回复“完成”,以便你验证连接。

第 5 步:验证连接

身份验证完成后,导航到工作区内容列表: https://app.powerbi.com/groups/<workspace-group-id>/list

成功标志:

  • 横幅变为:“You're viewing this app with sample data. Refresh is in progress.”
  • 语义模型行显示下次刷新日期(已自动配置计划)
  • 页眉中的工作区名称为 Azure Cost Management App <timestamp>

身份验证完成后,首次刷新会自动运行。可能需要几分钟。首次刷新完成后,应用将显示 真实的 EA 数据。

需要向用户收集的参数

开始之前,如果用户尚未提供,请收集以下信息:

参数描述示例
EA 注册号计费帐户注册号53329720
月数要加载多少个月的成本历史记录12
目标工作区用户希望应用所在的位置devops-team(注意:模板应用会创建自己的工作区)

工具

全程使用 mcp__claude-in-chrome__* 浏览器自动化工具:

  • tabs_context_mcp — 始终先调用,以获取现有标签页 ID
  • navigate — 前往 Power BI URL
  • computer(screenshot、left_click、type、wait、scroll、zoom)— 与界面交互
  • browser_batch — 批量执行相互独立的连续操作,以提高速度
  • find — 根据自然语言描述定位表单元素
  • form_input — 通过 ref 设置下拉菜单值

使用已通过身份验证的标签页(app.powerbi.com),而不要新建标签页,因为新标签页会重定向到 Microsoft 登录页面。

常见问题

“Sign in and connect”没有反应/停留在第 2 步: OAuth2 弹出窗口可能在 Power BI 后方作为单独窗口打开。请让用户检查是否有 Microsoft 登录弹出窗口,并在其中完成 EA 管理员登录。

隐私级别下拉菜单为空: 点击“Sign in and connect”之前,请将其设为 Organizational。隐私级别为空可能导致连接卡住。

身份验证后刷新失败: EA 连接器要求使用企业管理员(只读)帐户。如果登录帐户没有该角色,刷新将失败。请检查语义模型设置 → 刷新历史记录,查看错误详情。

身份验证后应用仍显示示例数据: 这是正常现象——首次刷新需要几分钟。导航到工作区列表,查看横幅中是否显示“Refresh is in progress”。

应用列表中有多个 Azure Cost Management App 条目: 这些可能是不同用户安装的副本。请检查“Owner”列。当前用户拥有的条目是我们可以配置的条目。请询问用户要连接哪一个。


注意事项

  • EA 连接器需要账单帐户级别的 Enterprise Admin(只读)权限,而非 Azure RBAC。 在订阅范围内授予 Cost Management Reader 权限会静默返回零行。
  • 授予 EA Admin 角色后,权限传播需要 30 分钟。 在此期间出现的故障看起来像是身份验证问题;请等待后再进行排查。
  • 模板应用会部署到固定名称的工作区。 在同一租户中重新安装会因名称冲突而报错;请先卸载。
  • 货币转换:EA 数据以 USD 计价;应用会转换为 Office 设置中的默认货币,这可能与租户的账单货币不同。
  • 某些浏览器配置会静默阻止 OAuth2 弹出窗口。 在限制严格的浏览器中首次安装需要将弹出窗口列入白名单;失败时会无限显示加载动画。

评论

支持 Markdown