获取aws角色的临时凭据。

awsudo的Python项目详细描述


awsudo是一个命令行工具,它从STS请求临时凭据 使用IAM role

如果MFA已启用, 系统将提示您输入令牌代码。

用法

首先,您需要在~/.aws/credentials

中定义凭据
[default]aws_access_key_id=AKIAIJFLKDSJFKLDSZ2Qaws_secret_access_key=Eoz3FDKJLSfdsJLKFDjflsFDjklJFDjfdFDjdOKa

然后在~/.aws/config

中定义您的配置文件
[profile administrator@development]role_arn=arn:aws:iam::00000000002:role/administratorsource_profile=defaultmfa_serial=arn:aws:iam::00000000001:mfa/pmuller[profile administrator@staging]role_arn=arn:aws:iam::00000000003:role/administratorsource_profile=defaultmfa_serial=arn:aws:iam::00000000001:mfa/pmuller[profile administrator@production]role_arn=arn:aws:iam::00000000004:role/administratorsource_profile=defaultmfa_serial=arn:aws:iam::00000000001:mfa/pmuller

您可以使用awsudo来获取准备好使用的临时凭据 环境变量:

$ awsudo administrator@staging
Enter MFA code:
AWS_ACCESS_KEY_ID=ASIAJFSDLKJFS3VLA
AWS_SECRET_ACCESS_KEY=UKvIegRLKJSFLKJFDSLKFJSDLKJ
AWS_SESSION_TOKEN=FQoDYXdzEHIaDONIt4M0O10zRms0ac2.....

或者直接运行另一个在其 环境:

$ awsudo administrator@development aws iam list-groups
Enter MFA code:
{
    "Groups": [
        {
            "Path": "/",
            "CreateDate": "2016-08-01T02:13:52Z",
            "GroupId": "AGPAILKJFSDLFKJSDLFS2",
            "Arn": "arn:aws:iam::1234567890:group/administrators",
            "GroupName": "administrators"
        },
        {
            "Path": "/",
            "CreateDate": "2016-08-01T02:24:05Z",
            "GroupId": "AGPAFSJDKLJFDSLKJFST6",
            "Arn": "arn:aws:iam::1234567890:group/users",
            "GroupName": "users"
        }
    ]
}

开发

运行测试:

$ make check

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
解释java选择方法   连接到127.0.0.1的java间歇性故障,连接到IP(eth0)时没有故障   java如何优雅地杀死hadoop作业/intercept`hadoop作业杀死`   java如何通过引导类加载器以编程方式加载另一个类?   url Java:在查询参数之前使用片段构建URI   在BroadLeaf表blc_order_属性中保存OrderAttributes值时发生java错误   安卓将功能从xml转换为java   java如何将数据写入文件?   java JPA SQL结果映射   Java中整数对象比较运算符的引用安全性   Spring测试失败:java。lang.NoClassDefFoundError:org/springframework/cglib/transform/impl/memorysafuendecaredthrowableStrategy   rich:extendedDataTable中的java行选择和数据处理   java为什么我需要在volatile上对多个线程使用synchronized?   java尽管构建成功,但为什么会出现此错误?   数组$ArrayList不能转换为java。util。java中的ArrayList   java如何根据泛型类型调用方法?   java将JLabel添加到JPanel,将JPanel添加到JFrame   如果MapStruct中的源为null,则java将父目标设置为null   JavaJBossDrools从DRL插入事实   java不同的JRE安装(windows)