外部用户临时账号权限使用
在与外部用户进行合作是,时常会面临多种不同的权限管控的需求。创建的用户未及时进行回收,导致内部资源会长期暴露在外,如账号泄露,还会引发严重的资产安全问题。
针对这一问题,通过这篇方案的介绍,我们借助IAM 的STS服务可以比较轻松便捷的解决这类临时账号管控问题。
配置临时STS凭证,默认一小时过期,建立一个用户为test,该用户不附加任何策略
当前以linux环境为主进行配置,当前配置linux使用该ak.sk
当前该AK/SK无法查看S3
创建一个角色为test,这个角色的受信任实体为该账号
附加角色为S3Readonly的权限并进行创建
允许原用户:test
添加STS Assume Role 权限,配置内联策略
搜索STS服务,操作选择AssumeRole 对于资源选择添加ARN,添加的ARN为test的ARN
给定策略名称,这里定义为AssumeRole,然后就可以点击创建完成。
当前这个用户有两个权限,一个权限是附加的AssumeRole这个策略,这个策略使用的是STS服务,所属的arn是新建的test,另一个权限,是创建的角色,该角色的权限是S3Readonly的权限,该信任关系为该账号的所有用户。
红框内的信息在后续配置文件时需要使用到
编辑配置文件,添加以下内容,将上图框中内容,放入对应位置vi .aws/credentials
aws_access_key_id =
aws_secret_access_key =
aws_session_token=
这时权限以配置好,当前可以使用该临时凭证进行访问S3,通过--profile进行指定
aws s3 ls -- profile test
这个临时凭证存在过期时间,默认为1小时,可以通过--duration-seconds进行修改使用时间。
参考链接:https://docs.aws.amazon.com/cli/latest/reference/sts/assume-role.html