Skip to content

[release/10.0-preview7] Passkey design follow-ups #62841

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

Merged

Conversation

MackinnonBuck
Copy link
Member

Backport of #62530

Passkey design follow-ups

Addresses API review feedback for passkey support

Description

This PR implements follow-up changes from the API review of passkey support in ASP.NET Core Identity (#62287). This also includes updates to the Blazor Web App project template to make use of the updated APIs. The changes ensure the passkey APIs meet the quality bar for the release and incorporate design improvements identified during review.

Fixes #62287

Customer Impact

These changes improve the usability of the new passkey authentication feature in ASP.NET Core Identity. While this PR contains breaking API changes, the APIs being changed were only introduced in .NET 10 preview 6, so we don't expect customer apps to be heavily relying on them.

Regression?

  • Yes
  • No

This is a new feature being introduced, not a bug fix to existing functionality.

Risk

  • High
  • Medium
  • Low

While this PR includes breaking changes to the passkey APIs, the initial revision was released in preview 6. Therefore, direct customer usage of these preview APIs is expected to be minimal. The changes in this PR only apply to passkey functionality and are unlikely to impact other parts of the product.

Verification

  • Manual (required)
  • Automated

Packaging changes reviewed?

  • Yes
  • No
  • N/A

@Copilot Copilot AI review requested due to automatic review settings July 21, 2025 13:52
@MackinnonBuck MackinnonBuck added the Servicing-consider Shiproom approval is required for the issue label Jul 21, 2025
Copy link
Contributor

@Copilot Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull Request Overview

This PR implements follow-up changes from the API review of passkey support in ASP.NET Core Identity, simplifying the passkey APIs and improving their design based on review feedback.

  • Streamlined passkey API by removing intermediate options classes and simplifying method signatures
  • Refactored passkey data storage to use a single IdentityPasskeyData class with JSON serialization
  • Updated all template and sample code to use the new simplified APIs

Reviewed Changes

Copilot reviewed 73 out of 76 changed files in this pull request and generated 4 comments.

Show a summary per file
File Description
Database schema files Updated Entity Framework model snapshots and migrations to use JSON storage for passkey data
PasskeySubmit.razor Added antiforgery token support for secure passkey operations
Identity template files Updated Blazor templates to use simplified AddOrUpdatePasskeyAsync and streamlined passkey methods
Core passkey classes Replaced complex options pattern with simpler PasskeyHandler and direct JSON result methods
Test files Updated all tests to match the new simplified API surface
Store implementations Modified to use new AddOrUpdatePasskeyAsync method and JSON-based passkey data storage
Files not reviewed (2)
  • src/ProjectTemplates/Web.ProjectTemplates/content/BlazorWeb-CSharp/BlazorWebCSharp.1/Data/SqlLite/00000000000000_CreateIdentitySchema.Designer.cs: Language not supported
  • src/ProjectTemplates/Web.ProjectTemplates/content/BlazorWeb-CSharp/BlazorWebCSharp.1/Data/SqlServer/00000000000000_CreateIdentitySchema.Designer.cs: Language not supported

@MackinnonBuck MackinnonBuck changed the title [release/10.0-preview7] Passkey design follow-ups (#62530) [release/10.0-preview7] Passkey design follow-ups Jul 21, 2025
@artl93 artl93 added Servicing-approved Shiproom has approved the issue and removed Servicing-consider Shiproom approval is required for the issue labels Jul 21, 2025
Copy link
Contributor

Hi @@MackinnonBuck. This PR was just approved to be included in the upcoming servicing release. Somebody from the @dotnet/aspnet-build team will get it merged when the branches are open. Until then, please make sure all the CI checks pass and the PR is reviewed.

@wtgodbe wtgodbe merged commit d6a0582 into release/10.0-preview7 Jul 22, 2025
29 checks passed
@wtgodbe wtgodbe deleted the mbuck/backport-passkey-updates-to-preview7 branch July 22, 2025 15:01
@wtgodbe wtgodbe added this to the 10.0-preview7 milestone Jul 23, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Servicing-approved Shiproom has approved the issue
Projects
None yet
Development

Successfully merging this pull request may close these issues.

5 participants