如何以编程方式获取GCP审核日志状态

时间:2020-02-12 15:58:36

标签: go google-cloud-platform google-cloud-iam

我正在尝试使用Golang API GetIamPolicy来获取类似于Google控制台页面(IAM /审计日志)中显示的审计日志的列表,如下所述:

https://cloud.google.com/resource-manager/reference/rest/v1/projects/getIamPolicy

如果一项服务的日志类型至少设置了一种(数据读取,数据写入或管理员读取),则GetIamPolicy将返回它,但是如果没有任何设置,则该服务将从列表中省略响应。

例如,如果我的项目具有三个服务A,B和C,并且A启用了数据读取,B启用了管理员读取,而C没有启用任何功能,则GetIamPolicy仅返回A和B

GetIamPolicyRequest结构似乎具有为此场景设计的字段(NullFieldsForceSendFields),但我无法使其工作。示例:

    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

关于如何找回丢失的服务的任何想法?

0 个答案:

没有答案