2 回答

TA贡献1845条经验 获得超8个赞
我可以先问几个问题 - 看看我是否理解这个场景:
用户是否首先登录主机应用程序 X,然后您的应用程序作为插件加载?
这是不同公司搭建主机和插件的联合场景吗?
主机和插件是否使用相同的授权服务器,或者它们是具有不同用户凭据的不同登录系统。
避免同意提示可能就像在 Authorizatiom Server 中的应用程序的 OAuth 客户端条目中关闭此设置一样简单
值得注意的是,由于点击劫持问题,iframe 中的 OAuth 登录经常被阻止,更可靠的选择是使用弹出窗口进行插件登录。
在某些情况下,实现使解决方案感觉像单个集成 UI 的预期行为可能非常困难或不可能 - 但您的要求正变得非常普遍。

TA贡献1844条经验 获得超8个赞
我找到了解决方案:
account_id
X 授权服务器中有一个选项没有很好的记录:
预先选择要授权的帐户
调用您的管理 URL 时,我们传递参数
_account_id
。该参数的值可以作为account_id
授权过程中的参数。这样做将在使用授权码流或隐式流时预先选择要授权的帐户。
account_id
所以我可以通过在授权url中传递参数来模仿问题中描述的行为。
现在,我理解了Pre-Select by 一词:
检查帐户所有者是否连接到主机应用程序,选择其帐户并在应用程序中静默验证帐户所有者,如果它是已批准的帐户。
如果我在网络开发者工具中没有看到,那是因为它们是由 X 提供的,所以可能 X 使用 cookie/session 来预先选择要授权的帐户。我必须安装第三方应用程序才能看到account_id
授权 url 中的参数。
谢谢您的回答 !
- 2 回答
- 0 关注
- 252 浏览
添加回答
举报