google-api - Google SAML SSO - 登录个人 Google 帐户时出现 403 app_not_configured_for_user 错误
问题描述
我正在使用 Google / G Suite 为我们的应用程序进行 SAML SSO 集成。我们的客户在其公司的 G Suite 管理员设置中配置我们的 SAML 应用程序。在大多数情况下,集成工作正常:
- 假设您尚未登录 Google 帐户。您启动 SSO 流程。系统会提示您登录公司的 Google 帐户,并且 SSO 可以正常工作。
但是,在这种情况下,SSO 会失败:
- 假设您只登录了您的个人 Google 帐户。Google 不显示帐户选择器。相反,您会立即收到 403 错误:“错误:app_not_configured_for_user。”
这给我们的用户带来了非常混乱的体验。您目前只登录一个不是您公司的谷歌账户的谷歌账户是很常见的。此外,错误页面是不透明的——用户不清楚他们做错了什么。
有没有办法总是显示帐户选择器?例如,我们可以在/o/saml2/idp
url 或 SAML AuthnRequest 中添加任何参数吗?(例如,我们尝试在 AuthnRequest 中设置ForceAuthn
和添加一个<saml:Subject>
块,但 Google 的 SAML 似乎也不支持。)
或者有没有办法让我们的应用程序在错误时获得回调,以便我们可以显示更有意义的错误消息?
(我联系了 G Suite 支持,他们说要在 Stack Overflow 上提出我们的问题。在这里感谢您的帮助!)
解决方案
您需要重定向到https://accounts.google.com/accountchooser?continue= {theredirectURL} ,而不是直接从您的应用重定向到 Google IDP
请参阅 Google SAML app_not_configured_for_user / 相当于 prompt=select_account SAML
推荐阅读
- linux - 如何获得 linux 机器上的总空间内存?
- javascript - 将键值对的字符串数组转换为对象数组javascript
- typescript - React-Native-Styled-Components:“DefaultTheme”类型上不存在属性“backgroundColor”
- sql - 无法使用带有 SJIS DB 的 pro*c 从表中检索数据
- docker - Dockerhub 显示几秒钟前提取的图像
- python - 在 3 个数据帧之间映射值
- random - 有效地对至少 k 个长度为 l 的随机 0-1 序列进行采样
- sql - sybase对表中的所有记录执行更新数学运算时如何处理空列?
- ios - 使用 REST API ObjC 使用 GameCenter 登录 Firebase
- material-ui - 是的验证,不显示表单字段的错误消息