mcpField
A
azure-pim

azure-pim

github.com/vinayaklatthe安全17882 次安装19 周前更新
代码仓库

关于 azure-pim

azure-pim 是面向管理员的技能,用于通过 Microsoft Entra Privileged Identity Management 管理特权访问。它指导将永久分配改为符合资格的访问,并配置激活控制、访问评审和审计警报。

主要功能

  1. 01盘点并转换永久角色分配
  2. 02配置分层激活控制
  3. 03管理特权组与 Azure 角色
  4. 04安排定期访问评审
  5. 05设置 PIM 活动警报与审计

适用场景

  1. 01将常驻管理员角色改为符合资格的访问
  2. 02为 Global Admin 激活要求审批和强 MFA
  3. 03每季度评审 Tier 0 访问权限
  4. 04发现绕过 PIM 的角色激活

安装

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

$npx skills add https://github.com/vinayaklatthe/microsoft-security-skills --skill azure-pim

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

详细介绍

Microsoft Entra 特权身份管理(PIM)

PIM 提供即时、限时、基于审批且可审计的特权角色提升,可消除常设管理员访问权限,并缩小高价值帐户的攻击面。需要 Entra ID P2。

适用场景

管理 Entra 角色、Azure RBAC 角色和特权组的访问权限。使用此技能将永久分配转为符合条件的分配、配置激活控制措施并定期进行访问评审。

不要将此技能用于资源访问包(entra-id-governance)或风险检测(entra-id-protection)。

按角色层级选择激活控制措施

角色层级示例审批MFA 强度最长激活时长
Tier 0 - 控制平面Global Admin、Privileged Role Admin、Privileged Auth Admin必需(2 名审批者)抗网络钓鱼1 小时
Tier 0 - Azure管理组 / 根订阅上的 Owner必需抗网络钓鱼2 小时
Tier 1 - 工作负载管理员Exchange Admin、SharePoint Admin、Intune Admin必需(1 名审批者)抗网络钓鱼4 小时
Tier 1 - Azure生产订阅上的 Owner / Contributor提供理由 + 工单MFA4 小时
Tier 2 - 运维Helpdesk、Reports Reader、Security Reader提供理由MFA8 小时

经验法则:对 Global Admin 强制要求两名审批者,是价值最高的单项 PIM 控制措施。它能阻止自行提升权限,并确保每次影响整个租户的变更都有见证人。

方法

  1. 清点永久分配 — 使用 Get-MgRoleManagementDirectoryRoleAssignment,并查看每个订阅的 Azure 门户 Assignments 视图。按层级分类。目标:除紧急访问帐户外,不保留任何常设分配。 验证:PIM → Entra roles → Assignments → Active 中,Global Admin 仅显示紧急访问帐户。

  2. 分批转为符合条件的分配 — 先处理 Tier 2(激活流程出问题时影响范围较小),然后处理 Tier 1,最后处理 Tier 0。提前 7 天通知管理员,并提供操作演示视频。 验证:每周激活次数按预期增加;管理员没有因访问权限丢失而投诉。

  3. 按角色配置激活设置 — 按照上方的层级表配置。抗网络钓鱼 MFA = 要求使用相应的身份验证强度,而不是通用 MFA。 验证:激活 Global Admin 需要 2 名审批者,并要求达到抗网络钓鱼强度。

  4. Groups 的 PIM — 用于不属于 Entra 角色的特权组(例如包含多个角色分配的“Tier 0 Admins”组、持有敏感 RBAC 权限的 AD 同步组)。激活组,而不是逐个激活角色。

  5. Azure 资源的 PIM — 将订阅和管理组纳入管理。将 Owner 和 User Access Administrator 转为符合条件的分配。尽可能缩小限时分配的范围(例如分配到资源组,而非订阅)。

  6. 定期访问评审 — Tier 0 每季度一次,Tier 1 每半年一次。评审者应是角色分配对象的经理,而非管理员团队。“未响应”默认移除分配(并提前 24 小时通知宽限期)。 验证:评审完成率 > 90%;移除的分配已记录在审核日志中。

  7. 警报和审计 — 启用以下警报:“Too many global admins”“Roles activated outside PIM”“Activation doesn't require approval”。将 PIM 审计记录(AuditLogs 表)传输到 Sentinel。

防护措施

  • 设置两个拥有永久全局管理员权限且排除在 PIM 之外的应急账号。 监控每次登录。如果 PIM 发生故障,你仍有办法登录。
  • 激活全局管理员权限需两名审批者。 只有一名审批者时,如果两名审批者都是管理员,就会形成自我审批。两名审批者可打破这个循环。
  • 激活 Tier 0 权限时使用抗钓鱼 MFA。 在 2026 年,提升为全局管理员时使用短信 MFA 是不可接受的。
  • Azure RBAC 使用有时限、范围狭窄的权限。 资源组 > 订阅 > 管理组。范围越窄,遭到入侵时的影响范围就越小。
  • 不要以“我只需要用一会儿”为理由。 审核这些理由——如果它们毫无意义,说明控制措施没有发挥作用。
  • 至少每季度进行一次访问审查。 每年审查会让过期权限累积 12 个月。

常见反模式

  • “为 IT 团队保留常设全局管理员权限”——这正是 PIM 要消除的攻击面。改为设置符合资格的权限并要求审批。
  • “审批可选——管理员值得信任”——这会取消见证要求和审计跟踪。Tier 0 权限始终要求审批。
  • “一名审批者”——如果审批者也是管理员,就会形成自我审批循环。至少需要两名。
  • “只对 Entra 角色使用 PIM,Azure RBAC 仍保留常设权限”——在许多租户中,云订阅所有者权限的影响范围最大。Azure 也要纳入管理。
  • “每年审查一次”——权限会持续偏离 12 个月。Tier 0 权限应每季度审查。
  • “理由字段可选”——没有理由,审计日志就会丢失上下文。所有情况下都必须填写。
  • “对共享服务账号使用 PIM”——服务账号无法进行交互式审批。应使用托管标识 + RBAC,而不是 PIM。

示例提示词

  • 盘点我们租户中的常设管理员权限分配,并以应急账号之外的常设权限为零为目标。
  • 为全局管理员配置 PIM 激活,要求 2 名审批者和抗钓鱼 MFA。
  • 为 Azure 资源角色设置 PIM(生产订阅上的所有者)。
  • 为 Tier 0 角色配置季度访问审查,并在未响应时自动移除权限。
  • 当全局管理员在 PIM 之外被添加,或一周内激活超过 5 次时发出警报。
  • 将我们的“特权管理员”安全组迁移到适用于组的 PIM。

Microsoft Learn

评论

支持 Markdown