问题描述
我在 SalesForce 开发者论坛上发布了这个,但到目前为止我还没有得到任何答复。我希望你们中的一些人能给我一些见解。
我正在尝试使用第三方作为 idP 在 SalesForce 中设置 OpenID Connect。我能够被重定向到 iDP,介绍我的凭据,但是在返回 SalesForce 的那一刻,我收到了下一个浏览器字符串错误:https://personal156-dev-ed.my.salesforce.com/_nc_external/identity/sso/ui/AuthorizationError?ErrorCode=No_Openid_Response&ErrorDescription=Bad+response&ProviderId=0SO4x0000004PmJ
我在 IdP 中添加了回调 URL 并启用了范围“openid 和 profile”,注意我在默认范围字段中没有“email”。我的 IdP 包括范围“配置文件”内的电子邮件信息。所以我想知道 email 字段是否在范围内是必须的,这就是为什么我可能会收到之前描述的错误。
低于我的配置
感谢您的帮助!
解决方法
我按照以下建议解决了这个问题:https://salesforce.stackexchange.com/questions/202308/openid-connect-bad-response
通常情况下,用户信息以签名的 JWT 形式出现,您应该禁用签名并以 JSON(不是 JWT/JWA)的形式获取响应。
令人惊讶的是,据我所知 SalesForce 不支持用户信息响应签名。
我希望这对某人有所帮助。
谢谢,