Я начинаю использовать пользовательские утверждения в своем проекте Firebase для реализации системы авторизации на основе ролей для моего приложения.
У меня будет скрипт firebase-admin, который будет устанавливать {admin: true}
для конкретного пользователя uid
.Это поможет мне лучше и яснее написать правила безопасности Firestore.
admin.auth().setCustomUserClaims(uid, {admin: true})
Пока все хорошо.Моя проблема в том, что мне также понадобится страница панели инструментов, чтобы сообщить, какие пользователи в настоящее время являются администраторами в моем приложении.
По сути, мне понадобится способ запрашивать / составлять список пользователей на основе пользовательских утверждений.Есть ли способ сделать это?
Из этого ответа я вижу, что это невозможно сделать.
Но, может быть, есть хотя бы способпроверить (используя Firebase Console) customUserClaims
, которые были установлены для конкретного пользователя?
Мое текущее решение будет хранить эту информацию (администраторы uid's
) в коллекции admin-users
в моем Firestoreи держите эту информацию в актуальном состоянии с любым администратором customClaims
, который я установил или отменил.Можете ли вы придумать лучшее решение?