Realm Blog

Realm ObjC & Swift 2.9: ユーザー名指定のアクセス権の変更、ユーザー検索、不具合の修正

Realm Objective‑CおよびRealm Swift 2.9をリリースしました。 このバージョンには新機能としてユーザー名を指定してアクセス権の変更、管理者の機能としてRealm Object Serverのユーザー検索、その他多数の改善の不具合の修正を含みます。詳しくは下記をご覧ください。

ユーザー名を指定してアクセス権の変更

Realm Object Serverにユーザーを登録している場合はアクセス権の変更をユーザー名に対して行えるようになりました。

let permission = SyncPermissionValue(realmPath: realmPath,
                                     username: "[email protected]",
                                     accessLevel: .write)
user.applyPermission(permission) { error in
  // ...
}

ユーザー検索

管理者ユーザーはRealm Object Serverに登録されているユーザーの情報を取得できるようになりました。現在はユーザー名からユーザーIDを取得できます。今後、さらに取得できる情報は増える予定です。

let targetUserIdentity = "[email protected]"
adminUser.retrieveInfo(forUser: targetUserIdentity, identityProvider: .usernamePassword) { (userInfo, error) in
  guard let userInfo = userInfo else {
    return
  }
  print("The user's ROS identity is \(userInfo.identity)")
}

ログインシステムの改善

別々の認証サーバーで作られた同じIDを持つユーザーを作成することと、複数の異なるRealm Object Serverにログインできるようになりました。URLが同じサーバーの異なるエイリアスである場合、各ユーザーは引き続き別々のものとして扱われます(たとえば、それぞれが同期したRealmを独自のコピーを持っているなど)。

管理者トークンを使用してユーザーを作成する場合は、logIn()メソッドを呼び出す際に認証サーバーのURLを指定することを強く推奨します。このサーバーのURLは、将来のリリースではすべてのユーザータイプに対して必須となります。

その他の改善

  • 1つ以上のListプロパティを含むSwiftオブジェクトをインスタンス化する際のパフォーマンスが向上しました。

不具合の修正

  • ネストしたListに対してList.descriptionが正しい型を返すように修正されました。
  • Object.shouldIncludeInDefaultSchema()falseを返すオブジェクトをネストしたプロパティに’保持している場合に正しく初期化されるように修正されました。
  • RLMArrayのプロパティにselfを代入した際に要素がクリアさないように修正しました。

お読みいただきありがとうございます。 Realmで素晴らしいアプリケーションを作りましょう!お困りの際はStack Overflow(日本語)Slack(日本語)Twitter(日本語)GitHub(英語)でご相談ください。


Realm Team

At Realm, our mission is to help developers build better apps faster. We provide a unique set of tools and platform technologies designed to make it easy for developers to build apps with sophisticated, powerful features — things like realtime collaboration, augmented reality, live data synchronization, offline experiences, messaging, and more.

Everything we build is developed with an eye toward enabling developers for what we believe the mobile internet evolves into — an open network of billions of users and trillions of devices, and realtime interactivity across them all.

記事の更新情報を受け取る