跳转到主要内容

创建确定性的zip文件程序。

项目描述

aws_longer

aws_longer 是一个工具,它用一些显著的优点替换了 assume-role

  1. MFA令牌只需要每36小时输入一次。
  2. 会话可以在终端之间共享,并在重启后持续存在。

以上两点都是通过将会话凭据和假定凭据存储在用户的密钥链中实现的。

安装

通过以下方式安装此软件包

pip install aws_longer

如果您想使用此软件包与您的yubikey配合使用,请运行

pip install aws_longer[yubikey]  # Escape the brackets in zsh

假定角色

aws_longer role ROLENAME AWS_ACCOUNT

上述操作将打开一个新的shell,设置适当的 AWS_ 环境变量。如果您是第一次运行此命令,或者自上次输入MFA令牌以来已过36小时,那么您将被提示输入您的MFA令牌。

AWS_ACCOUNT 可以是AWS账户ID,或者是对AWS账户ID的别名。

如果您想防止打开新的shell,可以改而运行,但请注意,如果有任何错误,结果将终止您的shell程序

exec aws_longer role ROLENAME AWS_ACCOUNT

使用临时会话

除了假定特定角色外,还可以直接通过以下方式利用36小时的临时会话

aws_longer

使用这个临时会话的好处是,例如,如果您需要MFA来假定角色,并且希望能够使用假定特定角色的提供程序运行 terraform apply,那么这将非常有用。

AWS 账户 ID 别名

AWS 账户 ID 别名可以在 ~/.aws/accounts 中定义,这是一个格式如下的 JSON 文件

{
  "default": "123456789012",
  "staging": "123456789012",
  "production": "123456789012"
}

这种别名的格式与在 assume-role 中使用的格式相同,以便于过渡。

避免提示令牌

如果您使用程序生成您的 MFA 令牌,您可能更喜欢在命令调用中将令牌直接传递,而不是通过提示 STDIN。可以通过以下方式完成:

aws_longer --mfa-token TOKEN role ROLENAME AWS_ACCOUNT

在这种情况下,只有在必要时才会使用 MFA 令牌。

Yubikeys

如果您在 TOTP 模式下使用 Yubikey,您可以通过以下方式使用它

aws_longer --yubikey NAME role ROLENAME AWS_ACCOUNT

要发现您 yubikey 上的名称,您可以列出所有名称:

ykman oath list

项目详情


下载文件

下载适用于您的平台的文件。如果您不确定选择哪个,请了解有关 安装包 的更多信息。

源分发

aws_longer-0.4.0.tar.gz (6.5 kB 查看散列值)

上传时间

构建分发

aws_longer-0.4.0-py3-none-any.whl (6.3 kB 查看散列值)

上传时间 Python 3

由以下机构支持

AWS AWS 云计算和安全赞助商 Datadog Datadog 监控 Fastly Fastly CDN Google Google 下载分析 Microsoft Microsoft PSF赞助商 Pingdom Pingdom 监控 Sentry Sentry 错误日志 StatusPage StatusPage 状态页面