2012-04-03 56 views
2

我需要一个唯一的数据存储区密钥,用于通过openid与Google应用程序引擎的Python 2.7运行时认证的用户。从联合身份标识生成唯一的数据存储区密钥

我应该使用User.federated_identity()还是User.federated_provider() + User.federated_identity()

换句话说,User.federated_identity()对于所有供应商或只有一个特定的供应商是唯一的吗?

回答

2

User.federated_identity()“返回用户的OpenID标识符”,根据定义(它是唯一标识用户的URL)是唯一的。

+0

感谢您回复尼克。我对GAE文档感到困惑,它指出User.user_id()将针对非Google帐户返回None。至少在我最初的(云)测试中,它似乎会为所有开放标识提供商返回一个值。由于我使用的是“.user_id()”或“.federated_id()”,所以我从来没有看到实际的federated_id值。当我在开发服务器上使用user_id时,我将逻辑改为了user_id,否则将federated_id改为逻辑,现在我可以看到它们显然是唯一的。 – 2012-04-05 07:54:12

相关问题