【问题标题】:Realm Authentication Server Error with iCloud Auth使用 iCloud 身份验证的领域身份验证服务器错误
【发布时间】:2017-07-12 00:46:48
【问题描述】:

RealmSwift 2.8.3、Realm 对象服务器 1.8.1、Xcode 8、Swift 3.1

我可以使用 Realm Object Server (ROS) 获得几乎所有内容来使用 iCloud 身份验证,但是当我有一个新用户身份验证时我遇到了一个问题,该用户在我的 ROS 实例上还没有帐户.

我成功地检索了他们的 iCloud 令牌,但当我这样做时,usernil

let credentials = SyncCredentials.cloudKit(token: token)

SyncUser.logIn(with: credentials, server: serverURL) { user, error in
  DispatchQueue.main.async{
    if user == nil {
      //--- Error ---
      //This is where I end up. I can see the token in the log but no user object
    }else{
      //--- Success ---
    }
  } 
}

当我检查我的 ROS(在 Ubuntu 上运行)中的错误日志时,我收到了这个内部服务器错误 (500):

2017-07-12T00:39:39.170Z - warn: auth.cloudkit: Handle request failed with: Error: Request failed with code AUTHENTICATION_FAILED: Authentication failed.

2017-07-12T00:39:39.174Z - warn: [services] internal error: Error: Request failed with code AUTHENTICATION_FAILED: Authentication failed.
at request.catch.err (/usr/lib/nodejs/realm-object-server-developer/.build/src/node/managers/auth/provider/cloudkit.js:131:23)
at process._tickCallback (internal/process/next_tick.js:109:7).

现在只是为了确保,我假设SyncCredentials.cloudKit(token: token) 创建一个用户如果在我的服务器上找不到该令牌并返回一个新的用户对象。我在文档中没有看到任何关于创建新用户与验证现有用户的内容。

更新

我仔细检查了我与 iCloud 的所有连接,确保在我的 configuration.yml 文件中找到的 key_id 是正确的,并且我的密钥与我在 iCloud 容器中的密钥匹配。

现在我得到一个不同的错误。 :)

2017-07-12T01:12:54.801Z - warn: auth.cloudkit: Handle request failed with: TypeError: Cannot read property 'reason' of undefined

2017-07-12T01:12:54.809Z - warn: [services] internal error: TypeError: Cannot read property 'reason' of undefined
at signedRequest.then.catch.err (/usr/lib/nodejs/realm-object-server-developer/.build/src/node/managers/auth/provider/cloudkit.js:86:11)
at process._tickCallback (internal/process/next_tick.js:109:7).

【问题讨论】:

标签: realm realm-mobile-platform


【解决方案1】:

根据the docs的说法,如果之前不存在,则应该创建帐户

如果凭据有效,则授予用户访问 Realm 的权限 对象服务器。如果凭据是,则会创建一个新的用户帐户 未与现有帐户关联。

我猜这是 configuration.yml 中的 private_key_path 的问题。尝试将 .pem 文件移动到另一个位置,看看是否有任何变化。

另外,修改配置文件后记得重启服务器。

【讨论】:

猜你喜欢
  • 2015-02-10
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2021-04-05
  • 1970-01-01
  • 1970-01-01
  • 2020-01-15
  • 1970-01-01
相关资源
最近更新 更多