要检索凭证(aws_access_key,aws_secret_access_key,aws_session_token)以通过cli访问AWS服务,我们必须首先调用自定义服务以获取临时凭据。如果凭据已过期,我们需要检索新凭据。
使用boto可以通过扩展boto.provider.Provider
来编写自定义凭据提供程序。有类似的东西可以扩展aws cli吗?
虽然没有记录,但我知道可以为aws cli编写插件。我可以利用此功能来实现自己的凭据检索器吗?
答案 0 :(得分:3)
您需要创建一个实现CredentialProvider
class in botocore。
创建后,您可以让CLI将其添加到要检查的凭据提供程序集中。
如果您需要此示例,AssumeRole凭据提供程序将在CLI中写为“内部”插件。你需要对此进行something similar。您将从会话中获取credential_provider
组件,然后将您的组件注入链中。您可能需要查看默认的providers集,并确定应放置自定义凭据提供程序的位置。