2

我现在正在使用 Google App Engine 的默认用户服务进行身份验证。我希望能够存储用户的加入日期(即用户成为我的网络应用程序成员的时间),并且能够在用户行为不端时禁止用户使用我的应用程序。

我知道我需要一个额外的模型来存储这些信息:

class User_Info(db.model):
  user = db.UserProperty()
  join_date = db.DateTimeProperty(auto_now_add=True)
  banned = db.BooleanProperty(False)

但我不明白:有没有办法在新用户“注册”我的应用程序(存储加入日期)或登录(检查用户是否被禁止)时获得回调?

我想到的一种方法是将中间目标 URL 发送到users.create_login_url(),这将检查关联的 User_Info 实例是否存在。如果是这样,它将检查被禁止的标志。如果没有,它将创建一个 user_info 实例并存储加入日期。然后它将重定向到实际的目标网址。

有更好的解决方案吗?

请注意,我将来会切换到联合身份验证模型,并希望有一个在我切换时可以工作的解决方案。

谢谢!

4

1 回答 1

1

这是正确的做法。

于 2012-07-17T03:18:43.300 回答