# 外部集成 **分析日期:** 2026-02-28 ## API 与外部服务 **OAuth2/OpenID Connect:** - OpenIddict 7.2.0 - 实现 - 框架: OpenIddict.EntityFrameworkCore - 用途: 平台的认证服务器 - 存储: EntityFrameworkCore(存储在 PostgreSQL 中) ## 数据存储 **数据库:** - PostgreSQL - 提供程序: `Npgsql.EntityFrameworkCore.PostgreSQL` 10.0.0 - 连接: 通过服务注册中的 `AddDbContext()` 配置 - ORM: Entity Framework Core 10.0.0 - 上下文: `Fengling.Platform.Infrastructure/PlatformDbContext.cs` - 迁移: `Fengling.Platform.Infrastructure/Migrations/` **文件存储:** - 未检测到(此服务仅使用本地文件系统) **缓存:** - 未检测到 ## 认证与身份 **认证提供程序:** - ASP.NET Core Identity + 自定义存储 - 用户: `Fengling.Platform.Domain/AggregatesModel/UserAggregate/ApplicationUser.cs`(继承 `IdentityUser`) - 角色: `Fengling.Platform.Domain/AggregatesModel/RoleAggregate/ApplicationRole.cs` - 实现: `Microsoft.AspNetCore.Identity.EntityFrameworkCore` **多租户:** - 通过 `ITenantStore` 和 `ITenantManager` 进行租户管理 - Store: `Fengling.Platform.Infrastructure/TenantStore.cs` - Manager: `Fengling.Platform.Infrastructure/TenantManager.cs` - 实体: `Fengling.Platform.Domain/AggregatesModel/TenantAggregate/Tenant.cs` ## 监控与可观测性 **错误追踪:** - 依赖中未检测到 **日志:** - 标准 ASP.NET Core 日志(ILogger) ## CI/CD 与部署 **托管:** - Docker(容器化) - 基础镜像: `mcr.microsoft.com/dotnet/aspnet:10.0` - 构建: 多阶段 Dockerfile **CI 流水线:** - 此仓库中未明确配置 ## 环境配置 **所需环境变量:** - 数据库连接字符串(通过 `AddDbContext` 配置) - 标准 ASP.NET Core 环境变量 **密钥位置:** - 基于环境的配置(代码中未检测到) ## Webhook 与回调 **传入:** - 当前实现中未检测到 **传出:** - 当前实现中未检测到 ## 内部依赖 **共享框架:** - NetCorePal (v3.2.1) - 内部框架包 - 源: `https://gitea.shtao1.cn/api/packages/fengling/nuget/index.json` --- *集成审计: 2026-02-28*