AWS CLI承担角色和OKTA认证。

pyokta-aws-cli-assume-role的Python项目详细描述


< div >

pyokta aws cli承担角色

pypi versionpypi downloadssourcebuild>>>>>>>><<


Okta AWS人类认证工具

如果您通过Okta Saml Federation登录到AWS并担任IAM角色,则此工具将帮助您通过AWS CLI和AWS CLI轻松实现对AWS的实际访问="nofollow">sdks。也有助于运行terraform/terraform打包程序,以及具有IAM角色的credstash

< Buff行情>

替换okta-aws cli assempt role

注意事项:该项目仍处于快速发展阶段。您可以通过github订阅新的发布通知。通过pip install--upgrade--no cache dir pyokta aws cli assempt role升级到最新版本

目录

支架

  • mfa:sms
  • MFA:Okta Mob公司ILE APP/LI>
  • 所有主要操作系统(Linux、Windows、Mac)。

请为错误或功能请求(如果路线图或其他问题中尚未提及)创建问题

为什么是新工具?

优于现有工具的优点

  • 没有路径更改或重写aws可执行文件-您仍在使用本机awscli。
  • 支持多个租户。
  • 为所有租户提供一个一致的配置文件。
  • env var更改是100%可选的。
  • 清除https错误输出。
  • 易于安装。
  • 不需要JVM。

此工具中缺少现有的工具功能

计划在不久的将来支持这些功能。请参见路线图

  • [X]从多个MFA选项中交互选择。
  • [X]通过cli args、env vars或config文件设置所需的mfa选项。
  • [X]支持OKTA移动应用程序MFA(目前只有短信可以工作)。
  • [X]跨操作系统兼容性
  • []Okta令牌缓存/刷新。

入门

要求

  • 巨蟒3.5+
  • awscli:pip安装--升级awscli

安装

pip install--upgrade--no cache dir pyokta aws cli assempt role


要检查安装并输出当前版本,请运行: pyokta aws--版本

配置

可以通过cli args、env vars或上述pyokta aws配置文件输入配置。配置采用如下方式:cli args>;env vars>;配置文件。对于所有支持的arg和env vars,运行pyokta aws--helppyokta aws[command]--help

交互式

运行pyokta aws configure进行交互式配置(WIP)。

配置文件

默认配置文件位置为~/.pyokta_aws/config

配置文件示例:

[my-aws-profile]
region = us-east-1
okta_org = example.okta.com
okta_aws_app_url = https://example.okta.com/home/amazon_aws/123456789
aws_role_to_assume = arn:aws:iam::987654321:role/AWSAdmin
aws_idp = arn:aws:iam::987654321:saml-provider/Okta
username = johnsmith
sts_duration = 14400
mfa_choice = sms
  • 区域:目标AWS区域。(将覆盖目标aws cli配置文件中的默认区域)
  • Okta_org:Okta org的基本域。
  • Okta-aws-app-url:Okta-app-url(可通过将鼠标悬停在AWS-app-chiclet上找到)。
  • AWS角色假设:可在AWS控制台的iam>;roles>;lt;role&u id>;下找到。查找arn
  • AWS IdP:可在AWS控制台的iam>;identity providers>;<;provider\u id>;下找到。查找arn
  • 用户名:(可选)OKTA用户名。
  • 密码:(可选)建议省略或留空并以交互方式输入。
  • sts_duration:(可选)保持令牌活动的持续时间(秒)。在iam>;identity providers>;<;provider>;中找到的最长持续时间
  • 多因素选择(可选)如果注册了多个多因素选择,则可以通过设置首选多因素选择跳过交互式因素选择。当前的选项是smsapp(即okta移动应用程序)。

用法

要通过OKTA进行身份验证并采用AWS配置文件,请运行:

pyokta aws auth--profile<;aws_profile>;


对于所有支持的auth参数,运行pyokta aws auth--help

对于所有支持的命令,运行pyokta aws--help

工作原理

mainpyokta aws auth命令使用okta进行身份验证,并从aws sts获取一组临时凭据。这些凭据将写入本地aws凭据文件。这一切ows的aws cli和其他工具,如terraform/terragrunt打包程序,和credstash按预期运行,而无需重写awscli可执行文件或导出环境变量。

< Buff行情>

在进行身份验证之前,您的本地aws cli配置文件将通过pyoktaaws配置文件中设置的配置文件和区域进行更新。在使用okta进行身份验证时,请将pyokta aws配置文件视为aws cli配置的唯一真实来源。

路线图

  • [X]pypi包
  • [X]cli和设置加载程序
  • [X]支持多租户设置
  • [X]ci(测试):建筑工人:
  • [X]Okta认证
  • [X]Okta 2fa(短信息)
  • [X]从Okta应用程序获取saml
  • [X]通过Okta Auth进行AWS认证
  • [X]AWS配置(如果以前没有设置的话)
  • [X]基本文档:铅笔:
  • [X]支持多个2fa方法
  • []交互式初始配置:儿童通道:
  • []阅读文档:铅笔:
  • []更多的测试
  • [X]Windows支持:方格标志:
  • []CI/CD(部署到PYPI)?
  • []互动模式下的AWS角色列表选择:儿童交叉:
  • [X]Okta 2fa(Okta移动应用程序)
  • []推送通知2fa
  • []使用上下文管理器在取消时自动取消OKTA验证
  • []OKTA令牌缓存/刷新以加速多个登录:儿童交叉口:

:狗:

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

推荐PyPI第三方库


热门话题
java Thumbnailator库将图像转换为cmyk   Java反射从目录中的类运行测试   JavaEclipseJDT编译器说方法未定义,但EclipseIDE没有   重构如何重构一行重复的java代码   java Eclipse:使用删除线文本呈现自定义注释   java问题与ArrayList复制数据   java如何在swagger中传递访问令牌?   使用另一个java文件运行java文件时出错   java为什么谷歌云存储生成的上传链接在成功上传后不会失效?   java将我的客户端PC重定向到默认登录页面   java hibernate c3p0配置mysql问题   java和java之间的区别。尼奥。文件文件和java。伊奥。文件   列出java循环并向映射中添加值   java为什么OJ报告这段代码的运行时错误?