1. 基本信息
| 项目 | 内容 |
|---|---|
| 名称 | audit-permissions-microsoft-power-platform-skills |
| 作者/维护者 | Microsoft(Power Platform 团队) |
| 来源链接 | https://github.com/microsoft/power-platform-skills/tree/main/plugins/power-pages/skills/audit-permissions |
| 许可证 | MIT(GitHub API 获取) |
| GitHub Stars | 566(GitHub API 获取;此为合集仓库整体数字,不代表本技能自身热度) |
| Forks | 116(GitHub API 获取) |
| 最新版本 | power-pages 插件 v2.6.3(插件 manifest 获取) |
| 安装方式 | Claude Code / GitHub Copilot CLI 会话内执行 /plugin marketplace add microsoft/power-platform-skills 后 /plugin install power-pages@power-platform-skills |
2. 功能介绍与亮点
audit-permissions 是 Power Pages 官方插件内的表权限安全审计技能,核心思路是把“权限配置”与“代码实际怎么用”双向对照,而不是单看配置文件本身:
- 代码用量分析:扫描站点源码中的 Web API 调用、
@odata.bind查找绑定、文件上传、$expand关联查询等模式,反推每张表实际需要哪些 CRUD 操作。 - 实时 Dataverse 关系核验:通过脚本查询目标环境的查找列与表关系,验证
append/appendto、父级作用域链等配置是否与真实数据模型一致。 - 11 项系统化检查(A–K):逐表核对权限是否存在、是否绑定 Web 角色、作用域是否满足最小权限、读/写/删除/关联权限是否与代码用量匹配等,每条发现都标注严重级别(critical/warning/info/pass)与具体证据(文件路径、代码行、权限名)。
- 跨表交叉验证:审计单表检查之后,再统一核对 append/appendto 一致性、
$expand覆盖率、父级权限链完整性等全局问题。 - 可视化报告 + 可选自动修复:生成 HTML 审计报告,用户确认后可唤起配套的权限配置 agent 直接生成/更新权限 YAML,全程默认只读、修复动作需二次确认。
3. 适用场景
固定分类:安全与合规。适合已用 Power Pages 官方插件搭建代码站点、需要在上线前或权限变更后核查表权限是否遵循最小权限原则的开发者与技术顾问;尤其适合不熟悉 Dataverse 权限体系细节、容易漏配或错配权限导致 403 报错或越权访问的中级用户。
4. 跨 Agent 兼容性
- Claude Code:原生支持。技能以标准 SKILL.md + 插件市场形式分发,Microsoft Learn 官方教程专门针对 Claude Code 给出完整前置条件与安装步骤。
- Codex:未验证——已抓取材料未提及。
- OpenClaw:未验证——已抓取材料未提及。
- Hermes Agent:未验证——已抓取材料未提及。
(另注:官方同时原生支持 GitHub Copilot CLI,但其不属于本报告评估的四个目标生态。)
5. 推荐理由
Power Pages 的表权限系统(作用域、CRUD 标志、append/appendto、父级链)规则细碎,人工核对既容易漏掉“代码用到但权限没开”(直接报 403),也容易漏掉“权限开了但代码根本不用”(不必要的越权风险)。audit-permissions 把这套核对自动化:一边读权限配置,一边读代码实际调用与线上 Dataverse 关系数据,逐表给出有证据支撑的具体结论和修复建议,把“凭经验猜权限该怎么配”变成“有据可查的核对清单”。
6. 评分
| 维度 | 分数 | 说明 |
|---|---|---|
| 受欢迎程度 | 7 | 官方 Microsoft 出品,所属仓库 566 stars / 116 forks / 23 位贡献者,仓库整体近日(2026-07-26)仍有提交;该子技能自身在第三方渠道尚无独立讨论证据 |
| 可用性 | 8 | Microsoft Learn 官方发布专章教程,附完整安装步骤与前置条件说明;需要 Node.js、Power Platform CLI、Azure CLI 三项前置工具及已认证的 Power Platform 环境,非一条命令直接可用;该子目录近两月内仍有功能迭代提交(如依赖感知的解决方案拆分逻辑) |
| 安全性 | 9 | 见下方检查清单 |
安全检查清单:
① 权限范围:本地 Node 脚本仅用于读取权限/角色 YAML、查询 Dataverse 只读关系数据与渲染报告;默认不做任何写操作,仅在用户明确要求修复且经二次确认后才唤起配套 agent 写入权限文件。
② 运行时联网:仅与用户自己已认证的 Dataverse 环境通信,不存在向第三方外发数据的情况。
③ 凭据处理:不自行请求或存储凭据,复用 pac auth/az login 已有会话令牌,SKILL.md 明确写明“绝不记录或显示鉴权令牌”。
④ 可疑指令:未见混淆代码或隐蔽外发;相反,多处设有操作前二次确认门槛,修复类动作默认不自动执行。
⑤ 作者信誉:Microsoft 官方仓库,提交者均为真实署名员工。
⑥ License:MIT,明确。
⑦ 维护时间:该子目录最近一次功能提交为 2026-06-19,仓库整体持续维护中,非弃置项目。
综合:官方出品、完全开源可审计,默认只读、写操作边界清晰且需显式确认——判 9 分。
7. 跟同类 Skills 相比的优势
| 项目 | 定位 | 差异化 |
|---|---|---|
| audit-permissions(本技能) | 代码实际用量 + 实时 Dataverse 关系数据双向交叉核验,自动定位“权限漏配”与“权限过配”并附具体证据与修复建议 | 聚焦 Power Pages 表权限这一细分场景,免费开源,无需额外账号或订阅 |
| Power Platform Solution Checker(微软官方内置工具) | 对整个 solution 做通用静态规则检查,含部分安全相关规则 | 规则通用、覆盖全 solution,但不理解具体表权限与代码实际调用关系,无法判断“这条权限是否真的被代码用到” |
| security-review(同插件姊妹技能) | 编排 audit-permissions 等六个安全细分技能,产出单份综合 HTML 报告 | 定位更广(覆盖代码、依赖、线上扫描、请求头、防火墙、权限、认证),但需同插件全部子技能协同运行;单看权限维度的深度不如 audit-permissions 聚焦 |
8. 用户评价
该技能目前在第三方平台尚无具名用户评价。
9. 其他补充
audit-permissions 同时是姊妹技能 security-review 编排的六个安全检查模块之一(对应“表权限”维度),既可独立运行,也会在用户选择“完整安全审查”时被自动纳入。修复类操作会额外唤起同插件内的权限配置 agent,需用户对具体权限方案二次确认后才会写入文件。
10. 安装使用方式
在 Claude Code 或 GitHub Copilot CLI 会话内依次执行:
/plugin marketplace add microsoft/power-platform-skills
/plugin install power-pages@power-platform-skills
使用前需确保本机已安装 Node.js 18+、Power Platform CLI(2.6.3+)、Azure CLI,并已分别通过 pac auth create 与 az login --allow-no-subscriptions 完成认证。日常使用时在已部署的 Power Pages 代码站点项目中直接说“帮我审查一下表权限”,或运行 /audit-permissions [可选:具体表名或关注点] 触发。安装/更新后无需重启 Agent,插件市场支持自动更新。
11. 注意事项
- 仅适用于已用该插件的
create-site流程创建、且已部署过(存在.powerpages-site目录)的 Power Pages 代码站点,尚未部署的项目无法直接体验。 - 涉及 Dataverse 关系核验的检查项需要有效的 Power Platform 环境访问权限,若认证会话失效会跳过对应检查并在报告中注明。
- 应用修复建议前建议先审阅报告中的具体理由与影响范围,尤其是涉及放宽权限(
append/appendto)的建议,避免引入新的越权风险。 - 尚无法确认在 Codex / OpenClaw / Hermes Agent 上的兼容情况。