我正在尝试使用Realm Mobile Platform来确定它是否适合即将推出的项目。
我正在使用服务器管理员用户登录我的示例应用程序,并通过在SyncConfiguration
对象中提供不同的路径,我可以在本地和对象服务器中创建不同的域。
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);
问题在于,当我访问Web仪表板时,管理员似乎并不拥有他使用客户端应用程序创建的领域。
所以我的问题是:用户创建N拥有的Realms的最佳方式是什么,可以通过管理访问权限与其他用户共享?
答案 0 :(得分:2)
首次打开Realm文件时,SDK将向Realm Object Server的身份验证服务请求访问令牌。这将查找此路径中的文件是否已存在,如果不存在则创建该文件。在那里创建的文件只有在当前用户范围内时才会被拥有。实现这一目标的最简单方法是用户自己创建文件。
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