只读的 AWS 安全扫描工具,提供 110 项检查、IAM 提权路径分析、攻击链关联,并为每项发现给出 AWS CLI 与 Terraform 修复命令。
aws-samples/sample-cloudwatch-logs-iam-policy-validator
一个 Python 脚本,用于模拟 IAM 策略对 CloudWatch Logs 操作的授权,检查其能否适配标准日志组 ARN 格式。
- Star
- 5
- Fork
- 2
- 未关闭 Issue
- 2
- 最近提交
- 上个月
这是什么?
该脚本针对每个 CloudWatch Logs API 操作,同时检查日志组和日志流两种 ARN 格式下 IAM 策略的授权结果。它为每个操作调用 aws iam simulate-custom-policy,并输出表格,显示各操作是被允许还是被隐式拒绝。
它服务于一个具体的迁移场景:CloudWatch Logs 正在对 IAM 授权强制使用标准日志组 ARN 格式(不带结尾的 :*)。强制生效后,使用旧格式编写的策略将不再作用于日志组级别的操作。在此之前运行脚本,可以看出策略仍授予了哪些操作,哪些需要更新 Resource 元素。
脚本接收本地 JSON 策略文件和日志组名称,并可选指定区域、账户 ID 以及分区(aws、aws-cn 或 aws-us-gov)。运行需要 Python 3.8 及以上、AWS CLI v2,以及 iam:SimulateCustomPolicy 权限。
核心功能
- 01针对每个 CloudWatch Logs 操作,分别模拟日志组和日志流 ARN 下的 IAM 策略授权。
- 02输出逐操作的结果表,显示 allowed 或 implicitDeny。
- 03支持 aws、aws-cn 和 aws-us-gov 分区。
- 04区域和账户 ID 可从环境变量或 AWS CLI 默认配置中获取。
适用场景
- 在标准 ARN 格式强制生效前,检查现有 IAM 策略是否仍授予日志组操作权限。
- 更新使用带结尾 :* 旧版日志组 ARN 的策略语句中的 Resource 元素。
- 验证中国区或 GovCloud 账户中的 CloudWatch Logs 权限。
快速上手
- 1
将 IAM 策略文档保存为本地 JSON 文件
- 2
使用策略文件和日志组名称运行脚本
python3 simulate_cloudwatch_logs_policy.py policy.json MyLogGroup --region us-east-1 --account-id 123456789012
使用前须知
- 需要已安装并完成身份验证的 AWS CLI v2,并具有 iam:SimulateCustomPolicy 权限。
标签
常见问题
- sample-cloudwatch-logs-iam-policy-validator 是什么?
- 一个 Python 脚本,用于模拟 IAM 策略对 CloudWatch Logs 操作的授权,检查其能否适配标准日志组 ARN 格式。 该脚本针对每个 CloudWatch Logs API 操作,同时检查日志组和日志流两种 ARN 格式下 IAM 策略的授权结果。它为每个操作调用 aws iam simulate-custom-policy,并输出表格,显示各操作是被允许还是被隐式拒绝。
- sample-cloudwatch-logs-iam-policy-validator 可以免费使用吗?用的什么许可证?
- sample-cloudwatch-logs-iam-policy-validator 以 MIT-0 许可证开源。用于商业产品前,请先确认许可证条款。
- sample-cloudwatch-logs-iam-policy-validator 还在维护吗?
- 半年内有更新。sample-cloudwatch-logs-iam-policy-validator 最近一次提交是在 2026年9月24日。
- sample-cloudwatch-logs-iam-policy-validator 适合用来做什么?
- 在标准 ARN 格式强制生效前,检查现有 IAM 策略是否仍授予日志组操作权限。 更新使用带结尾 :* 旧版日志组 ARN 的策略语句中的 Resource 元素。 验证中国区或 GovCloud 账户中的 CloudWatch Logs 权限。
- sample-cloudwatch-logs-iam-policy-validator 怎么安装和运行?
- 将 IAM 策略文档保存为本地 JSON 文件 使用策略文件和日志组名称运行脚本: python3 simulate_cloudwatch_logs_policy.py policy.json MyLogGroup --region us-east-1 --account-id 123456789012
- 在哪里获取 sample-cloudwatch-logs-iam-policy-validator?
- 源代码和安装说明在 GitHub 上:https://github.com/aws-samples/sample-cloudwatch-logs-iam-policy-validator
概要由 AI 根据项目 README 生成;GitHub 数据每日更新。
相关项目
Steampipe 让你用 SQL 直接查询云服务和各类 API,无需 ETL 或额外数据库。
开源云安全平台与命令行工具,可对 AWS、Azure、GCP 等云环境执行安全与合规检查。
静态分析工具,扫描基础设施即代码、容器镜像和开源依赖中的云配置错误与安全漏洞。
面向 TypeScript 的通用认证与授权框架,通过插件扩展 2FA、多租户等功能。
可自托管的身份与访问管理服务器,提供 SSO、OAuth/OIDC、SAML、LDAP、MFA 及 MCP 网关,并带有 Web 管理控制台。