我想监控那些尝试超出其给定访问范围的 API 调用的 Compute Engine 服务帐号。这可以通过gcloud
命令或使用元数据服务器中的 OAuth 令牌进行手动 API 交互来实现。
以下是一个具体的例子:
- 计算实例使用常规 GCP 默认设置启动,包括默认服务帐户和默认访问范围。
- 用户登录该计算实例上的 SSH 会话并
gcloud auth list
显示活动帐户是默认服务帐户。 - 用户运行
gcloud compute instances list
。Insufficient Permission: Request had insufficient authentication scopes
由于访问范围限制,此操作失败。
但是,我在 StackDriver 中找不到与此尝试相关的任何内容。我已为、和所有服务配置了 Cloud Admin Read
Audit Data Read
Logs Data Write
。
我确实会看到成功的 API 调用的日志事件,例如,如果我删除范围限制并重复上述步骤。
我还看到了具有适当访问范围但缺乏 IAM 权限的失败 API 调用的日志事件。
但是,由于访问范围而失败的尝试没有任何效果。
有人知道这是否可能吗?