应用程序的Android SSO(单点登录)
Android是否有任何免费的单点登录机制,可以与非网络应用程序配合使用?比如说,类似于应用程序的Android SSO(单点登录),android,single-sign-on,Android,Single Sign On,Android是否有任何免费的单点登录机制,可以与非网络应用程序配合使用?比如说,类似于 您启动我的应用并使用它,直到它从应用服务器发出需要身份验证的请求。它使用随机令牌响应该请求,服务器将在短时间内与您关联 该应用程序为您提供用户名字段、密码字段和提交按钮 您可以输入用户名和密码。然后,应用程序将您的用户名和哈希密码以及应用程序服务器生成的令牌转发给登录服务 登录服务确定您的用户名和密码是否有效。如果是,它会对令牌进行数字时间戳和签名,并将签名的令牌返回给应用程序 应用程序将已签名的令牌中继到
您是否尝试过或想过使用Firebase 它有一些有用的工具,您可以使用多个社交连接器和用户/密码登录,它们提供了一个库来集成整个UI和服务器流程,甚至可以为您利用google smart lock
看看我在一个个人项目中使用过它,节省了我很多时间。您在
部分中描述的内容或者类似于使用代码交换验证密钥(PKCE)OAuth 2.0授权的授权代码
流程如下:
1.您的应用程序生成一个随机密钥(code\u验证程序
)及其转换值(code\u质询
),并以code\u质询
作为参数导航到授权服务器
2.授权服务器使用授权代码重定向回您的应用程序
3.您的应用程序将authorization\u code
和code\u验证器
发送到身份验证服务器以获取授权令牌
4.服务器使用authorization\u code
和code\u验证器
(它已经有code\u challenge
,因此它可以验证code\u验证器
是否正确),然后带着令牌返回到您的应用程序
在实用方面,您可以使用类似Auth0的东西在应用程序中实现它。使用Android帐户管理器实现SSO。
提供以下参考资料仅供参考。你必须深入了解客户经理。
Android开发者:
博客举例:Er,也许吧。在OpenID的例子中,我想一个更好的问题可能是,“是否存在一个连贯的解释,说明如何在现实世界的Android应用程序中与非理论用户一起实际使用OpenID?”到目前为止,我遇到的一切都是类似的“理论上xxx应该是这样工作的,但到目前为止,还没有人真正做到这一点。。。或者他们真的这么做了,但几个月后发生的事情打破了它