-
Notifications
You must be signed in to change notification settings - Fork 4.7k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
azurerm_fluid_relay_server
- add support for customer_managed_key
#27581
Conversation
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Thanks @mbfrahry! This looks good, could you take a look at the suggestions left in-line?
customerManagedKey.KeyVaultKeyID = pointer.From(input.CustomerManagedKeyEncryption.KeyEncryptionKeyUrl) | ||
} | ||
if input.CustomerManagedKeyEncryption.KeyEncryptionKeyIdentity != nil && input.CustomerManagedKeyEncryption.KeyEncryptionKeyIdentity.UserAssignedIdentityResourceId != nil { | ||
customerManagedKey.UserAssignedIdentityId = pointer.From(input.CustomerManagedKeyEncryption.KeyEncryptionKeyIdentity.UserAssignedIdentityResourceId) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
We might want to parse the user assigned identity that we're getting back from the API here so that we can catch any casing inconsistencies
customerManagedKey.UserAssignedIdentityId = pointer.From(input.CustomerManagedKeyEncryption.KeyEncryptionKeyIdentity.UserAssignedIdentityResourceId) | |
if v := pointer.From(input.CustomerManagedKeyEncryption.KeyEncryptionKeyIdentity.UserAssignedIdentityResourceId); v != "" { | |
id, err := commonids.ParseUserAssignedIdentity(v) | |
if err != nil { | |
return err | |
} | |
customerManagedKey.UserAssignedIdentityId = id.ID() | |
} |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Good shout! Done!
customerManagedKey := CustomerManagedKey{} | ||
|
||
if input.CustomerManagedKeyEncryption.KeyEncryptionKeyUrl != nil { | ||
customerManagedKey.KeyVaultKeyID = pointer.From(input.CustomerManagedKeyEncryption.KeyEncryptionKeyUrl) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Same here
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Thanks @mbfrahry, other than the two minor comments about returning nil
when we error LGTM 🦐
if v := pointer.From(input.CustomerManagedKeyEncryption.KeyEncryptionKeyIdentity.UserAssignedIdentityResourceId); v != "" { | ||
id, err := commonids.ParseUserAssignedIdentityID(v) | ||
if err != nil { | ||
return []CustomerManagedKey{}, err |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Same here
return []CustomerManagedKey{}, err | |
return nil, err |
if v := pointer.From(input.CustomerManagedKeyEncryption.KeyEncryptionKeyURL); v != "" { | ||
id, err := commonids.ParseKeyVaultID(v) | ||
if err != nil { | ||
return []CustomerManagedKey{}, err |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Since we're error'ing here we should return nil
instead of data that is valid
return []CustomerManagedKey{}, err | |
return nil, err |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Done!
I'm going to lock this pull request because it has been closed for 30 days ⏳. This helps our maintainers find and focus on the active contributions. |
Community Note
Description
This PR adds support for encryption through a
customer_managed_key
PR Checklist
For example: “
resource_name_here
- description of change e.g. adding propertynew_property_name_here
”Changes to existing Resource / Data Source
Testing
Change Log
Below please provide what should go into the changelog (if anything) conforming to the Changelog Format documented here.
azurerm_fluid_relay_server
- add support forcustomer_managed_key
[GH-00000]This is a (please select all that apply):
Related Issue(s)
Fixes #0000
Note
If this PR changes meaningfully during the course of review please update the title and description as required.