OAuth客户端开源JDK:AppAuth

18-07-23 banq
              

AppAuth是一个客户端SDK,可使用OAuth 2.0和OpenID Connect对用户进行身份验证和授权。它适用于iOS, macOS,Android和 Native JS环境,是应用程序身份验证和授权领域的最佳实践,糅合了现代安全性和可用性 。

它直接映射OAuth等规范的请求和响应,提供最直接的原始协议流程,另外也还提供了方便的方法来协助执行常见任务,例如使用新令牌执行操作。

它遵循RFC 8252 - OAuth 2.0 for Native Apps中规定的最佳实践(这里), 包括指定特定浏览器或自定义的浏览器进行授权,由于RFC 8252的第8.12节中记录的可用性和安全性原因,显式不支持 嵌入式用户代理(称为Web视图) 。

它还支持对OAuth 的PKCE扩展,该扩展是在使用自定义URI方案重定向时为了保护公共客户端中的授权代码而创建的。该库对其他扩展(标准或其他)很友好,能够处理所有协议请求和响应中的其他参数。

AppAuth

总之,这是一个看似很小,实际很庞大的客户端JDK,单单其安卓客户端首页就够翻很长时间,大概只有安全专家才会津津乐道吧。