You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
feat: Updated the KMS auth policies created by the module and DA to now scope them to the exact KMS Key ID. Previously auth policies were scoped to the whole KMS instance. This change has been implemented in a way where it will create the new auth policy first before destroying the old one to ensure there is no disruption to every day operations.<br>- updated the configuration in the DA that is used to stored failed events in a COS bucket to now use the direct COS endpoint by default (previously it was using the public endpoint). This change is done as an update in place. (#313)
|[ibm_en_integrations.en_integrations](https://registry.terraform.io/providers/IBM-Cloud/ibm/latest/docs/data-sources/en_integrations)| data source |
94
-
|[ibm_iam_account_settings.iam_account_settings](https://registry.terraform.io/providers/IBM-Cloud/ibm/latest/docs/data-sources/iam_account_settings)| data source |
95
94
96
95
### Inputs
97
96
@@ -112,14 +111,15 @@ To create service credentials, access the Event Notifications service, and acces
112
111
| <aname="input_root_key_id"></a> [root\_key\_id](#input\_root\_key\_id)| The key ID of a root key, existing in the KMS instance passed in `var.existing_kms_instance_crn`, which will be used to encrypt the data encryption keys which are then used to encrypt the data. Required only if `var.kms_encryption_enabled` is set to `true`. |`string`|`null`| no |
113
112
| <aname="input_service_credential_names"></a> [service\_credential\_names](#input\_service\_credential\_names)| The mapping of names and roles for service credentials that you want to create for the Event Notifications instance. |`map(string)`|`{}`| no |
114
113
| <aname="input_service_endpoints"></a> [service\_endpoints](#input\_service\_endpoints)| Specify whether you want to enable public, or both public and private service endpoints. Possible values: `public`, `public-and-private`|`string`|`"public-and-private"`| no |
115
-
| <aname="input_skip_en_cos_auth_policy"></a> [skip\_en\_cos\_auth\_policy](#input\_skip\_en\_cos\_auth\_policy)|Whether an IAM authorization policy is created for your Event Notifications instance to interact with your Object Storage bucket. Set to `true`to use an existing policy. Ignored if `cos_integration_enabled` is set to `false`. |`bool`|`false`| no |
116
-
| <aname="input_skip_en_kms_auth_policy"></a> [skip\_en\_kms\_auth\_policy](#input\_skip\_en\_kms\_auth\_policy)| Set to `true` to skip the creation of an IAM authorization policy that permits all Event Notifications instances in the resource group to read the encryption key from the KMS instance. If set to `false`, specify a value for the KMS instance in the `existing_kms_instance_guid` variable. In addition, no policy is created if `kms_encryption_enabled` is set to `false`. |`bool`|`false`| no |
114
+
| <aname="input_skip_en_cos_auth_policy"></a> [skip\_en\_cos\_auth\_policy](#input\_skip\_en\_cos\_auth\_policy)|Set to `true` to skip the creation of an IAM authorization policy that permits the Event Notifications instance `Object Writer` and `Reader` access to the given Object Storage bucket. Ignored if `cos_integration_enabled` is set to `false`. |`bool`|`false`| no |
115
+
| <aname="input_skip_en_kms_auth_policy"></a> [skip\_en\_kms\_auth\_policy](#input\_skip\_en\_kms\_auth\_policy)| Set to `true` to skip the creation of an IAM authorization policy that permits the Event Notifications instance to read the encryption key from the KMS instance. If set to `false`, a value must be passed for the KMS instance and key using inputs `existing_kms_instance_crn` and `root_key_id`. In addition, no policy is created if `kms_encryption_enabled` is set to `false`. |`bool`|`false`| no |
117
116
| <aname="input_tags"></a> [tags](#input\_tags)| The list of tags to add to the Event Notifications instance. |`list(string)`|`[]`| no |
118
117
119
118
### Outputs
120
119
121
120
| Name | Description |
122
121
|------|-------------|
122
+
| <aname="output_account_id"></a> [account\_id](#output\_account\_id)| The Event Notifications account ID. |
123
123
| <aname="output_crn"></a> [crn](#output\_crn)| The Event Notifications instance CRN. |
124
124
| <aname="output_event_notification_instance_name"></a> [event\_notification\_instance\_name](#output\_event\_notification\_instance\_name)| The name of the Event Notifications instance. |
125
125
| <aname="output_guid"></a> [guid](#output\_guid)| The globally unique identifier of the Event Notifications instance. |
description="Allow EN instance with GUID ${ibm_resource_instance.en_instance.guid} `Object Writer` and `Reader` access to the COS instance with GUID ${local.existing_cos_instance_guid}."
description="Allow Event Notification instance ${ibm_resource_instance.en_instance.guid} to read from the ${local.kms_service} instance ${local.existing_kms_instance_guid}"
141
+
description="Allow Event Notifications instance ${ibm_resource_instance.en_instance.guid} to read the ${local.kms_service} key ${var.root_key_id} from instance ${local.existing_kms_instance_guid}"
142
+
resource_attributes {
143
+
name="serviceName"
144
+
operator="stringEquals"
145
+
value=local.kms_service
146
+
}
147
+
resource_attributes {
148
+
name="accountId"
149
+
operator="stringEquals"
150
+
value=local.account_id
151
+
}
152
+
resource_attributes {
153
+
name="serviceInstance"
154
+
operator="stringEquals"
155
+
value=local.existing_kms_instance_guid
156
+
}
157
+
resource_attributes {
158
+
name="resourceType"
159
+
operator="stringEquals"
160
+
value="key"
161
+
}
162
+
resource_attributes {
163
+
name="resource"
164
+
operator="stringEquals"
165
+
value=var.root_key_id
166
+
}
167
+
# Scope of policy now includes the key, so ensure to create new policy before
168
+
# destroying old one to prevent any disruption to every day services.
169
+
lifecycle {
170
+
create_before_destroy=true
171
+
}
152
172
}
153
173
154
174
# workaround for https://github.com/IBM-Cloud/terraform-provider-ibm/issues/4478
0 commit comments