From 2ca8c8d3065e77131f8130f6182e15a12ae75d54 Mon Sep 17 00:00:00 2001 From: Yabo Hu Date: Tue, 23 Dec 2025 17:59:05 +0800 Subject: [PATCH] fix -ExposeToken --- src/ContainerRegistry/ContainerRegistry/ChangeLog.md | 1 + .../Commands/ConnectAzureContainerRegistry.cs | 4 ++-- .../help/Connect-AzContainerRegistry.md | 10 ++++++++++ .../Exceptions/Az.ContainerRegistry/ExampleIssues.csv | 2 ++ 4 files changed, 15 insertions(+), 2 deletions(-) create mode 100644 tools/StaticAnalysis/Exceptions/Az.ContainerRegistry/ExampleIssues.csv diff --git a/src/ContainerRegistry/ContainerRegistry/ChangeLog.md b/src/ContainerRegistry/ContainerRegistry/ChangeLog.md index ec96cc89fc22..eaf68fda6cc7 100644 --- a/src/ContainerRegistry/ContainerRegistry/ChangeLog.md +++ b/src/ContainerRegistry/ContainerRegistry/ChangeLog.md @@ -18,6 +18,7 @@ - Additional information about change #1 --> ## Upcoming Release +* Fixed `-ExposeToken` with `Connect-AzContainerRegistry` * Updated Azure.Core from 1.47.3 to 1.50.0 ## Version 5.0.0 diff --git a/src/ContainerRegistry/ContainerRegistry/Commands/ConnectAzureContainerRegistry.cs b/src/ContainerRegistry/ContainerRegistry/Commands/ConnectAzureContainerRegistry.cs index 6d47a9a15970..a1be8425439d 100644 --- a/src/ContainerRegistry/ContainerRegistry/Commands/ConnectAzureContainerRegistry.cs +++ b/src/ContainerRegistry/ContainerRegistry/Commands/ConnectAzureContainerRegistry.cs @@ -12,6 +12,7 @@ // limitations under the License. // ---------------------------------------------------------------------------------- +using Microsoft.WindowsAzure.Commands.Common; using Microsoft.WindowsAzure.Commands.Utilities.Common; using Newtonsoft.Json; using System; @@ -67,9 +68,8 @@ public override void ExecuteCmdlet() { WriteWarning("You can perform manual login using the provided access token, for example: 'docker login -u 00000000-0000-0000-0000-000000000000 -p '"); var cred = new { - status = this.ExecuteScript(LoginScript), loginServer = Name + ".azurecr.io", - accessToken = this.RegistryDataPlaneClient.Authenticate() + accessToken = this.Password.ConvertToSecureString() }; WriteObject(cred); } else diff --git a/src/ContainerRegistry/ContainerRegistry/help/Connect-AzContainerRegistry.md b/src/ContainerRegistry/ContainerRegistry/help/Connect-AzContainerRegistry.md index a964b080fb1a..addbc3765607 100644 --- a/src/ContainerRegistry/ContainerRegistry/help/Connect-AzContainerRegistry.md +++ b/src/ContainerRegistry/ContainerRegistry/help/Connect-AzContainerRegistry.md @@ -50,6 +50,16 @@ Connect-AzContainerRegistry -Name $RegistryName -UserName $ServicePrincipal -Pas Login to ACR with service principal application ID and password. +### Example 4 +```powershell +$cred = Connect-AzContainerRegistry -Name $RegistryName -ExposeToken +$token = ($cred.accessToken | ConvertFrom-SecureString -AsPlainText) +$loginServer = $cred.loginServer +docker login $loginServer -u 00000000-0000-0000-0000-000000000000 --password $token +``` + +Login to ACR with native containerize tool. + ## PARAMETERS ### -DefaultProfile diff --git a/tools/StaticAnalysis/Exceptions/Az.ContainerRegistry/ExampleIssues.csv b/tools/StaticAnalysis/Exceptions/Az.ContainerRegistry/ExampleIssues.csv new file mode 100644 index 000000000000..f5af8a3e292c --- /dev/null +++ b/tools/StaticAnalysis/Exceptions/Az.ContainerRegistry/ExampleIssues.csv @@ -0,0 +1,2 @@ +"Module","Cmdlet","Example","Line","RuleName","ProblemId","Severity","Description","Extent","Remediation" +"Az.ContainerRegistry","Connect-AzContainerRegistry","4","4","Capitalization_Conventions_Violated","5101","1","docker doesn't follow the Capitalization Conventions.","docker login $loginServer -u 00000000-0000-0000-0000-000000000000 --password $token","Check the Capitalization Conventions. Suggest format: docker.exe" \ No newline at end of file