iamlive:云 IAM 策略自动生成工具
通过客户端监控或本地代理监听云 API 调用,实时生成 AWS、Azure、GCP 的 IAM 策略。
- 浏览
- 2
- 访问
- 0
- 下载
- 0
- 版本
- v1.1.28
- 平台
- Windows、macOS、Linux
详细介绍
项目简介
iamlive 是一个用 Go 编写的命令行工具。它会通过客户端监控(CSM)或本地嵌入代理(proxy)监听 AWS、Azure、Google Cloud 的 API 调用,并据此实时生成对应的 IAM 策略,包括 AWS IAM Policy、Azure RBAC 和 GCP IAM 策略。它适合需要按最小权限原则编写策略、又不想手动逐条整理的开发者与运维人员。
注意:Azure 与 Google Cloud 提供方目前处于预览阶段,可能产生不正确的输出。

主要功能
- 根据实际发生的云 API 调用,实时生成策略语句
- 两种监听模式:CSM(默认用于 AWS,只能捕获
Action)与 proxy(可同时捕获Resource) - 通过
--provider支持aws、azure、gcp三种云厂商 --set-ini可自动修改.aws/config以启用 CSM 或使用 CA bundle,退出时自动移除- 支持
--output-file在 SIGHUP 或退出时写出文件、--refresh-rate定时刷新、--sort-alphabetical排序、--background后台运行等选项 - 命令行参数也可写入
~/.iamlive/config这个 INI 文件
安装与使用
预编译二进制:从项目 releases 页面下载 Windows、macOS、Linux 版本,解压后放入 $PATH 或直接执行。macOS 用户可能需要在系统偏好设置中允许应用运行。
Homebrew:
brew install iann0036/iamlive/iamlive
自行编译(需要 Go 1.16 或更高版本):
go install
在你使用的 CLI / SDK 应用之外打开一个窗口运行,结束后按 Ctrl+C 退出:
iamlive --set-ini
Proxy 模式:
iamlive --set-ini --mode proxy
Azure / Google Cloud:
iamlive --provider azure
iamlive --provider gcp
CSM 模式需要在客户端设置 AWS_CSM_ENABLED=true(或在 .aws/config 中写入 csm_enabled = true)。proxy 模式默认监听 http://127.0.0.1:10080,需要为客户端设置 HTTP_PROXY、HTTPS_PROXY 以及 CA bundle(默认 ~/.iamlive/ca.pem);Azure 使用 REQUESTS_CA_BUNDLE,Google Cloud 则通过 gcloud config set proxy/... 与 core/custom_ca_certs_file 配置。
注意事项
- CSM 模式仅支持 AWS,且只能得到
Action,Resource只有 proxy 模式才能获取。 - proxy 模式下,子进程中的其他软件也可能遵循代理变量,从而出现证书不受信任的问题;可用
NO_PROXY或为这些软件添加 CA bundle 规避。 - Azure 与 Google Cloud 支持为预览状态,输出可能不准确。
- 项目以 MIT 许可证开源。
本作品整理自 GitHub 开源项目 iann0036/iamlive,原作者 @iann0036,许可证 MIT。中文介绍由 AI 根据项目 README 整理,以原仓库为准。
更新记录
- v1.1.28当前版本
本次更新主要调整构建与发布流程:新增 notary 选项、切换到 goreleaser v2、多次尝试与回滚 Apple 代码签名配置、更新内置定义,并补充了代理环境变量的说明。
评论