go - 如何以编程方式获取 GCP 审核日志状态
问题描述
我正在尝试使用 Golang API 获取与 Google 控制台页面(IAM/审核日志)中显示的内容类似的审核日志列表,GetIamPolicy
如下所述:
https://cloud.google.com/resource-manager/reference/rest/v1/projects/getIamPolicy
如果一项服务至少设置了一种日志类型(数据读取、数据写入或管理员读取),GetIamPolicy
将返回它,但如果它没有任何设置,则从响应中省略该服务。
例如,如果我的项目有三个服务 A、B 和 C,并且 A 启用了数据读取,B 启用了管理员读取,而 C 没有启用任何内容,GetIamPolicy
则只会返回 A 和 B。
GetIamPolicyRequest
struct 似乎有为这种情况设计的字段(NullFields
和ForceSendFields
),但我无法让它工作。例子:
rb := &cloudresourcemanager.GetIamPolicyRequest{}
rb.ForceSendFields = []string{"LogType"}
rb.NullFields = []string{"LogType"}
policyOptions := &cloudresourcemanager.GetPolicyOptions{}
policyOptions.ForceSendFields = []string{"LogType"}
policyOptions.NullFields = []string{"LogType"}
policyOptions.RequestedPolicyVersion = 3
rb.Options = policyOptions
关于如何检索丢失的服务的任何想法?
解决方案
推荐阅读
- html - 角度材料 - 自动完成 - 使用组过滤结果
- c++ - 默认模板参数和部分特化
- json - 有条件地从字段 A 的数组中删除,条件是字段 B
- angular - 如何在 tsconfig.ts 中正确设置路径?
- tizen - 从 Tizen 中的数据控制器获取表的行数?数据控制器是否可以进行任何类型的 sqlite 操作?
- flutter - Flutter:“从 FlutterEngine 中分离:io.flutter.embedding.engine.FlutterEngine@99177fa”是什么意思?
- django - 为什么 Django 迁移不迁移表?
- julia - 求解线性方程组
- asp.net-mvc - 继承映射asp.net mvc
- laravel - 错误打开流失败:上传视频时权限被拒绝