android - AppAuth或在Android中手动实现OAuth2.0
问题描述
我试图了解 - AppAuth SDK的真正用途是什么?我有一个网站(在 OAuth2.0 中充当用户代理),用户在其中插入他的凭据。我向这个网站传递了一个重定向 URL 作为参数,一旦用户通过网站内部的验证过程,网站就会发送重定向 URL 以及访问令牌。
现在,如果我没记错的话,我有几个选择:
- WebView - 简单地捕捉
shouldOverrideUrlLoading
回调,并从 url 中检索访问令牌。这种方法有什么缺点? - 对 Chrome 自定义标签做同样的事情吗?
- 对受信任的 Web 活动做同样的事情吗?
- 以某种方式集成 AppAuth SDK,但它真正给了我们什么是以前的方法不做或不处理的?
它是否处理我可能需要数字资产链接的事实?我真的需要它吗?
解决方案
关于 AppAuth 库的作用的一些说明:
- 基于标准的移动安全 - 如本机应用程序的 OAuth 2.0 中所述
- 实施推荐的授权代码流程(PKCE)流程
- 通过系统浏览器登录(不推荐通过 Web 视图登录)
- 作为经过认证的图书馆,它可以为您的公司提供良好的安全广告
- 良好的登录可用性 - 密码自动填充之类的东西可以工作
但是,可靠地集成库是一项艰巨的工作。选择解决方案总是需要根据您和您的利益相关者最关心的内容进行权衡。如果有帮助,我有一些详细但直观的博客文章和一个您可以运行的应用程序,以帮助您进行评估: