代码之家  ›  专栏  ›  技术社区  ›  Aeseir

Ionic使用IdentityServer4作为IDP

  •  11
  • Aeseir  · 技术社区  · 6 年前

    我在业余时间做了一个简单的任务项目。 包括:

    • API服务器
    • IdentityServer4提供程序
    • 有角度的前端(非angularjs)

    我现在正试图通过加入一个移动应用程序来扩展这一点。在本例中,我在Ionic中构建了一个显示任务的简单应用程序。 我现在想实现身份验证,以便它可以从API获取与该用户相关的任务。

    我一直在四处寻找,但找不到任何关于如何做到这一点的解释或任何证明这一点的例子。

    最终状态它将是一个Android应用程序。

    感谢您的帮助。

    更新1:

    我已经研究了如何利用oidc客户端,但它似乎在移植到Android时无法正确激活浏览器功能。尽管如此,我们仍然没有找到足够的信息来说明正确的方法以及如何做到这一点。

    更新2:对爱奥尼亚的功能请求 由于似乎有很多人受到此影响,我向Github中的Ionic团队提出了功能请求。 https://github.com/ionic-team/ionic/issues/14499

    请投票并发表评论。

    1 回复  |  直到 6 年前
        1
  •  5
  •   Community CDub    3 年前

    如果您正在创建一个移动应用程序,则需要使用授权码或混合流,以及 PKCE .如果您还没有,请查看 RFC 8252 ,其中详细介绍了OAuth(以及OpenID Connect)和本机应用程序的当前最佳实践。

    不幸的是,oidc客户端只支持隐式流。对于Ionic应用程序,我建议使用 openid-client 因为这既允许使用更合适的流,也允许使用PKCE。

    据我所知,目前还没有公开的Ionic使用OpenID Connect的例子,但是,我确实有一位客户成功地使用了Ionic&我在上面列出的库。

    使现代化 : oidc客户端js现在支持授权代码+PKCE,因此适用于ionic应用程序。