在 Bigquery 中获取用户的电子邮件 ID

Getting the E-mail id of user in Bigquery

我正在使用 Bigquery Java API。对于 Bigquery 服务的授权,我正在使用 Google OAuth 2。0.My 问题是:- 如何获取在同意屏幕上授予访问权限的用户的电子邮件 ID?

我找不到与之相关的任何内容。是否可以获取用户的电子邮件 ID。 有人可以帮忙吗?
提前致谢:)

刚刚运行

SELECT CURRENT_USER()

和这个returns当前用户的电子邮件

您可以在手册中找到这个以及更多功能:https://cloud.google.com/bigquery/query-reference

除了Pentium10的建议外,您还可以获得运行特定工作/查询的用户的用户电子邮件;它在作业的 user_email 属性 中。您可以通过使用 bq 来查看:

$ bq show --format=prettyjson -j project_id:job_id | grep user_email

其中 project_id:job_id 是您正在寻找的工作的项目和工作 ID。

如果您是项目管理员或者您是第一个 运行 这份工作的人,这仅适用于获取用户电子邮件。

作为 OAuth 流程的一部分,您应该能够获取用户的电子邮件地址。它看起来像是您在此过程中收到的 JWT 的一部分:

https://developers.google.com/identity/protocols/OpenIDConnect#obtainuserinfo

如果您使用特定语言的客户端库,该客户端库可能支持解码 JWT。