我正在尝试使用Python API从Google Security Center检索结果。我已经安装了python库,设置了一个服务帐户,生成了一个密钥,当我试图获得查找或任何客户端函数时,我会得到以下错误:
Traceback (most recent call last):
File "./find.py", line 12, in <module>
finding_result_iterator = client.list_findings(all_sources)
File "/usr/local/lib/python3.6/site-packages/google/cloud/securitycenter_v1/gapic/security_center_client.py", line 1532, in list_findings
self.transport.list_findings,
AttributeError: 'str' object has no attribute 'list_findings'
我使用的是下面的代码示例:https://cloud.google.com/security-command-center/docs/how-to-api-list-findings
使用Python 3.6,我在客户端创建了json密钥文件和我的组织id。知道为什么我不能让任何客户端函数工作吗?
我将传递API密钥作为像这样的身份验证的参数
client = securitycenter.SecurityCenterClient("gcp-sc.json")
如果您有一个名为gcp-sc.json
的文件,其中包含Google凭据数据,则
- 将环境变量
GOOGLE_APPLICATION_CREDENTIALS
设置为指向该路径,然后在没有配置的情况下初始化客户端(SecurityCenterClient()
(,它将获取该路径 - 或者,如果您需要显式地命名文件,
SecurityCenterClient.from_service_account_json('gcp-sc.json')
应该可以做到这一点
您还可以将自定义凭据对象(请参阅文档(作为SecurityCenterClient(credentials=...)
传入