EB CLI与AWS CLI无法识别SSO sso_start_url和sso_region配置

10
我按照这些说明安装了EB CLI
为了使用它,我按照这些说明SSO配置了AWS CLI
这会在~/.aws/config中创建一个配置文件,其中包含以下内容:
[profile <profile_name>]
sso_session = <session_name>
sso_account_id = <account_no>
sso_role_name = <role_name>
region = <region>
output = json
[sso-session <session_name>]
sso_start_url = <start_url>
sso_region = <region>
sso_registration_scopes = <scopes>

所有数值似乎都是正确的。

配置完成后,我可以使用SSO登录:

aws sso login --profile <profile_name>

这将把我重定向到SSO <start_url>,并获得登录确认:

Successfully logged into Start URL: <start_url>

EB CLI应该能够使用设置为AWS CLI的身份验证方法进行登录。我正在尝试这样做:

eb init --profile <profile_name>

然而,在选择区域后,我遇到了这个错误:
ERROR: InvalidConfigError - The profile "<profile_name>" is configured to use SSO but is missing required configuration: sso_start_url, sso_region

我不确定我错过了什么,因为~/.aws/config文件似乎已经正确设置了我在AWS CLI配置中指定的sso_start_urlsso_region

是否还有其他中间步骤可以让EB CLI与SSO一起使用?


1
我将与sso相关的行复制到配置文件的个人资料部分中:sso_start_url = <start_url> sso_region = <region>但现在我遇到了这个错误:2022-12-25 14:01:03,948 (ERROR) ebcli.lib.aws : Botocore Error ERROR: SSOTokenLoadError - 加载SSO令牌时出错:SSO访问令牌已过期或无效。 - buzoherbert
1个回答

3

我曾经遇到过类似的问题,但是是在使用boto3时出现的,而不是EB。当我在Python脚本中创建客户端时,出现了相同的错误信息。后来我意识到,在虚拟环境中,我已经有两年没有更新boto3了。当我更新它之后,问题得到了解决。如果你也遇到了这个问题,可以尝试更新你的EB CLI或者boto3


思路不错,但它并没有解决 EB CLI 的问题。我正在使用最新版本3.20.5。 - Matt Dillard

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接