Spec-Zone.ru › Chef 17

Ключ сервисного аккаунта Google

[править на GitHub]

Синтаксис

Для проверки ресурса Google ServiceAccountKey используется google_service_account_key

Примеры

google_service_account_keys(project: 'chef-gcp-inspec', service_account: "display-name@project-id.iam.gserviceaccount.com").key_names.each do |sa_key_name|
	describe google_service_account_key(project: 'chef-gcp-inspec', service_account: "display-name@project-id.iam.gserviceaccount.com", name: sa_key_name.split('/').last) do
		it { should exist }
		its('key_type') { should_not cmp 'USER_MANAGED' }
	end
end

Проверка, что ключ сервисного аккаунта GCP проекта имеет ожидаемый алгоритм ключа

describe google_service_account_key(name: "projects/sample-project/serviceAccounts/test-sa@sample-project.iam.gserviceaccount.com/keys/c6bd986da9fac6d71178db41d1741cbe751a5080" ) do
  its('key_algorithm') { should eq "KEY_ALG_RSA_2048" }
end

Свойства

Свойства, к которым можно получить доступ из ресурса google_service_account_key:

name
Имя ключа.
private_key_type
Формат вывода ключа сервисного аккаунта.

Возможные значения:

  • TYPE_UNSPECIFIED
  • TYPE_PKCS12_FILE
  • TYPE_GOOGLE_CREDENTIALS_FILE
key_algorithm
Указывает алгоритм ключа.

Возможные значения:

  • KEY_ALG_UNSPECIFIED
  • KEY_ALG_RSA_1024
  • KEY_ALG_RSA_2048
private_key_data
Данные закрытого ключа. Кодировка Base-64.
public_key_data
Данные открытого ключа. Кодировка Base-64.
valid_after_time
Ключ может быть использован только после этой даты.
valid_before_time
Ключ может быть использован только до этой даты.
key_type
Указывает тип ключа.

Возможные значения:

  • KEY_TYPE_UNSPECIFIED
  • USER_MANAGED
  • SYSTEM_MANAGED
service_account
Имя сервисного аккаунта.
path
Полное имя файла, который будет содержать закрытый ключ сервисного аккаунта. Управление этим файлом зависит от параметра sync_file. Путь к файлу должен быть абсолютным.

Разрешения GCP

Убедитесь, что API «Управление идентификацией и доступом (IAM)» https://console.cloud.google.com/apis/library/iam.googleapis.com/ включен для текущего проекта.

© Chef Software, Inc.
Licensed under the Creative Commons Attribution 3.0 Unported License.
The Chef™ Mark and Chef Logo are either registered trademarks/service marks or trademarks/servicemarks of Chef, in the United States and other countries and are used with Chef Inc's permission.
We are not affiliated with, endorsed or sponsored by Chef Inc.
https://docs.chef.io/inspec/resources/google_service_account_key/

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API