BasicIdentity 开发指南
BasicIdentity 只有两个项目:业务库 FreeKit.BasicIdentity 和可独立运行的 FreeKit.BasicIdentity.Host。
依赖
业务库的直接依赖仅包括 FreeSql Repository、MediatR、JWT 和兼容现有密码格式所需的 DotNetCore.Security。HTTP API 只增加 MySQL Provider、JWT Bearer 和 Swagger。
注册
builder.Services.AddBasicIdentity(builder.Configuration);
AddBasicIdentity 注册 FreeSql、User / UserToken 仓储、Token 服务、用户服务及 MediatR Handler。HTTP API 自己配置 JWT Bearer 和 Controller,不依赖 FreeKit 的 Infrastructure/Web 聚合项目。
配置
{
"ConnectionStrings": {
"MySql": "Data Source=localhost;Port=3308;User ID=<user>;Password=<password>;Initial Catalog=freekit_basic_identity;Charset=utf8mb4;SslMode=none"
},
"Authentication": {
"ValidIssuer": "FreeKit.BasicIdentity",
"ValidAudience": "FreeKit.BasicIdentity",
"ExpiresTime": 7200,
"RefreshExpiresIn": 2592000,
"SigningKeys": [ "replace-with-at-least-32-bytes" ]
},
"Security": {
"Cryptography": {
"Key": "replace-with-a-production-key"
}
}
}
HTTP 能力
所有路由以 /api/identity 开头:
account:注册、登录、注销、刷新 Token。profile:当前用户、Token 读取和头像键更新。user:Admin/User角色鉴权自测。
BasicIdentity 不提供用户后台 CRUD、权限管理、文件上传或设置管理;需要这些能力时应使用完整 Identity 或由业务服务自行组合。