From dfa7a916b0a1b2db2ce9fb98176978d7fec5d1ef Mon Sep 17 00:00:00 2001 From: Qiutong Shen Date: Tue, 19 May 2026 14:30:47 +0800 Subject: [PATCH] fix(develop): security auth flows, certificate handling, and AI setup guidance --- hub/apps/develop/security/share-certificates.md | 2 ++ hub/apps/develop/security/smart-cards.md | 1 - hub/apps/develop/security/use-cases.md | 6 +++--- hub/apps/develop/security/windows-hello-auth-service.md | 2 +- hub/apps/develop/security/windows-hello-login.md | 4 ++-- hub/apps/how-tos/ai-setup.md | 2 +- 6 files changed, 9 insertions(+), 8 deletions(-) diff --git a/hub/apps/develop/security/share-certificates.md b/hub/apps/develop/security/share-certificates.md index 6a08e20f7a..cedcc02a2c 100644 --- a/hub/apps/develop/security/share-certificates.md +++ b/hub/apps/develop/security/share-certificates.md @@ -65,6 +65,8 @@ Apps can authenticate to a web service using a certificate, and multiple apps ca { return true; } + + return false; } } ``` diff --git a/hub/apps/develop/security/smart-cards.md b/hub/apps/develop/security/smart-cards.md index 39b13ed032..74e9e23f57 100644 --- a/hub/apps/develop/security/smart-cards.md +++ b/hub/apps/develop/security/smart-cards.md @@ -240,7 +240,6 @@ bool result = await provisioning.RequestPinResetAsync( deferral.Complete(); } }); -} ``` ## Remove a smart card or virtual smart card diff --git a/hub/apps/develop/security/use-cases.md b/hub/apps/develop/security/use-cases.md index 514613b9e0..71477af6e0 100644 --- a/hub/apps/develop/security/use-cases.md +++ b/hub/apps/develop/security/use-cases.md @@ -148,7 +148,7 @@ navigator.credentials.create({ // User-friendly name of your service. name: "Passkeys Developer", // Relying party (RP) identifier (hostname/FQDN). - id: passkeys.contoso" + id: "passkeys.contoso" }, user: { @@ -242,10 +242,10 @@ navigator.credentials.get({ rpId: ..., allowCredentials: [{ type: "public-key", - id: new UInt8Array([21, 31, 56, ...]).buffer, + id: new Uint8Array([21, 31, 56, ...]).buffer, }, { type: "public-key", - id: new UInt8Array([21, 31, 56, ...]).buffer, + id: new Uint8Array([21, 31, 56, ...]).buffer, }, { ... }], diff --git a/hub/apps/develop/security/windows-hello-auth-service.md b/hub/apps/develop/security/windows-hello-auth-service.md index fec464c6ac..001b98fe76 100644 --- a/hub/apps/develop/security/windows-hello-auth-service.md +++ b/hub/apps/develop/security/windows-hello-auth-service.md @@ -237,7 +237,7 @@ In this exercise, you start with the Windows Hello application built in the firs // If the UserAccountList does not contain the sampleUser Initialize the sample users // This is only needed as it in a Hand on Lab to demonstrate a user migrating // In the real world user accounts would just be in a database - if (!_mockDatabaseUserAccountsList.Any(f = > f.Username.Equals("sampleUsername"))) + if (!_mockDatabaseUserAccountsList.Any(f => f.Username.Equals("sampleUsername"))) { //If the list is empty InitializeSampleUserAccountsAsync and return the list await InitializeSampleUserAccountsAsync(); diff --git a/hub/apps/develop/security/windows-hello-login.md b/hub/apps/develop/security/windows-hello-login.md index 0172d190e8..9c4f851260 100644 --- a/hub/apps/develop/security/windows-hello-login.md +++ b/hub/apps/develop/security/windows-hello-login.md @@ -494,7 +494,7 @@ In this exercise you will learn how to check if Windows Hello is setup on the ma - Now that you have created the **CreateWindowsHelloKeyAsync** method, return to the Login.xaml.cs file and uncomment the code inside the SignInWindowsHelloAsync method. ```cs - private async void SignInWindowsHelloAsync() + private async Task SignInWindowsHelloAsync() { if (AccountHelper.ValidateAccountCredentials(UsernameTextBox.Text)) { @@ -631,7 +631,7 @@ In this exercise, you will continue from the previous exercise. When a user succ - In the **SignInWindowsHelloAsync** method (in Login.xaml.cs), once the **CreateWindowsHelloKeyAsync** is successful, it should navigate to the **Welcome** page and pass the **Account**. ```cs - private async void SignInWindowsHelloAsync() + private async Task SignInWindowsHelloAsync() { if (AccountHelper.ValidateAccountCredentials(UsernameTextBox.Text)) { diff --git a/hub/apps/how-tos/ai-setup.md b/hub/apps/how-tos/ai-setup.md index 497b35396a..60122c7d83 100644 --- a/hub/apps/how-tos/ai-setup.md +++ b/hub/apps/how-tos/ai-setup.md @@ -57,7 +57,7 @@ Run this command in your project root (or any directory where you want Copilot t copilot plugin install winui3-development@awesome-copilot ``` -This copies agents, skills, and custom instructions into your project's `.github/` directory. Copilot automatically picks them up the next time you open the project. +This copies agents, skills, and custom instructions into your project's `.github/` directory. Copilot automatically picks them up the next time you open the project. After installation, run `copilot plugin list` and confirm that `winui3-development@awesome-copilot` appears in the installed plugins list. > [!TIP] > You can also browse and install Copilot plugins directly from VS Code using the [Awesome Copilot extension](https://marketplace.visualstudio.com/items?itemName=TimHeuer.awesome-copilot).