OpenId Connect 身份提供者启动的反向通道注销不起作用
OpenId Connect Identity Provider initiated backchannel logout not working
我正在开发一个 java Spring Boot 项目,该项目在内部管理用户和会话。它依赖于 OIDC,AWS Cognito 是身份提供者,用于登录,我希望用户 注销。
我从 OIDC Spec for backchannel logout 中了解到的是:
我必须在我的后端应用程序中提供用于注销的端点。我在 java Spring 引导应用程序中使用 Pac4J 作为我的 OIDC 库,并根据 Pac4J Spring Security documentation 启用了 logout
端点]
身份提供商 AWS Cognito 如果用户已从身份提供商注销,则应向注销端点发送请求
当我在此端点上收到有效调用(根据 OIDC 规范)时,我必须销毁用户与我的应用程序的会话。
但是,从身份提供商 (AWS Cognito) 注销的用户似乎不会导致调用我的应用程序的注销端点。
我无法在 AWS Cognito 文档中找到有关此反向通道行为的文档。
- 我是否正确理解了反向通道注销?
- 目前是否不受支持,因为 OIDC 注销仍处于草稿状态(截至 2019 年 3 月 12 日)?
我联系了 Pac4J 的主要开发人员,他的回复非常及时。
AWS 认知:
- 目前似乎不支持后台注销
Pac4J:
- OIDC 的库目前不支持反向通道注销,它也不在路线图上:https://groups.google.com/forum/?fromgroups#!topic/pac4j-users/SD_IgKVZWvM,文档中引用的 /logout 用于内部(到应用程序)注销 + (如果已配置)将注销请求转发给身份提供者。它不是 OIDC-backchannel-logout 端点。
我正在开发一个 java Spring Boot 项目,该项目在内部管理用户和会话。它依赖于 OIDC,AWS Cognito 是身份提供者,用于登录,我希望用户 注销。 我从 OIDC Spec for backchannel logout 中了解到的是:
我必须在我的后端应用程序中提供用于注销的端点。我在 java Spring 引导应用程序中使用 Pac4J 作为我的 OIDC 库,并根据 Pac4J Spring Security documentation 启用了
logout
端点]身份提供商 AWS Cognito 如果用户已从身份提供商注销,则应向注销端点发送请求
当我在此端点上收到有效调用(根据 OIDC 规范)时,我必须销毁用户与我的应用程序的会话。
但是,从身份提供商 (AWS Cognito) 注销的用户似乎不会导致调用我的应用程序的注销端点。
我无法在 AWS Cognito 文档中找到有关此反向通道行为的文档。
- 我是否正确理解了反向通道注销?
- 目前是否不受支持,因为 OIDC 注销仍处于草稿状态(截至 2019 年 3 月 12 日)?
我联系了 Pac4J 的主要开发人员,他的回复非常及时。
AWS 认知:
- 目前似乎不支持后台注销
Pac4J:
- OIDC 的库目前不支持反向通道注销,它也不在路线图上:https://groups.google.com/forum/?fromgroups#!topic/pac4j-users/SD_IgKVZWvM,文档中引用的 /logout 用于内部(到应用程序)注销 + (如果已配置)将注销请求转发给身份提供者。它不是 OIDC-backchannel-logout 端点。