Google Security Center Python Ошибка API - PullRequest
0 голосов
/ 05 марта 2020

Я пытаюсь получить данные из Центра безопасности Google, используя Python API. Я установил библиотеки 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 в клиенте create и идентификатор моей организации. Есть идеи, почему я не могу заставить работать все клиентские функции?

1 Ответ

0 голосов
/ 05 марта 2020

Я передаю ключ 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=...)

...