移动 OAuth2.0 PKCE 流程:如何在不重新登录的情况下更新范围?

问题描述

我们的移动应用程序使用 OAuth2.0 PKCE Flow 作为身份验证解决方案。由于我们调用各种不同范围的后端微服务,那么每次我们为新功能调用新的微服务时,都需要用户重新登录获取新范围的新RefreshToken。

但是对于我们公司自己的Mobile App的真实情况,我们不需要scope来控制App是否可以访问新的微服务,事实上,认设计是我们的Mobile App可以访问所有微服务。我们的用户将使用 SSO 登录,范围是在我们的服务器端定义的,App 端只关心用户是否有效登录,范围不是控制 App 访问微 API 的方法。 但是作为 PKCE 流程,应用端需要添加新范围并重新登录才能让新范围起作用。

我们正在考虑的解决方案:

  • 添加只允许手机访问的手机后台服务,所有 移动 API 调用将委托给此后端服务。这不是 很好,因为移动后端充当“网关”,如果只是为了 范围问题。

  • 是否有其他最佳实践是移动客户端不需要添加的 范围或事件不包含任何范围,让任何后端 更新或返回具有新范围的令牌的服务。

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...