Skip to content
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

Add Managed Identity Support in Azure Disk Encryption for VMSS #27008

Open
wants to merge 12 commits into
base: main
Choose a base branch
from

Conversation

anshuljain26
Copy link
Contributor

@anshuljain26 anshuljain26 commented Jan 14, 2025

Description

Azure Disk Encryption (ADE) is adding support for using managed identity to authenticate to customer's keyvault.
As part of it, a new field (EncryptionIdentity) has been added to the VM model. By setting this field customer will be notifying ADE to use that managed identity for keyvault operations. The identity should also be explicitly assigned to the VMSS.

This PR adds a new parameter (EncryptionIdentity) to Set-AzVmssDiskEncryptionExtension cmdlet. If the parameter is present then the cmdlet will ensure that identity is assigned to the VMSS and the EncryptionIdentity field is updated.

Encryption Identity field is also updated during VMSS creation if the encryption identity is a part of the identities assigned to the vm.

Mandatory Checklist

  • SHOULD update ChangeLog.md file(s) appropriately
    • For SDK-based development mode, update src/{{SERVICE}}/{{SERVICE}}/ChangeLog.md.
      • A snippet outlining the change(s) made in the PR should be written under the ## Upcoming Release header in the past tense.
    • For autorest-based development mode, include the changelog in the PR description.
    • Should not change ChangeLog.md if no new release is required, such as fixing test case only.
  • SHOULD regenerate markdown help files if there is cmdlet API change. Instruction
  • SHOULD have proper test coverage for changes in pull request.
  • SHOULD NOT adjust version of module manually in pull request

Copy link

azure-client-tools-bot-prd bot commented Jan 14, 2025

