Google app engine 谷歌应用引擎-了解用户是否是管理员

Google app engine 谷歌应用引擎-了解用户是否是管理员,google-app-engine,Google App Engine,在中,是否有办法确定a是否是管理员 虽然可以显示当前用户是否为管理员,但我想知道是否有方法可以发现给定的用户对象是否为管理员(例如,假设的用户.is_admin()函数) 谢谢你的阅读 Brian不幸的是,该模型不包含有关用户是否为管理员的任何信息 如果管理员列表不经常更改,则可以编写自己的is_admin()函数,检查该值是否与管理员的某个帐户对应。例如: ADMIN_USER_IDS = ['id1', 'id2', ...] # manually populated list def i

在中,是否有办法确定a是否是管理员

虽然可以显示当前用户是否为管理员,但我想知道是否有方法可以发现给定的
用户
对象是否为管理员(例如,假设的
用户.is_admin()
函数)

谢谢你的阅读

Brian

不幸的是,该模型不包含有关用户是否为管理员的任何信息

如果管理员列表不经常更改,则可以编写自己的
is_admin()
函数,检查该值是否与管理员的某个帐户对应。例如:

ADMIN_USER_IDS = ['id1', 'id2', ...]  # manually populated list
def is_admin(user):
    return user.user_id() in ADMIN_USER_IDS
那是不可能的

您可以围绕users.User创建一个包装类,并跟踪该用户上次登录时是否是管理员。(除非某个用户当前是客户端,否则您无法确定该用户当前是否是管理员。)


使用GoogleAppEngine的管理员身份有点限制——例如,如果您想创建一个新用户组,其权限高于正常权限,但不如管理员权限高,该怎么办?最好不要将应用程序中的权限与管理控制台中的权限混为一谈。

这是可能的,但不是通过用户对象实现的,而且似乎只有在Java api中,而不是在python中。您需要使用:


对于python,我们可以使用
app.yaml
来配置管理访问。看

很明显,自从你接受了答案后,情况发生了变化。请看整洁的。这在Python中可用吗?这与Python
Is\u current\u user\u admin()
相同。它不允许您检查除当前用户之外的用户的管理员状态
UserService userService = UserServiceFactory.getUserService();
boolean adminUser = userService.isUserAdmin();