| access_tags |
Add access management tags to the Secrets Manager instance to control access. Learn more. Only applies when creating a new Secrets Manager instance. Access tags cannot be applied to existing instances via this module as it would replace any existing access tags. |
list(string) |
[] |
no |
| allowed_network |
The types of service endpoints to set on the Secrets Manager instance. Possible values are private-only or public-and-private. Learn more. |
string |
"public-and-private" |
no |
| cbr_rules |
The context-based restrictions rule to create. Only one rule is allowed. |
list(object({ description = string account_id = string rule_contexts = list(object({ attributes = optional(list(object({ name = string value = string }))) })) enforcement_mode = string operations = optional(list(object({ api_types = list(object({ api_type_id = string })) }))) })) |
[] |
no |
| enable_event_notification |
Set to true to enable lifecycle notifications for your Secrets Manager instance by connecting an Event Notifications service. When set to true, a value must be passed for existing_en_instance_crn and existing_sm_instance_crn must be set to null. |
bool |
false |
no |
| endpoint_type |
The type of endpoint (public or private) to connect to the Secrets Manager API. The Terraform provider uses this endpoint type to interact with the Secrets Manager API and configure Event Notifications. |
string |
"public" |
no |
| existing_en_instance_crn |
The CRN of the Event Notifications service to enable lifecycle notifications for your Secrets Manager instance. |
string |
null |
no |
| existing_sm_instance_crn |
An existing Secrets Manager instance CRN. If not provided, a new instance is created. |
string |
null |
no |
| is_hpcs_key |
Set to true if the key provided through the kms_key_crn is a Hyper Protect Crypto Services key. |
bool |
false |
no |
| kms_encryption_enabled |
Set to true to control the encryption keys that are used to encrypt the data that you store in Secrets Manager. If set to false, the data that you store is encrypted at rest by using envelope encryption. For more details, go to About customer-managed keys. |
bool |
false |
no |
| kms_key_crn |
The root key CRN of a key management service like Key Protect or Hyper Protect Crypto Services that you want to use for encryption. Only used if kms_encryption_enabled is set to true. |
string |
null |
no |
| region |
The region where the instance is created. Not required if passing a value for existing_sm_instance_crn. |
string |
null |
no |
| resource_group_id |
The ID of the resource group that contains the Secrets Manager instance. |
string |
n/a |
yes |
| resource_tags |
Add user resource tags to the Secrets Manager instance to organize, track, and manage costs. Learn more. |
list(string) |
[] |
no |
| secrets |
Secret Manager secrets configurations. |
list(object({ secret_group_name = string secret_group_description = optional(string) existing_secret_group = optional(bool, false) create_access_group = optional(bool, false) access_group_name = optional(string) access_group_roles = optional(list(string)) access_group_tags = optional(list(string)) secrets = optional(list(object({ secret_name = string secret_description = optional(string) secret_type = optional(string) imported_cert_certificate = optional(string) imported_cert_private_key = optional(string) imported_cert_intermediate = optional(string) secret_username = optional(string) secret_labels = optional(list(string), []) secret_payload_password = optional(string, "") secret_auto_rotation = optional(bool, true) secret_auto_rotation_unit = optional(string, "day") secret_auto_rotation_interval = optional(number, 89) service_credentials_ttl = optional(string, "7776000") # 90 days service_credentials_source_service_crn = optional(string) service_credentials_source_service_role_crn = optional(string) custom_credentials_configurations = optional(string) custom_credentials_parameters = optional(bool, false) job_parameters = optional(object({ integer_values = optional(map(number)) string_values = optional(map(string)) boolean_values = optional(map(bool)) }), {}) }))) })) |
[] |
no |
| secrets_manager_name |
The name of the Secrets Manager instance to create |
string |
n/a |
yes |
| skip_en_iam_authorization_policy |
Set to true to skip creating an IAM authorization policy that permits all Secrets Manager instances (scoped to the resource group) an 'Event Source Manager' role to the given Event Notifications instance passed in the existing_en_instance_crn input variable. No policy is created if enable_event_notification is set to false. |
bool |
false |
no |
| skip_iam_authorization_policy |
Whether to skip creating the IAM authorization policies that are required to enable the IAM credentials engine. If set to false, policies are created that grant the Secrets Manager instance 'Operator' access to the IAM identity service, and 'Groups Service Member Manager' access to the IAM groups service. |
bool |
false |
no |
| skip_kms_iam_authorization_policy |
Whether to skip creating the IAM authorization policies that are required to enable the IAM credentials engine. If set to false, policies are created that grant the Secrets Manager instance 'Operator' access to the IAM identity service, and 'Groups Service Member Manager' access to the IAM groups service. |
bool |
false |
no |
| sm_service_plan |
The Secrets Manager plan to provision. |
string |
"standard" |
no |