【问题标题】:making authenticated api calls from gaej从 gaej 进行经过身份验证的 api 调用
【发布时间】:2012-09-17 08:37:57
【问题描述】:

我想从 google app engine 应用程序访问 google AuditService api。用户已经通过 google 凭据使用 UserService 登录到我的应用程序。

有没有一种方法可以在不需要用户重新验证我的应用程序的情况下进行经过身份验证的调用。

AuditService service = new AuditService("userEmail", "password", "domain name", "application name");

在上面的调用中,我没有用户电子邮件和密码,但我有 user 对象,当用户第一次登录到我的应用程序时,我使用 UserService 获得。使用此 user 对象的任何方式进行经过身份验证的调用?

【问题讨论】:

    标签: java google-app-engine google-api google-apps


    【解决方案1】:

    看起来您可以通过存储和提供身份验证令牌而不是用户凭据来做到这一点。在第一个请求中,正常进行用户名/密码身份验证,然后使用service.getAuthToken(...) 生成授权令牌。将该令牌与您的用户模型一起存储。对于后续请求,不要使用获取用户凭据的 AuditService 构造函数,而是使用省略它们的构造函数:AuditService(domain, applicationName)。构造完成后,调用service.setUserToken(token) 以提供存储的令牌。然后,您应该能够发出经过身份验证的请求。请务必处理将由无效/过期令牌引发的 AuthenticationExceptions。

    【讨论】:

    • 问题是使用用户对象,当用户登录到我的应用程序时得到的。但似乎用户对象无法提供太多身份验证信息。所以我必须做 Oauth Dance
    猜你喜欢
    • 2016-10-19
    • 2019-09-25
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-12-31
    • 1970-01-01
    • 1970-01-01
    • 2017-12-08
    相关资源
    最近更新 更多