Realm JS получает записи, принадлежащие пользователю с правами администратора - PullRequest
0 голосов
/ 24 октября 2018

Я занимаюсь разработкой приложения, в котором я использую Realm JS с точными разрешениями.Я думаю, что это действительно огромная функция, и она намного лучше, чем использование разделенных областей.Я успешно реализовал разрешение на уровне записей, поэтому у меня есть одна таблица с разными записями, принадлежащими разным пользователям.Теперь я пытаюсь получить на стороне сервера и с учетными данными администратора все записи данной таблицы, принадлежащие конкретному пользователю.Это возможно?Я не смог найти ничего полезного в документах

1 Ответ

0 голосов
/ 25 октября 2018

Вариант 1 - фильтр по пользователю

Этот параметр зависит от того, как настроены ваши пользовательские роли и как они применяются к объектам.Если вы используете роль __User по умолчанию, созданную для каждого пользователя, и создаете для нее свои разрешения, при условии, что у вас есть userId, вы можете запросить разрешения для объекта, чтобы найти их у конкретного пользователя.

например, получить первое разрешение на объект

let permission = object.permissions[0];

Имя роли будет:

let roleName = permission.role.name

roleName будет в формате '__User: Id'

Таким образом, теоретически вы можете запросить его следующим образом (без проверки):

realm.objects('YourObject').filtered( permissions.role.name == '__User: $ {id} ');.

Вариант 2 - вход в систему как пользователь

Другой вариант, и то, что я делаю, это вход в систему как пользователь,Я использую JWT Auth, поэтому мне не нужен пароль.Я генерирую токен JWT для пользователя и логин.Затем я могу открыть область как этот пользователь, и будут доступны только записи этого пользователя.

...