Sparkdo.Security.AspNetCore
2.0.0-preview.2
dotnet add package Sparkdo.Security.AspNetCore --version 2.0.0-preview.2
NuGet\Install-Package Sparkdo.Security.AspNetCore -Version 2.0.0-preview.2
<PackageReference Include="Sparkdo.Security.AspNetCore" Version="2.0.0-preview.2" />
<PackageVersion Include="Sparkdo.Security.AspNetCore" Version="2.0.0-preview.2" />
<PackageReference Include="Sparkdo.Security.AspNetCore" />
paket add Sparkdo.Security.AspNetCore --version 2.0.0-preview.2
#r "nuget: Sparkdo.Security.AspNetCore, 2.0.0-preview.2"
#:package Sparkdo.Security.AspNetCore@2.0.0-preview.2
#addin nuget:?package=Sparkdo.Security.AspNetCore&version=2.0.0-preview.2&prerelease
#tool nuget:?package=Sparkdo.Security.AspNetCore&version=2.0.0-preview.2&prerelease
Sparkdo.Security.AspNetCore
Sparkdo.Security.AspNetCore 将 ASP.NET Core 当前请求中已认证的 ClaimsPrincipal 投影为不可变 SecurityContext。
package manifest 会:
- 使用 singleton
TryAdd注册IHttpContextAccessor。 - 使用 singleton
Replace将ISecurityContextAccessor替换为HttpContextSecurityContextAccessor。
适配器接受 sub 或 ClaimTypes.NameIdentifier 作为稳定 subject。缺失或冲突时会抛出中文配置异常;未认证请求返回 SecurityContext.Anonymous。同一主体存在多个认证方案时,只使用选定 primary identity 的 claims 与认证证据。
identity 提供 iss 时,subject 和仍使用默认 LOCAL AUTHORITY 的 claims 都规范化到该 issuer;显式冲突的 subject issuer 或多个不同 iss 会拒绝投影。认证时间只读取 auth_time,不会把 token iat 当作重新认证时间;冲突或畸形的可选证据降级为未知。
投影结果按 HTTP 请求缓存,避免同一请求内因 Principal 后续变化而改变授权输入。
认证方案、令牌校验和认证中间件顺序仍由 ASP.NET Core 应用负责。
| Product | Versions Compatible and additional computed target framework versions. |
|---|---|
| .NET | net10.0 is compatible. net10.0-android was computed. net10.0-browser was computed. net10.0-ios was computed. net10.0-maccatalyst was computed. net10.0-macos was computed. net10.0-tvos was computed. net10.0-windows was computed. |
-
net10.0
- Sparkdo.Manifest (>= 2.0.0-preview.2)
- Sparkdo.Security (>= 2.0.0-preview.2)
NuGet packages
This package is not used by any NuGet packages.
GitHub repositories
This package is not used by any popular GitHub repositories.
| Version | Downloads | Last Updated |
|---|---|---|
| 2.0.0-preview.2 | 39 | 7/20/2026 |
| 2.0.0-preview.1 | 41 | 7/18/2026 |