java - 在具有权限的 Realm 对象服务器上创建新用户 Realm 的正确方法

标签 java android realm realm-mobile-platform realm-object-server

我正在试用 Realm Mobile Platform 以确定它是否适合即将开展的项目。

我使用服务器管理员用户登录我的示例应用程序,通过在 SyncConfiguration 对象中提供不同的路径,我能够在本地和对象服务器中创建不同的 Realm 。

    String realmUrl = String.format("realm://%1$s:%2$s/my_realm_name", OBJECT_SERVER_IP, BASE_PORT);
    SyncConfiguration syncConfiguration = new SyncConfiguration.Builder(SyncUser.currentUser(), realmUrl).build();
    Realm realm = Realm.getInstance(syncConfiguration);

问题是,当我访问网络仪表板时,管理员似乎不拥有他使用客户端应用程序创建的 Realm 。
所以我的问题是:用户创建 N 个拥有的 Realm 的最佳方式是什么,这些 Realm 可以通过管理访问权限共享给其他用户?

最佳答案

当第一次打开 Realm 文件时,SDK 会向 Realm 对象服务器的身份验证服务请求访问 token 。这将查找此路径中的文件是否已存在,如果不存在则创建它。在那里创建的文件只有在当前用户的范围内才会被拥有。实现此目的的最简单方法是用户自行创建文件。

as user ID "userA":
  /~/my_realm_name     => /userA/my_realm_name => owned
  /userA/my_realm_name => /userA/my_realm_name => owned
  /userB/my_realm_name => fails (no permissions)
  /my_realm_name       => fails (no permissions)

as user ID "admin" with administrator privileges:
  /~/my_realm_name     => /admin/my_realm_name => owned
  /userA/my_realm_name => /userA/my_realm_name => unowned
  /userB/my_realm_name => /userA/my_realm_name => unowned
  /my_realm_name       => /my_realm_name       => unowned

关于java - 在具有权限的 Realm 对象服务器上创建新用户 Realm 的正确方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43902696/

相关文章:

ios - UITableView 中的搜索栏用于 Realm 对象

ios - Realm.io - 从不正确的线程快速访问的 Realm

java - 关于java编程中内聚性的探究

android - 应用程序安装失败 - INSTALL_FAILED_VERIFICATION_FAILURE

java - 由 : java. lang.ClassNotFoundException 引起:日志

android - 来自 git 的 Linphone Android 缺少 R.raw.rootca(ubuntu 和 win7)

android - AppBarLayout with RecyclerView 可以在不让 RecyclerView 过度滚动的情况下工作吗?

ios - Swift:如何在部署中正确服务 Realm

java - 黑莓:调用计算器并检索值?

java - 将 HashMap<String, String> 转换为 HashMap<String, List<String>>()