假设我们有授权服务器+资源服务器,也是一个移动应用程序。所有应用程序都是由同一家公司开发的(例如所有谷歌服务+官方移动应用程序)。
据我了解,移动应用程序应该使用Oauth2资源所有者密码凭据流,我是否正确? This is an article支持我的理解。根据{{3}},它似乎不是正确的方法。那么正确的方法是什么?它是Oauth2 spec拨款流程吗?在那种情况下,应该如何应对重定向? (有很多方法,但不离开应用程序的最佳方式是什么?)
此外,我需要在移动应用中使用本机登录屏幕,资源所有者需要输入用户名/密码。可以通过授权代码流完成吗?如何?
如果我对资源所有者凭据流是正确的,那么我们如何在没有客户端秘密嵌入应用程序的情况下在春季实现它?
以下是在春季通过资源所有者密码凭据获取令牌的必要方法。
curl -X POST --user 'trusted-client:client-secret' -d 'grant_type=password&username=test&password=123' http://localhost:8080/oauth/token
这里我们需要在应用程序中设置客户端密码(这不安全),authorization code会有效吗?假设后来我们可能有不同的客户端,自定义身份验证提供程序如何区分这两者?任何答案都会很棒。感谢。