带有Azure AD B2C的NativeScript Enterprise Auth

时间:2019-07-04 14:58:21

标签: nativescript azure-ad-b2c

我按照说明使用Azure AD B2C帐户在NativeScript Sidekick(https://docs.nativescript.org/sidekick/user-guide/enterprise-auth/oauth2?_ga=2.225672666.17995213.1561656859-952769349.1561656859)中配置企业身份验证。

我已经在本地构建了适用于Android的应用程序,然后使用预览应用程序在手机上运行了该应用程序。到目前为止,一切正常。

但是每次我尝试登录该应用程序时,都会出现以下错误:{“ error”:“ invalid_client”,“ error_description”:“客户端身份验证失败。”,“ debug”:“客户端验证失败:重定向uri无效”}

我看过Kinvey中的配置,我看到重定向URI是http://example.com。在该过程中,从未指定修改此URI,但这可能是问题所在。事实是,我不知道应该放在哪里,因为我想重定向到我的移动应用程序...

任何帮助将不胜感激!

编辑:我已经编辑了对loginWithMIC()的调用以添加参数:

this._userService.loginWithMIC('nsplayresume://', 0, { micId: 'OAuth2:88b92d888ee44a36aea52fXXXXXXXX' })

现在我有此错误:{“错误”:“ invalid_client”,“ error_description”:“客户端身份验证失败。”,“ debug”:“客户端验证失败:错误:未为Kinvey Auth配置客户端” / p>

Edit2 :我已经在Kinvey控制台中进行了一些测试,并且使用我的应用程序的Api控制台,我可以成功登录。所以配置很好,这是我在应用程序中由于某种原因无法调用的方式...

如果我调用pingService.ping(),它工作正常,因此我的初始化似乎很好...

1 个答案:

答案 0 :(得分:1)

最后,它开始工作了……我已经回滚到原始的loginWithMIC(null,null)调用。在console.kinvey.com中的配置不起作用的地方。

以下是我的提示,这些提示不是分步进行的:

  • 添加nsplayresume://作为服务的重定向URI。
  • 通过API控制台测试应用,以确保您可以使用MIC进行连接。

如果一切正常,示例应该可以正常工作。

编辑:如果您希望在安装应用程序后也能使其正常运行,则需要另一个重定向URI。 nsplayresume://仅适用于NS预览应用程序。您需要像这样在package.json中定义一个URI:

{
  "android": {
    "v8Flags": "--expose_gc"
  },
  "main": "main.ns.js",
  "name": "migration-ng",
  "version": "4.1.0",
  "pluginsData": {
    "kinvey-nativescript-sdk": {
      "config": {
        "appKey": "kid_rkDJUINIQ",
        "appSecret": "17282f9d91da4af7b398855e32ea4dd0",
        "redirectUri": "sde://"
      }
    }
  }
}

然后,您将此URI添加为服务的其他重定向URI。