️✔️Az.Accounts
️✔️Build
️✔️PowerShell Core - Windows
️✔️Windows PowerShell - Windows
⚠️Az.Compute
️✔️Build
️✔️PowerShell Core - Windows
️✔️Windows PowerShell - Windows
️✔️Breaking Change Check
️✔️PowerShell Core - Windows
️✔️Windows PowerShell - Windows
️✔️Signature Check
️✔️PowerShell Core - Windows
️✔️Windows PowerShell - Windows
⚠️Help Example Check
⚠️PowerShell Core - Windows
Type Cmdlet Example Line RuleName Description Extent Remediation
⚠️ New-AzVmssConfig 1 1 Unassigned_Variable New-AzVmssConfig -Location $Loc is a null-valued parameter value. -Location Assign value for $Loc.
⚠️ New-AzVmssConfig 1 1 Unassigned_Variable New-AzVmssConfig -NetworkInterfaceConfiguration $NetCfg is a null-valued parameter value. -NetworkInterfaceConfiguration Assign value for $NetCfg.
⚠️ New-AzVmssConfig 1 2 Unassigned_Variable Add-AzVmssNetworkInterfaceConfiguration -IPConfiguration $IPCfg is a null-valued parameter value. -IPConfiguration Assign value for $IPCfg.
⚠️ New-AzVmssConfig 1 3 Unassigned_Variable Set-AzVmssOsProfile -AdminUsername $adminUsername is a null-valued parameter value. -AdminUsername Assign value for $adminUsername.
⚠️ New-AzVmssConfig 1 3 Unassigned_Variable Set-AzVmssOsProfile -AdminPassword $AdminPassword is a null-valued parameter value. -AdminPassword Assign value for $AdminPassword.
⚠️ New-AzVmssConfig 1 5 Unassigned_Variable Set-AzVmssStorageProfile -ImageReferenceOffer $ImgRef.Offer is a null-valued parameter value. -ImageReferenceOffer Assign value for $ImgRef.Offer.
⚠️ New-AzVmssConfig 1 5 Unassigned_Variable Set-AzVmssStorageProfile -ImageReferenceSku $ImgRef.Skus is a null-valued parameter value. -ImageReferenceSku Assign value for $ImgRef.Skus.
⚠️ New-AzVmssConfig 1 5 Unassigned_Variable Set-AzVmssStorageProfile -ImageReferenceVersion $ImgRef.Version is a null-valued parameter value. -ImageReferenceVersion Assign value for $ImgRef.Version.
⚠️ New-AzVmssConfig 1 6 Unassigned_Variable Set-AzVmssStorageProfile -ImageReferencePublisher $ImgRef.PublisherName is a null-valued parameter value. -ImageReferencePublisher Assign value for $ImgRef.PublisherName.
⚠️ New-AzVmssConfig 1 6 Unassigned_Variable Set-AzVmssStorageProfile -VhdContainer $VHDContainer is a null-valued parameter value. -VhdContainer Assign value for $VHDContainer.
⚠️ New-AzVmssConfig 1 7 Unassigned_Variable Add-AzVmssAdditionalUnattendContent -ComponentName $AUCComponentName is a null-valued parameter value. -ComponentName Assign value for $AUCComponentName.
⚠️ New-AzVmssConfig 1 7 Unassigned_Variable Add-AzVmssAdditionalUnattendContent -Content $AUCContent is a null-valued parameter value. -Content Assign value for $AUCContent.
⚠️ New-AzVmssConfig 1 7 Unassigned_Variable Add-AzVmssAdditionalUnattendContent -PassName $AUCPassName is a null-valued parameter value. -PassName Assign value for $AUCPassName.
⚠️ New-AzVmssConfig 1 7 Unassigned_Variable Add-AzVmssAdditionalUnattendContent -SettingName $AUCSetting is a null-valued parameter value. -SettingName Assign value for $AUCSetting.
⚠️ New-AzVmssConfig 1 9 Unassigned_Variable New-AzVmss -ResourceGroupName $RGName is a null-valued parameter value. -ResourceGroupName Assign value for $RGName.
⚠️ New-AzVmssConfig 1 9 Unassigned_Variable New-AzVmss -Name $VMSSName is a null-valued parameter value. -Name Assign value for $VMSSName.
⚠️ New-AzVmssConfig 4 18 Unassigned_Variable New-AzStorageAccount -ResourceGroupName $rgname is a null-valued parameter value. -ResourceGroupName Assign value for $rgname.
⚠️ New-AzVmssConfig 4 18 Unassigned_Variable New-AzStorageAccount -Location $loc is a null-valued parameter value. -Location Assign value for $loc.
⚠️ New-AzVmssConfig 4 19 Unassigned_Variable Get-AzStorageAccount -ResourceGroupName $rgname is a null-valued parameter value. -ResourceGroupName Assign value for $rgname.
⚠️ New-AzVmssConfig 4 23 Unassigned_Variable New-AzVirtualNetwork -ResourceGroupName $rgname is a null-valued parameter value. -ResourceGroupName Assign value for $rgname.
⚠️ New-AzVmssConfig 4 23 Unassigned_Variable New-AzVirtualNetwork -Location $loc is a null-valued parameter value. -Location Assign value for $loc.
⚠️ New-AzVmssConfig 4 24 Unassigned_Variable Get-AzVirtualNetwork -ResourceGroupName $rgname is a null-valued parameter value. -ResourceGroupName Assign value for $rgname.
⚠️ New-AzVmssConfig 4 30 Unassigned_Variable New-AzVmssConfig -Location $loc is a null-valued parameter value. -Location Assign value for $loc.
⚠️ New-AzVmssConfig 4 32 Unassigned_Variable Set-AzVmssOsProfile -AdminPassword $password is a null-valued parameter value. -AdminPassword Assign value for $password.
⚠️ New-AzVmssConfig 4 37 Unassigned_Variable New-AzVmss -ResourceGroupName $rgname is a null-valued parameter value. -ResourceGroupName Assign value for $rgname.
⚠️ New-AzVmssConfig 4 39 Unassigned_Variable Get-AzVmss -ResourceGroupName $rgname is a null-valued parameter value. -ResourceGroupName Assign value for $rgname.
⚠️ New-AzVmssConfig 5 36 Mismatched_Parameter_Value_Type Set-AzVmssOsProfile -AdminPassword $adminPassword is not an expected parameter value type. -AdminPassword Use correct parameter value type. Expected Type is string. Now the type is securestring.(Command).
⚠️Windows PowerShell - Windows
Type Cmdlet Example Line RuleName Description Extent Remediation
⚠️ New-AzVmssConfig 1 1 Unassigned_Variable New-AzVmssConfig -Location $Loc is a null-valued parameter value. -Location Assign value for $Loc.
⚠️ New-AzVmssConfig 1 1 Unassigned_Variable New-AzVmssConfig -NetworkInterfaceConfiguration $NetCfg is a null-valued parameter value. -NetworkInterfaceConfiguration Assign value for $NetCfg.
⚠️ New-AzVmssConfig 1 2 Unassigned_Variable Add-AzVmssNetworkInterfaceConfiguration -IPConfiguration $IPCfg is a null-valued parameter value. -IPConfiguration Assign value for $IPCfg.
⚠️ New-AzVmssConfig 1 3 Unassigned_Variable Set-AzVmssOsProfile -AdminUsername $adminUsername is a null-valued parameter value. -AdminUsername Assign value for $adminUsername.
⚠️ New-AzVmssConfig 1 3 Unassigned_Variable Set-AzVmssOsProfile -AdminPassword $AdminPassword is a null-valued parameter value. -AdminPassword Assign value for $AdminPassword.
⚠️ New-AzVmssConfig 1 5 Unassigned_Variable Set-AzVmssStorageProfile -ImageReferenceOffer $ImgRef.Offer is a null-valued parameter value. -ImageReferenceOffer Assign value for $ImgRef.Offer.
⚠️ New-AzVmssConfig 1 5 Unassigned_Variable Set-AzVmssStorageProfile -ImageReferenceSku $ImgRef.Skus is a null-valued parameter value. -ImageReferenceSku Assign value for $ImgRef.Skus.
⚠️ New-AzVmssConfig 1 5 Unassigned_Variable Set-AzVmssStorageProfile -ImageReferenceVersion $ImgRef.Version is a null-valued parameter value. -ImageReferenceVersion Assign value for $ImgRef.Version.
⚠️ New-AzVmssConfig 1 6 Unassigned_Variable Set-AzVmssStorageProfile -ImageReferencePublisher $ImgRef.PublisherName is a null-valued parameter value. -ImageReferencePublisher Assign value for $ImgRef.PublisherName.
⚠️ New-AzVmssConfig 1 6 Unassigned_Variable Set-AzVmssStorageProfile -VhdContainer $VHDContainer is a null-valued parameter value. -VhdContainer Assign value for $VHDContainer.
⚠️ New-AzVmssConfig 1 7 Unassigned_Variable Add-AzVmssAdditionalUnattendContent -ComponentName $AUCComponentName is a null-valued parameter value. -ComponentName Assign value for $AUCComponentName.
⚠️ New-AzVmssConfig 1 7 Unassigned_Variable Add-AzVmssAdditionalUnattendContent -Content $AUCContent is a null-valued parameter value. -Content Assign value for $AUCContent.
⚠️ New-AzVmssConfig 1 7 Unassigned_Variable Add-AzVmssAdditionalUnattendContent -PassName $AUCPassName is a null-valued parameter value. -PassName Assign value for $AUCPassName.
⚠️ New-AzVmssConfig 1 7 Unassigned_Variable Add-AzVmssAdditionalUnattendContent -SettingName $AUCSetting is a null-valued parameter value. -SettingName Assign value for $AUCSetting.
⚠️ New-AzVmssConfig 1 9 Unassigned_Variable New-AzVmss -ResourceGroupName $RGName is a null-valued parameter value. -ResourceGroupName Assign value for $RGName.
⚠️ New-AzVmssConfig 1 9 Unassigned_Variable New-AzVmss -Name $VMSSName is a null-valued parameter value. -Name Assign value for $VMSSName.
⚠️ New-AzVmssConfig 4 18 Unassigned_Variable New-AzStorageAccount -ResourceGroupName $rgname is a null-valued parameter value. -ResourceGroupName Assign value for $rgname.
⚠️ New-AzVmssConfig 4 18 Unassigned_Variable New-AzStorageAccount -Location $loc is a null-valued parameter value. -Location Assign value for $loc.
⚠️ New-AzVmssConfig 4 19 Unassigned_Variable Get-AzStorageAccount -ResourceGroupName $rgname is a null-valued parameter value. -ResourceGroupName Assign value for $rgname.
⚠️ New-AzVmssConfig 4 23 Unassigned_Variable New-AzVirtualNetwork -ResourceGroupName $rgname is a null-valued parameter value. -ResourceGroupName Assign value for $rgname.
⚠️ New-AzVmssConfig 4 23 Unassigned_Variable New-AzVirtualNetwork -Location $loc is a null-valued parameter value. -Location Assign value for $loc.
⚠️ New-AzVmssConfig 4 24 Unassigned_Variable Get-AzVirtualNetwork -ResourceGroupName $rgname is a null-valued parameter value. -ResourceGroupName Assign value for $rgname.
⚠️ New-AzVmssConfig 4 30 Unassigned_Variable New-AzVmssConfig -Location $loc is a null-valued parameter value. -Location Assign value for $loc.
⚠️ New-AzVmssConfig 4 32 Unassigned_Variable Set-AzVmssOsProfile -AdminPassword $password is a null-valued parameter value. -AdminPassword Assign value for $password.
⚠️ New-AzVmssConfig 4 37 Unassigned_Variable New-AzVmss -ResourceGroupName $rgname is a null-valued parameter value. -ResourceGroupName Assign value for $rgname.
⚠️ New-AzVmssConfig 4 39 Unassigned_Variable Get-AzVmss -ResourceGroupName $rgname is a null-valued parameter value. -ResourceGroupName Assign value for $rgname.
⚠️ New-AzVmssConfig 5 36 Mismatched_Parameter_Value_Type Set-AzVmssOsProfile -AdminPassword $adminPassword is not an expected parameter value type. -AdminPassword Use correct parameter value type. Expected Type is string. Now the type is securestring.(Command).
️✔️Help File Existence Check
️✔️PowerShell Core - Windows
️✔️Windows PowerShell - Windows
️✔️File Change Check
️✔️PowerShell Core - Windows
️✔️Windows PowerShell - Windows
️✔️UX Metadata Check
️✔️PowerShell Core - Windows
️✔️Windows PowerShell - Windows
️✔️Test
️✔️PowerShell Core - Linux
️✔️PowerShell Core - MacOS
️✔️PowerShell Core - Windows
️✔️Windows PowerShell - Windows
️✔️Az.KeyVault
️✔️Build
️✔️PowerShell Core - Windows
️✔️Windows PowerShell - Windows
️✔️Az.Maintenance
️✔️Build
️✔️PowerShell Core - Windows
️✔️Windows PowerShell - Windows
️✔️Test
️✔️PowerShell Core - Linux
️✔️PowerShell Core - MacOS
️✔️PowerShell Core - Windows
️✔️Windows PowerShell - Windows
️✔️Az.ManagedServiceIdentity
️✔️Build
️✔️PowerShell Core - Windows
️✔️Windows PowerShell - Windows
️✔️Az.Monitor
️✔️Build
️✔️PowerShell Core - Windows
️✔️Windows PowerShell - Windows
️✔️Az.Network
️✔️Build
️✔️PowerShell Core - Windows
️✔️Windows PowerShell - Windows
️✔️Test
️✔️PowerShell Core - Linux
️✔️PowerShell Core - MacOS
️✔️PowerShell Core - Windows
️✔️Windows PowerShell - Windows
️✔️Az.OperationalInsights
️✔️Build
️✔️PowerShell Core - Windows
️✔️Windows PowerShell - Windows
️✔️Az.PrivateDns
️✔️Build
️✔️PowerShell Core - Windows
️✔️Windows PowerShell - Windows
️✔️Az.RecoveryServices
️✔️Build
️✔️PowerShell Core - Windows
️✔️Windows PowerShell - Windows
️✔️Test
️✔️PowerShell Core - Linux
️✔️PowerShell Core - MacOS
️✔️PowerShell Core - Windows
️✔️Windows PowerShell - Windows
️✔️Az.Security
️✔️Build
️✔️PowerShell Core - Windows
️✔️Windows PowerShell - Windows
️✔️Test
️✔️PowerShell Core - Linux
️✔️PowerShell Core - MacOS
️✔️PowerShell Core - Windows
️✔️Windows PowerShell - Windows
️✔️Az.Sql
️✔️Build
️✔️PowerShell Core - Windows
️✔️Windows PowerShell - Windows
️✔️Az.Ssh
️✔️Build
️✔️PowerShell Core - Windows
️✔️Windows PowerShell - Windows
️✔️Test
️✔️PowerShell Core - Linux
️✔️PowerShell Core - MacOS
️✔️PowerShell Core - Windows
️✔️Windows PowerShell - Windows
️✔️Az.Storage
️✔️Build
️✔️PowerShell Core - Windows
️✔️Windows PowerShell - Windows

@anshuljain26 anshuljain26 added this to the Az 13.2.0 (2025-02-11) milestone Jan 14, 2025
@anshuljain26
Copy link
Contributor Author

@vimish Please review the PR

@YanaXu YanaXu added the Compute label Jan 15, 2025
@YanaXu
Copy link
Contributor

YanaXu commented Jan 16, 2025

/azp run

Copy link
Contributor

Azure Pipelines successfully started running 3 pipeline(s).

@YanaXu
Copy link
Contributor

YanaXu commented Jan 16, 2025

/azp run

Copy link
Contributor

Azure Pipelines successfully started running 3 pipeline(s).

@YanaXu
Copy link
Contributor

YanaXu commented Jan 17, 2025

/azp run

Copy link
Contributor

Azure Pipelines successfully started running 3 pipeline(s).

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants