如何解决使用 AWS SSO 以编程方式建立 boto3 会话
我正在尝试与 boto3
建立 boto3.session.Session(profile_name='foo')
会话,但收到 UnauthorizedSSOTokenError
错误:
botocore.exceptions.UnauthorizedSSOTokenError:与此配置文件关联的 SSO 会话已过期或无效。要刷新此 SSO 会话,请使用相应的配置文件运行 aws sso login。
我尝试使用 subprocess.run("aws sso login --profile foo")
登录,但这会打开我的网络浏览器并提示手动确认。
如果您使用的是 AWS SSO,有没有办法以编程方式建立 boto3
会话?
也就是说,有没有什么办法可以避免人工确认?
解决方法
您可以按照步骤 here 使用 AWS SSO 设置 AWS CLI。这将打开一个浏览器供您手动确认。我的建议是将 SSO session duration 增加到 12 小时。实际上,您每天登录一次,就可以在一天中的其余时间使用。这是安全性和便利性的最佳组合。不建议使用其他解决方案,例如创建 IAM 角色或完全自动化登录。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。