Ресурс google_dns_managed_zone
Синтаксис
Используется google_dns_managed_zone, чтобы проверить ресурс Google ManagedZone.
Ресурс бета-версии
Для этого ресурса доступны поля бета-версии. Чтобы получить доступ к этим полям, включите beta: true в конструктор ресурса.
Примеры
describe google_dns_managed_zone(project: 'chef-gcp-inspec', zone: 'example-zone') do
it { should exist }
its('dns_name') { should cmp 'dns-zone-name.com.' }
its('description') { should cmp 'example description' }
its('zone_signing_key_algorithm') { should cmp 'rsasha256' }
its('key_signing_key_algorithm') { should cmp 'rsasha512' }
end
describe google_dns_managed_zone(project: 'chef-gcp-inspec', zone: 'nonexistent') do
it { should_not exist }
end
Проверка наличия зоны GCP compute
describe google_dns_managed_zone(project: 'chef-inspec-gcp', zone: 'zone-name') do
it { should exist }
end
Проверка, что у зоны GCP DNS managed zone есть ожидаемое имя DNS
describe google_dns_managed_zone(project: 'chef-inspec-gcp', zone: 'zone-name') do
its('dns_name') { should match 'mydomain.com' }
end
Проверка, что у зоны GCP DNS managed zone есть ожидаемый сервер имен
describe google_dns_managed_zone(project: 'chef-inspec-gcp', zone: 'zone-name') do
its('name_servers') { should include 'ns-cloud-d1.googledomains.com.' }
end
Свойства
Свойства, к которым можно получить доступ из ресурса google_dns_managed_zone:
description- Изменяемая строка длиной не более 1024 символов, связанная с этим ресурсом для удобства пользователя. Не оказывает влияния на работу зоны.
dns_name- Имя DNS этой управляемой зоны, например «example.com».
dnssec_config- Настройка DNSSEC
kind- Определяет, какой тип ресурса это.
non_existence- Указывает механизм, используемый для предоставления аутентифицированных ответов об отсутствии существования. non_existence может быть обновлен только при состоянии
off.Возможные значения:
- nsec
- nsec3
state- Указывает, включен ли DNSSEC и в каком режиме он находится.
Возможные значения:
- off
- on
- transfer
default_key_specs- Указывает параметры, которые будут использоваться для генерации начальных DnsKeys для этой ManagedZone. Если вы предоставите спецификацию для keySigning или zoneSigning, вы также должны предоставить спецификацию для другого. default_key_specs может быть обновлен только при состоянии
off.algorithm- Мемоническая строка, определяющая алгоритм DNSSEC для этого ключа.
Возможные значения:
- ecdsap256sha256
- ecdsap384sha384
- rsasha1
- rsasha256
- rsasha512
key_length- Длина ключей в битах.
key_type- Указывает, является ли это ключом подписания ключа (KSK) или ключом подписания зоны (ZSK). Ключи подписания ключей имеют установленный флаг Secure Entry Point и, при активации, будут использоваться только для подписания наборов записей ресурсов типа DNSKEY. Ключи подписания зоны не имеют установленного флага Secure Entry Point и будут использоваться для подписания всех других типов наборов записей ресурсов.
Возможные значения:
- keySigning
- zoneSigning
kind- Определяет, какой тип ресурса это.
id- Уникальный идентификатор ресурса, определенный сервером.
name- Назначенное пользователем имя для этого ресурса. Должно быть уникальным в рамках проекта.
name_servers- Делегируйте вашу managed_zone этим виртуальным серверам имен; определено сервером.
name_server_set- Необязательно указывает NameServerSet для этой ManagedZone. NameServerSet — это набор серверов DNS, на которых размещаются все ManagedZones. Большинство пользователей оставят это поле пустым.
creation_time- Время создания этого ресурса на сервере. Формат — RFC3339.
labels- Набор пар «ключ-значение» меток для назначения этой ManagedZone.
visibility- Видимость зоны: общедоступные зоны доступны в Интернете, в то время как частные зоны видны только для ресурсов Virtual Private Cloud.
Возможные значения:
- private
- public
private_visibility_config- Для частных зон набор ресурсов Virtual Private Cloud, из которых видна зона.
networks- Список VPC-сетей, которые могут видеть эту зону.
network_url- Полный URL VPC-сети для привязки. Должен быть отформатирован как
https://www.googleapis.com/compute/v1/projects/{project}/global/networks/{network}.
forwarding_config- (Только бета-версия) Наличие этого поля указывает на то, что обратное перенаправление включено для этой зоны. Значение этого поля содержит набор пунктов назначения для перенаправления.
target_name_servers- Список целевых серверов имен для перенаправления. Cloud DNS выберет лучший доступный сервер имен, если указано более одного целевого значения.
ipv4_address- IPv4-адрес целевого сервера имен.
forwarding_path- Маршрут перенаправления для этого TargetNameServer. Если не задан или
default, Cloud DNS будет принимать решения о перенаправлении на основе диапазонов адресов, т. е. адреса RFC1918 отправляются в VPC, адреса, не являющиеся RFC1918, отправляются в Интернет. При установке значенияprivate, Cloud DNS всегда будет отправлять запросы через VPC для этого целевого значенияВозможные значения:
- default
- private
peering_config- (Только бета-версия) Наличие этого поля указывает на то, что DNS-пееринг включен для этой зоны. Значение этого поля содержит сеть, с которой происходит пееринг.
target_network- Сеть, с которой необходимо выполнить пееринг.
network_url- Полный URL VPC-сети для перенаправления запросов. Должен быть отформатирован как
https://www.googleapis.com/compute/v1/projects/{project}/global/networks/{network}.
reverse_lookup- (Только бета-версия) Указывает, является ли это управляемой зоной обратного поиска. Если true, Cloud DNS будет разрешать запросы обратного поиска, используя автоматически настроенные записи для ресурсов VPC. Это относится только к сетям, указанным в
private_visibility_config. service_directory_config- (Только бета-версия) Наличие этого поля указывает на то, что эта зона поддерживается Service Directory. Значение этого поля содержит информацию, связанную с пространством имен, связанным с зоной.
namespace- Пространство имен, связанное с зоной.
namespace_url- Полный URL пространства имен Service Directory, которое должно быть связано с зоной. Игнорируется для зон видимости
public.
Разрешения GCP
Убедитесь, что для текущего проекта включен API Google Cloud DNS по адресу https://console.cloud.google.com/apis/library/dns.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_dns_managed_zone/