From 1bb5a8009d822c41418bdb66e4c5a520c60f6a9f Mon Sep 17 00:00:00 2001 From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com> Date: Mon, 26 Jan 2026 21:19:57 +0000 Subject: [PATCH 1/7] Initial plan From 0c7ebed3c9ec3d06d20b16609028af73ed82cb2a Mon Sep 17 00:00:00 2001 From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com> Date: Mon, 26 Jan 2026 21:22:02 +0000 Subject: [PATCH 2/7] Add KeyGuardAttestation package reference and DLL handling Co-authored-by: gladjohn <90415114+gladjohn@users.noreply.github.com> --- Directory.Packages.props | 1 + ...soft.Identity.Client.KeyAttestation.csproj | 19 +++++++++++++++++++ 2 files changed, 20 insertions(+) diff --git a/Directory.Packages.props b/Directory.Packages.props index f01eb48133..3cbc9d5bc6 100644 --- a/Directory.Packages.props +++ b/Directory.Packages.props @@ -9,6 +9,7 @@ + diff --git a/src/client/Microsoft.Identity.Client.KeyAttestation/Microsoft.Identity.Client.KeyAttestation.csproj b/src/client/Microsoft.Identity.Client.KeyAttestation/Microsoft.Identity.Client.KeyAttestation.csproj index b721050b63..7f1b1c2140 100644 --- a/src/client/Microsoft.Identity.Client.KeyAttestation/Microsoft.Identity.Client.KeyAttestation.csproj +++ b/src/client/Microsoft.Identity.Client.KeyAttestation/Microsoft.Identity.Client.KeyAttestation.csproj @@ -27,6 +27,11 @@ Microsoft Authentication Library + + + <_KeyGuardPkgDir>$(NuGetPackageRoot)microsoft.azure.security.keyguardattestation\1.1.4\ + + @@ -37,10 +42,24 @@ + + + + + + + + AttestationClientLib.dll + PreserveNewest + PreserveNewest + false + + + From af52c69be64db133f302199d93596d9ae82014f1 Mon Sep 17 00:00:00 2001 From: Gladwin Johnson <90415114+gladjohn@users.noreply.github.com> Date: Mon, 26 Jan 2026 13:49:49 -0800 Subject: [PATCH 3/7] Add task to copy Managed Identity app DLLs --- build/template-build-and-prep-automation.yaml | 19 ++++++++++++++++--- 1 file changed, 16 insertions(+), 3 deletions(-) diff --git a/build/template-build-and-prep-automation.yaml b/build/template-build-and-prep-automation.yaml index dffe3b4c47..6fa389da98 100644 --- a/build/template-build-and-prep-automation.yaml +++ b/build/template-build-and-prep-automation.yaml @@ -53,6 +53,13 @@ steps: Contents: '**/bin/**/**' TargetFolder: '$(Build.SourcesDirectory)/WAM' +- task: CopyFiles@2 + displayName: 'Copy Managed Identity DevApp Dlls' + inputs: + SourceFolder: 'tests\devapps\Managed Identity apps\ManagedIdentityAppVM' + Contents: '**\bin\**\*' + TargetFolder: '$(Build.SourcesDirectory)/ManagedIdentityAppVM' + - task: PublishPipelineArtifact@1 displayName: 'Publish Artifact: drop' inputs: @@ -112,6 +119,15 @@ steps: $errors += "Failed to find Linux runtime files in : " + $SearchInFolder + $app + "`n"; } + # Managed Identity app runtime DLL check + $managedIdentityFolder = Join-Path $(Build.SourcesDirectory) 'ManagedIdentityAppVM' + $managedIdentityDll = Join-Path $managedIdentityFolder 'bin\Release\net8.0\AttestationClientLib.dll' + Write-Host $managedIdentityDll + if (-not(Test-Path -Path $managedIdentityDll -PathType Leaf)) + { + $errors += "Failed to find AttestationClientLib.dll in : " + $managedIdentityFolder + "`n"; + } + #exit if there are errors IF (![string]::IsNullOrWhitespace($errors)) { @@ -123,6 +139,3 @@ steps: { Write-Host "File check complete. All msalruntime dlls are present." } - - - From 19532bd92fcb7db99ea0cdbb6e8881f9e5d90a31 Mon Sep 17 00:00:00 2001 From: Gladwin Johnson <90415114+gladjohn@users.noreply.github.com> Date: Thu, 5 Feb 2026 08:51:03 -0800 Subject: [PATCH 4/7] Update Microsoft.Identity.Client.KeyAttestation.csproj --- ...rosoft.Identity.Client.KeyAttestation.csproj | 17 +---------------- 1 file changed, 1 insertion(+), 16 deletions(-) diff --git a/src/client/Microsoft.Identity.Client.KeyAttestation/Microsoft.Identity.Client.KeyAttestation.csproj b/src/client/Microsoft.Identity.Client.KeyAttestation/Microsoft.Identity.Client.KeyAttestation.csproj index 7f1b1c2140..e786f67ae9 100644 --- a/src/client/Microsoft.Identity.Client.KeyAttestation/Microsoft.Identity.Client.KeyAttestation.csproj +++ b/src/client/Microsoft.Identity.Client.KeyAttestation/Microsoft.Identity.Client.KeyAttestation.csproj @@ -27,11 +27,6 @@ Microsoft Authentication Library - - - <_KeyGuardPkgDir>$(NuGetPackageRoot)microsoft.azure.security.keyguardattestation\1.1.4\ - - @@ -50,19 +45,9 @@ - - - - AttestationClientLib.dll - PreserveNewest - PreserveNewest - false - - - - \ No newline at end of file + From 1d99609a60b9d953f92cb86b63e81a42854a7464 Mon Sep 17 00:00:00 2001 From: Gladwin Johnson <90415114+gladjohn@users.noreply.github.com> Date: Thu, 5 Feb 2026 09:03:00 -0800 Subject: [PATCH 5/7] Update KeyGuardAttestation package version to 1.1.5 --- Directory.Packages.props | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Directory.Packages.props b/Directory.Packages.props index 3cbc9d5bc6..fa0039bb88 100644 --- a/Directory.Packages.props +++ b/Directory.Packages.props @@ -9,7 +9,7 @@ - + From e8ee15c72d6acab90082348b418bf65937900c34 Mon Sep 17 00:00:00 2001 From: Gladwin Johnson <90415114+gladjohn@users.noreply.github.com> Date: Thu, 5 Feb 2026 09:17:06 -0800 Subject: [PATCH 6/7] Update template-build-and-prep-automation.yaml --- build/template-build-and-prep-automation.yaml | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/build/template-build-and-prep-automation.yaml b/build/template-build-and-prep-automation.yaml index 6fa389da98..a1f22fcffe 100644 --- a/build/template-build-and-prep-automation.yaml +++ b/build/template-build-and-prep-automation.yaml @@ -121,11 +121,12 @@ steps: # Managed Identity app runtime DLL check $managedIdentityFolder = Join-Path $(Build.SourcesDirectory) 'ManagedIdentityAppVM' - $managedIdentityDll = Join-Path $managedIdentityFolder 'bin\Release\net8.0\AttestationClientLib.dll' - Write-Host $managedIdentityDll - if (-not(Test-Path -Path $managedIdentityDll -PathType Leaf)) + $managedIdentityDll = Join-Path $managedIdentityFolder 'bin\Release\net8.0\runtimes\win-x64\native\AttestationClientLib.dll' + + Write-Host "Checking: $managedIdentityDll" + if (-not (Test-Path -Path $managedIdentityDll -PathType Leaf)) { - $errors += "Failed to find AttestationClientLib.dll in : " + $managedIdentityFolder + "`n"; + $errors += "Failed to find AttestationClientLib.dll at: $managedIdentityDll`n" } #exit if there are errors From 85a54e069522f2bc85d418da58740b9bb5df32db Mon Sep 17 00:00:00 2001 From: Gladwin Johnson <90415114+gladjohn@users.noreply.github.com> Date: Tue, 24 Feb 2026 07:46:37 -0800 Subject: [PATCH 7/7] Add verification for AttestationClientLib DLL Added a target to verify the presence of AttestationClientLib.dll in the output directory during the build process. --- .../ManagedIdentityAppVM.csproj | 17 +++++++++++++++++ 1 file changed, 17 insertions(+) diff --git a/tests/devapps/Managed Identity apps/ManagedIdentityAppVM/ManagedIdentityAppVM.csproj b/tests/devapps/Managed Identity apps/ManagedIdentityAppVM/ManagedIdentityAppVM.csproj index 6cfb7f98d1..0086c2adcb 100644 --- a/tests/devapps/Managed Identity apps/ManagedIdentityAppVM/ManagedIdentityAppVM.csproj +++ b/tests/devapps/Managed Identity apps/ManagedIdentityAppVM/ManagedIdentityAppVM.csproj @@ -5,6 +5,9 @@ net8.0 enable enable + + + true @@ -12,4 +15,18 @@ + + + + + <_AttestationClientLib>$(TargetDir)runtimes/win-x64/native/AttestationClientLib.dll + + + + + +