当前位置: 首页 > 面试题库 >

使用应用程序默认凭据对服务帐户进行用户模拟

邓声
2023-03-14
问题内容

我正在尝试在具有Go的App Engine部署中使用具有域范围委托(DwD)的服务帐户。

我已经按照步骤使用Google应用程序默认凭据在App Engine中使用服务帐户。

我的代码在我的开发机器上本地运行,但是我一直坚持从域中检索实际数据。

我正在使用Admin SDK。在“将域范围的权限委派给您的服务帐户”部分下,它说我“服务帐户需要模拟其中一个用户来访问Admin SDK
Directory API”。

我浏览了有关继续使用服务帐户和用户模拟的文档,并且还仔细研究了源代码。它无处表明我可以在哪里输入用户的电子邮件地址/身份以进行模拟。

这是我得到的错误:

googleapi: Error 404: Domain not found., notFound

源代码确实显示了一些线索,但是当尝试使用“应用程序默认凭据”以外的其他内容时,我遇到了其他障碍。

有人有什么主意吗?提前致谢。


问题答案:

似乎对于Admin
SDK,我需要询问用户(管理员)访问目录API的权限。这与其他API完全不同,在其他API中,我仅设置用户电子邮件地址即可访问指定用户的数据。

我想这是可以理解的,因为Admin SDK是一个功能更强大的API,不仅影响单个用户,而且影响域。



 类似资料:
  • 我正在尝试在 Go 应用引擎部署上使用具有域范围委派 (DwD) 的服务帐户。 我已按照使用 Google 应用程序默认凭据的步骤将服务帐户与应用引擎配合使用。 我让代码在我的开发计算机上本地运行,但我被困在从我的域中检索实际数据。 我用的是Admin SDK。在“向您的服务帐户授予域范围的权限”一节中,它说我的“服务帐户需要模拟其中一个用户来访问Admin SDK Directory API”。

  • 我有一个服务帐户,并且我正在向其中一个真实用户授予此服务帐户上的“服务帐户用户”角色。用户已将“应用程序默认凭据”设置为其配置的一部分,以避免每次运行时出现登录屏幕。我不确定此用户运行操作只有服务帐户才能访问的某些资源的代码的最佳方式是什么。出于安全原因,我不想使用服务帐户密钥 JSON 文件。我正在尝试以下代码 我收到错误:属性错误:“凭据”对象没有属性“with_subject”

  • 我当前正在尝试访问云API,但收到以下错误:

  • 我正在构建一个需要读取普通Gmail收件箱(不是域的一部分)的Web服务。 代码: 错误: 我看不出这有什么原因不起作用,但读完这篇文章后,你似乎不能在个人@gmail帐户上使用服务帐户凭据。有谁知道这是真的还是我做错了什么? 感谢您的帮助! 更新 如果我将更改为,我可以查看邮件,但无法修改标签,这是我的要求。

  • 我有一个使用OAuth客户端从GDrive文件导出文本的脚本,它运行得非常好- 但是每次都要通过OAuth流是一件痛苦的事情,因为只有我在使用这个脚本,所以我想简化一些事情,使用一个服务帐户来代替它,从这篇文章开始- Google Drive API Python服务帐户示例 我的新服务帐户脚本执行完全相同的操作,如下所示- 但是当我为同一个运行它时,我会得到以下结果- 感觉服务帐户脚本正在通过身