В GAE, там способ узнать, является ли Пользователь администратором?
В то время как is_current_user_admin()
показывает, является ли текущий пользователь администратором, я хотел бы знать, существует ли способ обнаружить если данный User
объект для администратора или не (например, гипотетическое User.is_admin()
функция).
Спасибо за чтение.
Brian
К сожалению, модель User не содержит информация о том, является ли пользователь администратором.
Если ваш список администраторов меняется нечасто, вы можете написать свою собственную функцию is_admin ()
, которая проверяет, соответствует ли значение User.user_id ()
одному из ваших учетные записи администраторов. Например:
ADMIN_USER_IDS = ['id1', 'id2', ...] # manually populated list
def is_admin(user):
return user.user_id() in ADMIN_USER_IDS
Это невозможно.
Вы можете создать класс-оболочку для users.User и отслеживать, был ли этот пользователь администратором на момент последнего входа в систему. (Вы не можете определить, был ли данный пользователь пользователь является в настоящее время администратором, если только этот пользователь в настоящее время не является клиентом.)
Использование статуса администратора Google App Engine несколько ограничивает - например, что если вы хотите создать новую группу пользователей с привилегиями, которые выше, чем обычно, но не настолько, как у администратора? Лучше не объединять привилегии в вашем приложении с привилегиями в Консоли администрирования.