我正在寻找两种Google Apps应用程序相互通信并在彼此之间共享数据的方法。我有以下情况:
问题是:这些应用程序如何验证另一个应用程序是否使用同一用户登录Google?我会想象: - 应用程序A从Google获取一些“令牌”并将其发送到应用程序B. - 应用程序B验证此令牌对于使用
登录的同一Google帐户有效有没有办法通过Google Federated Login实现这一目标?我在这里谈论Hybrid protocol。
答案 0 :(得分:1)
这是一个简单的方法:
您可以使用公钥加密。只有两个应用程序,在我看来它是不值得的。如果你开始有更多的应用程序,公钥是有道理的。
小字:加密不保证完整性或原产地,无需额外措施。您需要采取预防措施,例如通过合并时间戳或序列号。您需要采取预防措施防止篡改,例如:带校验和。确保使用CBC和良好的初始化向量。密钥保密。
答案 1 :(得分:1)
user.user_id()
在同一用户的所有应用中始终相同。因此,您只需比较user.user_id()
返回的值即可。这是你在找什么?
注意:每个用户都具有相同的用户ID 适用于所有App Engine应用程序。如果 您的应用在公共场合使用用户ID 数据,例如将其包含在URL中 参数,你应该使用哈希 添加了“salt”值的算法 模糊了ID。公开原始ID可以 允许某人关联用户 一个应用程序中的活动 另一个,或获取用户的电子邮件 通过强制用户签名来解决问题 进入另一个应用程序。