Облачная платформаEvolution

cloudru_evolution_iam_api_key (Resource)


Example Usage

resource "cloudru_evolution_iam_api_key" "resource_api_key" {
name = "6c7451e7-bcf7-4636-8d2d-3f6d1d46fa8b"
description = "12f63858-73e7-40bb-b90a-9a762e1e8255"
service_account_id = "ce2f112e-cc40-4398-9fb4-1013e425eec0"
product_codes = ["edc28381-7fc3-4c88-a4b3-6f4a2b247504", "0a9c4f24-ea48-487b-818d-39bf615bc909", "f3febc9f-e09d-4138-93b2-ce8dcb16ad07", "8b45b501-843e-474b-9aab-04be4602ff98", "2f82dfb6-6086-491b-a832-8ff2bd12de61", "cc646819-55c1-43d1-87f6-873208180b4c", "7b1299b5-9bef-4096-8481-dbc75eb87bce", "a6f13209-55bb-47f5-8456-b336b017db85", "10257821-26b3-4a87-b3bf-2f34b08d81e5", "5b619829-5691-48f7-b951-fe407f513394"]
restrictions = {
ip_addresses = ["867458ec-e234-4425-a42d-a2ea7ece8b78", "c0ccf956-ad01-46fe-8403-eef80e594362", "1e1005e9-67e1-4f02-adef-22be18f30ced", "7b497eec-0996-4ef4-91ce-365d5332e267", "e3d4ae1e-3ebe-4902-ae96-506276215502", "c49824f2-654a-444d-bccc-3b63089b7a3d", "d59c38d3-e78d-4c34-9b9d-6b451519af6a", "ed5c5f7f-bad1-4fef-909c-5ddaaaf92d48", "03475c0d-7765-4cdf-8695-e6d48f136696", "f0699ae5-a98e-431f-a075-1bdf359daa96"]
time_range = {
time_slots = [{
start = 2105895937
end = 1678743029
}]
timezone = 428581916
}
}
enabled = false
# Поле expires_at является неизменяемым. При изменении значения ресурс будет пересоздан.
expires_at = "Wed, 06 May 1942 10:04:36 UTC"
# Позволяет переопределить дефолтный таймаут провайдера для определенного метода. Если нужно указать бесконечный таймаут, то нужно указать например 0s, тогда таймаута не будет.
timeouts {
create = "60m"
update = "30m"
delete = "20m"
}
# Игнорировать изменения таймаутов: это предотвращает лишние обновления ресурса при смене значений таймаутов в конфигурации
# Но следует учитывать, что метод delete в ресурсе читает значение таймаута из стейта и, если его нужно изменить, то этот блок стоит закомментировать
lifecycle {
ignore_changes = [timeouts]
}
}

Schema

Required

  • enabled (Boolean) Enabled - флаг активности API ключа.

  • name (String) Name - название API ключа.

  • product_codes (Set of String) ProductCodes - список кодов продуктов, для которых может быть применим API ключ. Все возможные варианты значения этого поля можно получить испоьзуя APIKeyProductService/List или datasource cloudru_evolution_iam_api_key_product_collection

  • service_account_id (String) ServiceAccountID - идентификатор сервисного аккаунта, для которого был выпущен API ключ.

Optional

  • description (String) Description - описание API ключа.

  • expires_at (String) ExpiresAt - дата истечения API ключа.

  • restrictions (Attributes) Restrictions - ограничения использования API ключа. (see below for nested schema)

  • timeouts (Block, Optional) (see below for nested schema)

Read-Only

  • created_at (String) CreatedAt - дата создания API ключа.

  • id (String) ID - идентификатор API ключа.

  • secret (String) Secret - секрет API ключа. Заполняется только в ответе на запрос создания API ключа.

  • updated_at (String) UpdatedAt - дата обновления API ключа.

Nested Schema for restrictions

Optional:

  • ip_addresses (List of String) IPAddresses - список разрешенных IP адресов и подсетей в формате CIDR. Может быть определено не более 100 адресов.

  • time_range (Attributes) TimeRange - временной диапазон, в который может использоваться API ключ. Может быть определено не более 24 интервалов. (see below for nested schema)

Nested Schema for restrictions.time_range

Required:

  • time_slots (Attributes List) TimeSlots - список временных слотов. (see below for nested schema)

Optional:

  • timezone (Number) Timezone - таймзона, число в диапазоне от -12 до 12.

Nested Schema for restrictions.time_range.time_slots

Required:

  • end (Number) End - конец диапазона в часах.

  • start (Number) Start - начало диапазона в часах.

Nested Schema for timeouts

Optional:

  • create (String) A string that can be parsed as a duration consisting of numbers and unit suffixes, such as «30s» or «2h45m». Valid time units are «s» (seconds), «m» (minutes), «h» (hours).

  • delete (String) A string that can be parsed as a duration consisting of numbers and unit suffixes, such as «30s» or «2h45m». Valid time units are «s» (seconds), «m» (minutes), «h» (hours). Setting a timeout for a Delete operation is only applicable if changes are saved into state before the destroy operation occurs.

  • update (String) A string that can be parsed as a duration consisting of numbers and unit suffixes, such as «30s» or «2h45m». Valid time units are «s» (seconds), «m» (minutes), «h» (hours).

Зависимости

Service account ID

Нужное значение для идентификатора сервисного аккаунта (service_account_id) можно получить из service_accounts.id датасорса cloudru_evolution_iam_service_account_collection. В target датасорса укажите customer_id или project_id, в области которого создан сервисный аккаунт.

Product codes

Коды продуктов для поля product_codes можно получить из поля products.code датасорса cloudru_evolution_iam_api_key_product_collection.