-
Notifications
You must be signed in to change notification settings - Fork 10.4k
[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
[release/10.0-preview7] Passkey design follow-ups #62841
Conversation
There was a problem hiding this 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
...tes/content/BlazorWeb-CSharp/BlazorWebCSharp.1/Components/Account/Shared/PasskeySubmit.razor
Outdated
Show resolved
Hide resolved
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. |
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?
This is a new feature being introduced, not a bug fix to existing functionality.
Risk
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
Packaging changes reviewed?