首页 > 解决方案 > Android OAuth 2.0 和 OpenID Connect 提供程序

问题描述

我在 ASP.NET Core 中使用 IdentityServer4 创建了自己的 OAuth 2.0 和 OpenID Connect Provider。我现在正在尝试创建一个 Android 应用程序(我的第一个 Android 应用程序),它使用我的提供程序来验证用户,使用身份验证代码 + PKCE 流。

我四处寻找适用于 Android 的客户端 SDK,发现一个名为 AppAuth,https://github.com/openid/AppAuth-Android。但看起来它不是一个完整版本,因为最后一个版本是 0.7.1,它是在一年半前发布的。应该使用这个吗?我应该担心它不是> = 1.xx吗?关于实现身份验证代码 + PKCE 流程的任何好的教程?

我还听说也许 AccountManager 可能是我正在寻找的。我找不到任何关于如何通过 AccountManager 实现 OAuth 2.0 和 OpenID Connect 流的文档。任何人都知道有一个很好的教程如何做到这一点?

关于如何使它工作的任何其他建议?

标签: androidoauth-2.0identityserver4openid-connect

解决方案


也对基于替代标准的库的想法感兴趣。

据我所知,这仍然是跨供应商工作的最受尊敬的库——但他们一直在为贡献者而苦苦挣扎。

Okta 和 Auth0 之类的优秀 Android 库值得借鉴。不过,它们可能在某些地方是特定于供应商的。

出于兴趣,我最近将 AppAuth 集成到了一个相当完整的(Kotlin / Single Activity)示例中,因此它似乎可以与最新的 Android 技术配合使用:

我发现可靠性和可用性很棘手,因为 Chrome 自定义选项卡增加了一些技术复杂性。


推荐阅读