AWS IAM Data
收藏AWS IAM Data
描述
包含基于IAM策略文档的AWS操作、资源和条件的IAM数据。旨在用于下游项目,为IAM策略文档提供参考。
数据更新
数据每天扫描一次,如果有变化则发布新版本。版本号更新以反映上次更新的日期,函数iamDataUpdatedAt()返回上次数据更新的日期。此过程在此仓库外部管理。
使用方法
bash npm install @cloud-copilot/iam-data
typescript import { iamServiceKeys, iamActionDetails, iamActionsForService, iamServiceName } from @cloud-copilot/iam-data;
// 遍历所有服务的所有操作
const serviceKeys = await iamServiceKeys()
for(const serviceKey of serviceKeys) {
const serviceName = await iamServiceName(serviceKey);
console.log(获取 ${serviceName} 的操作);
const actions = await iamActionsForService(serviceKey);
for(const action of actions) {
const actionDetails = await iamActionDetails(serviceKey, action);
console.log(actionDetails);
}
}
API
服务
iamServiceKeys()- 返回所有服务键的数组,如s3、ec2等。iamServiceName(serviceKey: string)- 返回给定服务键的服务名称。iamServiceExists(serviceKey: string)- 如果服务键存在则返回true。
操作
iamActionsForService(serviceKey: string)- 返回给定服务键的所有操作的数组。iamActionDetails(serviceKey: string, actionKey: string)- 返回包含操作详细信息的对象,如description、resourceTypes和conditionKeys。iamActionExists(serviceKey: string, actionKey: string)- 如果操作存在则返回true。
资源
iamResourceTypesForService(serviceKey: string)- 返回给定服务键的所有资源类型的数组。iamResourceTypeDetails(serviceKey: string, resourceTypeKey: string)- 返回包含资源类型详细信息的对象,如description、arnFormat和conditionKeys。iamResourceTypeExists(serviceKey: string, resourceTypeKey: string)- 如果资源类型存在则返回true。
条件键
iamConditionKeysForService(serviceKey: string)- 返回给定服务键的所有条件键的数组。iamConditionKeyDetails(serviceKey: string, conditionKey: string)- 返回包含条件键详细信息的对象,如description、conditionValueTypes和conditionOperators。iamConditionKeyExists(serviceKey: string, conditionKey: string)- 如果条件键存在则返回true。
版本信息
版本号格式为major.minor.updatedAt。updatedAt是上次数据更新的日期,格式为YYYYMMDDX,其中X是一个计数器,以便在必要时允许一天内多次部署。例如,版本0.1.202408291表示数据在2024年8月29日更新。
版本可通过iamDataVersion()方法访问。
还有iamDataUpdatedAt()方法,返回上次数据更新的日期。




