我喜欢在移动应用和API之间建立某种无密码登录(假设我可以控制它们)。动机是必须登录对用户来说非常烦人并且存在安全风险(例如,用户将重用现有密码),我希望用户能够立即开始使用该应用程序。
我想知道是否有一些技术可行。例如:
缺点是:
所以我的问题:这样的可行性和安全性足够吗?有没有已知的技术可以做到这一点?
答案 0 :(得分:4)
这是我们做的:
基本上,这个想法非常类似于忘记密码"大多数服务提供:
myapp://login?token=.....
。好处:
不太好:)
我已经在我们的应用中实现了此流程,您可以在此处阅读更深入的解释: http://www.drzon.net/passwordless-login-in-mobile-apps/
更多注意事项:
app://
)的链接。解决此问题的方法是将链接指向服务器,然后将其重定向到实际的深层链接
https://myserver.com/login?token=...
---> myapp://login?token=...
Mozilla也写了here
答案 1 :(得分:2)
这是非常开放的,但通常:不要重新发明轮子,使用标准解决方案,如OAuth和/或OpenID Connect(使用OAuth)。这样做的缺点是用户可能需要通过WebView或类似方式登录才能获得令牌,但您不必存储密码。
需要考虑的事项:
至于“足够安全”,现在几乎每个人都使用OAuth(Twitter,Facebook等),所以至少证明了这一点。实际的安全性取决于您的具体实施。