0bb96a502a
Shop floor workers can log in once with a password, enroll a passkey, and use Face ID / Windows Hello / fingerprint for all future logins. - UserPasskey entity + AddUserPasskeys migration (Fido2 v4.0.1) - PasskeyController: RegisterOptions, Register, LoginOptions, Login, Manage, Remove endpoints - Login page: platform-aware button (Face ID / Windows Hello / etc.) hidden automatically if browser doesn't support WebAuthn - Post-login floating prompt to enroll on first use; session-dismissed - Passkeys & Biometrics link in user dropdown menu - Manage page: list registered devices, add new, remove individual - passkey.js: targeted base64url conversion (only challenge + user.id + credential IDs) — fixes "Required parameters missing" error caused by blindly converting rp.id and other string fields to ArrayBuffers Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
46 lines
2.4 KiB
XML
46 lines
2.4 KiB
XML
<Project Sdk="Microsoft.NET.Sdk.Web">
|
|
|
|
<PropertyGroup>
|
|
<TargetFramework>net8.0</TargetFramework>
|
|
<Nullable>enable</Nullable>
|
|
<ImplicitUsings>enable</ImplicitUsings>
|
|
<MajorVersion>2</MajorVersion>
|
|
<MinorVersion>1</MinorVersion>
|
|
<PatchVersion>$([System.DateTime]::UtcNow.ToString("MMdd"))</PatchVersion>
|
|
<Version>$(MajorVersion).$(MinorVersion).$(PatchVersion)</Version>
|
|
<AssemblyVersion>$(MajorVersion).$(MinorVersion).$(PatchVersion).0</AssemblyVersion>
|
|
<FileVersion>$(MajorVersion).$(MinorVersion).$(PatchVersion).0</FileVersion>
|
|
</PropertyGroup>
|
|
|
|
<ItemGroup>
|
|
<PackageReference Include="AutoMapper" Version="16.1.1" />
|
|
<PackageReference Include="Azure.Extensions.AspNetCore.DataProtection.Blobs" Version="1.5.1" />
|
|
<PackageReference Include="Azure.Identity" Version="1.21.0" />
|
|
<PackageReference Include="Azure.Monitor.Query" Version="1.7.1" />
|
|
<PackageReference Include="EPPlus" Version="7.0.0" />
|
|
<PackageReference Include="Fido2" Version="4.0.1" />
|
|
<PackageReference Include="Fido2.AspNet" Version="4.0.1" />
|
|
<PackageReference Include="Markdig" Version="0.40.0" />
|
|
<PackageReference Include="Microsoft.AspNetCore.Diagnostics.EntityFrameworkCore" Version="8.0.11" />
|
|
<PackageReference Include="Microsoft.AspNetCore.Identity.UI" Version="8.0.11" />
|
|
<PackageReference Include="Microsoft.EntityFrameworkCore.Design" Version="8.0.11">
|
|
<PrivateAssets>all</PrivateAssets>
|
|
<IncludeAssets>runtime; build; native; contentfiles; analyzers; buildtransitive</IncludeAssets>
|
|
</PackageReference>
|
|
<PackageReference Include="Microsoft.VisualStudio.Web.CodeGeneration.Design" Version="8.0.7" />
|
|
<PackageReference Include="QRCoder" Version="1.6.0" />
|
|
<PackageReference Include="Serilog.AspNetCore" Version="8.0.3" />
|
|
<PackageReference Include="Serilog.Sinks.ApplicationInsights" Version="5.0.0" />
|
|
<PackageReference Include="Serilog.Sinks.File" Version="6.0.0" />
|
|
<PackageReference Include="Serilog.Sinks.MSSqlServer" Version="8.0.0" />
|
|
<PackageReference Include="Stripe.net" Version="50.4.1" />
|
|
</ItemGroup>
|
|
|
|
<ItemGroup>
|
|
<ProjectReference Include="..\PowderCoating.Core\PowderCoating.Core.csproj" />
|
|
<ProjectReference Include="..\PowderCoating.Application\PowderCoating.Application.csproj" />
|
|
<ProjectReference Include="..\PowderCoating.Infrastructure\PowderCoating.Infrastructure.csproj" />
|
|
</ItemGroup>
|
|
|
|
</Project>
|