0

我使用 Goolge openid connect 在我的应用程序中对用户进行身份验证,因为 openid 2.0 已被 google 弃用。

当我发出 Google openid 连接请求时,我会获得访问令牌,从中获取用户详细信息并将用户电子邮件保存在应用程序会话中。所以我没有在我的登录方法中使用 UserService。

当我尝试以下代码时,这种方法不提供我登录的用户详细信息,

UserService userService=UserServiceFactory.gerUserService();
User user=userService.getCurrentUser();

在上面的代码中,即使用户通过 openid connect 登录到我的应用程序后,我也会将用户设为 null。

所以问题是,我无法注销用户,即使从 Google 注销后,用户也没有从我的应用程序中注销。用户电子邮件在应用程序会话中可用,直到用户关闭浏览器。

4

1 回答 1

1

您需要确保页面已设置为登录:在您的 app.yaml 中是必需的。否则它似乎发送 NULL 因为用户没有明确授予您的页面权限以查看比电子邮件更多的信息。

于 2014-08-01T12:48:10.087 回答