Ionic使用IdentityServer4作为IDP

Aes*_*eir 10 api typescript ionic-framework identityserver4 angular

我有一个我在业余时间建造的简单任务项目.由组成:

  • API服务器
  • IdentityServer4提供程序
  • 角度前端(不是angularjs)

我现在正试图通过整合移动应用程序来扩展它.在这种情况下,我在Ionic中构建了一个显示任务的简单应用程序.我现在想要实现身份验证,以便它可以从API获取与该用户相关的任务.

我一直在环顾四周,但找不到任何解释如何做到这一点或任何证明这一点的例子.

结束状态它将是一个Android应用程序.

任何帮助表示赞赏.

更新1:

我已经研究过利用oidc-client但是在移植到Android时似乎没有正确激活浏览器功能.尽管如此,对于正确的方法以及如何做到这一点,还没有找到足够的信息.

更新2:功能请求到Ionic 由于似乎有很多人受此影响我已经在Github中与Ionic团队提出了功能请求. https://github.com/ionic-team/ionic/issues/14499

请投票和评论.

Sco*_*ady 5

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

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

据我所知,没有使用 OpenID Connect 的 Ionic 公开示例,但是,我确实有一个客户成功地使用了 Ionic 和上面列出的库。

更新:oidc-client-js 现在支持授权码 + PKCE,因此适用于 ionic 应用程序。

  • 谢谢大佬会查的。顺便说一句,你得到了很好的 tuts,帮助我离开了地面。 (2认同)