如何使用Google API为userUsageReport解决“权限不足”问题?

问题描述:

我正在尝试编写一个Python脚本来检查用户帐户是否启用了两步验证。如何使用Google API为userUsageReport解决“权限不足”问题?

作为一个起点,我使用https://developers.google.com/admin-sdk/reports/v1/quickstart/python上提供的快速启动脚本。我按照说明操作,示例代码按预期工作。

我再添加以下行的示例代码后:

results = service.userUsageReport().get(userKey='[email protected]', date='2016-08-02', parameters='accounts:is_2sv_enrolled').execute() 

却出现“权限不足”退回。

为了清楚起见,我将“[email protected]”替换为对我的组织有效的电子邮件地址:)。

我已经仔细检查了所使用的凭据,事实上,如果我使用基于Web的API Explorer和用于运行脚本的相同帐户,它的工作原理。

我不明白为什么调用activities().list()正在工作,但userUsageReport().get()不是。

我解决了这个问题。

userUsageReport需要添加使用范围,具体为:

https://www.googleapis.com/auth/admin.reports.usage.readonly

由于快速入门仅供参考审计范围:

https://www.googleapis.com/auth/admin.reports.audit.readonly

这就是为什么我得到错误。