我有一个带有 OpenIddict 的 .Net Core Auth API 和一个 .Net Core Api “客户端”。现在我正在构建一个 Ionic 3 本机应用程序,我想实现 Facebook 登录,人们可以通过本机Facebook 应用程序登录。到目前为止,我只找到了使用 Facebook网络登录的示例。
到目前为止,我有:
- 返回 Jwt 令牌的有效 .Net Core Auth API
- 接受这些 JWT 令牌的有效 .Net Core 客户端 API
- 一个工作的 Ionic 3 应用程序,可以使用用户名 + 密码登录,获取令牌并使用它。
- 一个工作的 Ionic 3 应用程序,带有 Facebook 登录,通过本机Facebook 应用程序(通过 Cordova 插件)登录
感觉代码流是正确的方法,但所有示例都重定向到 Facebook 登录网页,因此用户可能仍然需要在他的原生 Facebook 应用程序已经登录时登录 Facebook。
我的问题是:用户在我的 Ionic 应用程序中通过 Facebook 登录后,如何从 OpenIddict Auth Api 获取 JWT 令牌,以便我可以使用我的客户端 API?或者我应该在使用原生 Facebook 应用程序登录时以某种方式更改流程?
更新:在 Ionic 中,我确实得到了 Facebook UserId,它等于 AspNetUserLogins.ProviderKey。登录到您的 API 是否足够安全?