使用外部 IdP、AWS CLI 和 AWS SDK 时的会话持续时间注意事项
如果您使用外部身份提供者(IdP),或者使用 AWS Command Line Interface、AWS 软件开发工具包(SDK)或其他 AWS 开发工具以编程方式访问 AWS 服务,以下是配置会话持续时间时的注意事项。
外部身份提供者、用户交互式会话和 Amazon Q 开发者版扩展会话
如果您使用外部身份提供者(IdP),并且正在为用户交互式会话或 Amazon Q 开发者版的扩展会话配置会话持续时间,请牢记以下注意事项。
注意
这些注意事项不适用于用户后台会话。
IAM Identity Center 使用 SAML 断言中的 SessionNotOnOrAfter 属性帮助确定会话在多长时间内有效。
-
如果 SAML 断言中未传递
SessionNotOnOrAfter,则 AWS 访问门户会话的持续时间不受外部 IdP 会话持续时间的影响。例如,如果您的 IdP 会话持续时间为 24 小时,并且您在 IAM Identity Center 中设置了 18 小时的会话持续时间,则您的用户必须在 18 小时后在 AWS 访问门户中重新进行身份验证。 -
如果在 SAML 断言中传递
SessionNotOnOrAfter,则会话持续时间值将设置为 AWS 访问门户会话持续时间和 SAML IdP 会话持续时间中较短的那个。如果您在 IAM Identity Center 中设置了 72 小时的会话持续时间,并且 IdP 的会话持续时间为 18 小时,用户可以按 IdP 中定义的 18 小时有效期访问 AWS 资源。 -
如果您 IdP 的会话持续时间长于 IAM Identity Center 中设置的持续时间,由于您 IdP 的登录会话仍然有效,用户无需重新输入凭证即可启动新的 IAM Identity Center 会话。
AWS CLI 和 SDK 会话
如果您使用 AWS CLI、AWS SDK 或其他 AWS 开发工具以编程方式访问 AWS 服务,则必须满足以下先决条件才能设置 AWS 访问门户和 AWS 托管应用程序的会话持续时间。
-
您必须在 IAM Identity Center 控制台配置 AWS 访问门户会话持续时间。
-
您必须在共享 AWS 配置文件中为单点登录设置定义配置文件。此配置文件用于连接到 AWS 访问门户。我们建议您使用 SSO 令牌提供程序配置。使用此配置,您的 AWS SDK 或工具可以自动检索刷新的身份验证令牌。有关更多信息,请参阅 AWS SDK 和工具参考指南中的 SSO 令牌提供商配置。
-
用户必须运行支持会话管理的 AWS CLI 或 SDK 版本。
支持会话管理的 AWS CLI 最低版本
以下是支持会话管理的 AWS CLI 最低版本。
-
AWS CLI V2 2.9 或更高版本
-
AWS CLI V1 1.27.10 或更高版本
注意
对于账户访问使用案例,如果您的用户正在运行 AWS CLI,而且您在 IAM Identity Center 会话即将到期之前刷新权限集,并且会话持续时间设置为 20 小时,而权限集持续时间设置为 12 小时,则 AWS CLI 会话最长运行时间为 20 小时,再加上 12 小时总计为 32 小时。有关 IAM Identity Center CLI 的更多信息,请参阅 AWS CLI 命令参考。
支持 IAM Identity Center 会话管理的 SDK 最低版本
以下是支持 IAM Identity Center 会话管理的 SDK 最低版本。
| SDK | 最低版本 |
|---|---|
| Python | 1.26.10 |
| PHP | 3.245.0 |
| Ruby | aws-sdk-core 3.167.0 |
| Java V2 | 适用于 Java v2 (2.18.13) 的 AWS SDK |
| Go V2 | 整个 SDK:release-2022-11-11 和特定的 Go 模块:凭证/v1.13.0,配置/v1.18.0 |
| JS V2 | 2.1253.0 |
| JS V3 | v3.210.0 |
| C++ | 1.9.372 |
| .NET | v3.7.400.0 |