Bitzsoft.Integrations.Certification
1.0.0-alpha.10
dotnet add package Bitzsoft.Integrations.Certification --version 1.0.0-alpha.10
NuGet\Install-Package Bitzsoft.Integrations.Certification -Version 1.0.0-alpha.10
<PackageReference Include="Bitzsoft.Integrations.Certification" Version="1.0.0-alpha.10" />
<PackageVersion Include="Bitzsoft.Integrations.Certification" Version="1.0.0-alpha.10" />
<PackageReference Include="Bitzsoft.Integrations.Certification" />
paket add Bitzsoft.Integrations.Certification --version 1.0.0-alpha.10
#r "nuget: Bitzsoft.Integrations.Certification, 1.0.0-alpha.10"
#:package Bitzsoft.Integrations.Certification@1.0.0-alpha.10
#addin nuget:?package=Bitzsoft.Integrations.Certification&version=1.0.0-alpha.10&prerelease
#tool nuget:?package=Bitzsoft.Integrations.Certification&version=1.0.0-alpha.10&prerelease
Bitzsoft.Integrations.Certification
Provider 发布认证工具包,面向 net5.0、net8.0 和 net10.0。它把
Descriptor、契约测试、DI smoke、包安装、sandbox 新鲜度和支持矩阵连接成可执行门禁,
避免把“代码存在”误写成“生产可用”。
安装与兼容性
dotnet add package Bitzsoft.Integrations.Certification
包支持 net5.0、net8.0 和 net10.0,主要用于 Provider 测试项目、CI 门禁和
支持矩阵生成,不应作为业务运行时依赖。
认证门槛
ProviderCertificationEvaluator 默认要求:
- Descriptor 明确声明厂商、API 版本、鉴权方式、地域、环境、真实能力及最近契约验证时间;
- 每个声明能力都有新鲜且通过的 mock contract 证据;
- DI 和安全负向测试证据;
- 声明 Webhook 或 Sync 能力时,分别具有专门证据;
net5.0、net8.0、net10.0均有安装验证,或提供完整、可追溯的上游 TFM 例外;- 最近 90 天内完成 sandbox/live 验证,并记录凭据来源、API、地域、环境和测试数据清理。
认证报告只保留稳定机器码、安全说明和异常类型,不保存 secret、原始业务载荷或异常消息。
HTTP contract fixture
var handler = new ScriptedHttpMessageHandler()
.Expect(HttpRequestExpectation.Respond(
HttpMethod.Post,
"/v1/customers",
HttpStatusCode.Created,
additionalMatch: request => request.Body.Length > 0));
using var client = new HttpClient(handler);
await client.PostAsync(
"https://fixture.invalid/v1/customers",
new ByteArrayContent(payload),
cancellationToken);
handler.AssertComplete();
fixture 严格按顺序匹配 method/path,捕获完整原始正文和多值 Header。它不设置正文上限, 也不截断兆级请求;部署入口若需要限制,应由宿主显式配置。
HMAC Webhook fixture
HmacWebhookTestFixture 使用真实 IntegrationCredential 计算签名,还可以构建实际
IWebhookGateway、Verifier、Replay Store 和 Inbox 组成的测试容器:
var fixture = new HmacWebhookTestFixture("Payments:vendor");
var route = new WebhookRoute("tenant-a", fixture.ProviderKey);
using var credential = new IntegrationCredential(new[]
{
new KeyValuePair<string, string>("WebhookSecret", webhookSecret)
});
var request = fixture.CreateSignedRequest(
credential,
rawBody,
"delivery-123",
"payment.updated",
timestamp);
using var root = fixture.BuildGatewayServiceProvider(route, credential);
using var scope = root.CreateScope();
var result = await scope.ServiceProvider
.GetRequiredService<IWebhookGateway>()
.ReceiveAsync(route, request, cancellationToken);
DI smoke 与支持矩阵
var diResult = ProviderDiSmokeVerifier.Verify(services, descriptor);
var report = new ProviderCertificationEvaluator()
.Evaluate(descriptor, manifest, DateTimeOffset.UtcNow);
var markdown = new ProviderSupportMatrixGenerator().RenderMarkdown(
descriptors,
manifests,
reports);
支持矩阵以 Provider Descriptor 和认证对象为事实源,按 domain/provider 稳定排序并进行 Markdown 转义,适合在 CI 中生成知识库页面。
证据生命周期
认证结果是某个 Provider 版本、API、区域、环境与时间点的证据,不是永久背书。 SDK/API 升级、鉴权变更、能力声明变化或超过策略新鲜度后必须重新认证。live/sandbox 记录不得保存凭据、业务正文或供应商异常原文;需要人工保存的外部证据应使用受控链接和 稳定摘要。
| Product | Versions Compatible and additional computed target framework versions. |
|---|---|
| .NET | net5.0 is compatible. net5.0-windows was computed. net6.0 was computed. net6.0-android was computed. net6.0-ios was computed. net6.0-maccatalyst was computed. net6.0-macos was computed. net6.0-tvos was computed. net6.0-windows was computed. net7.0 was computed. net7.0-android was computed. net7.0-ios was computed. net7.0-maccatalyst was computed. net7.0-macos was computed. net7.0-tvos was computed. net7.0-windows was computed. net8.0 is compatible. net8.0-android was computed. net8.0-browser was computed. net8.0-ios was computed. net8.0-maccatalyst was computed. net8.0-macos was computed. net8.0-tvos was computed. net8.0-windows was computed. net9.0 was computed. net9.0-android was computed. net9.0-browser was computed. net9.0-ios was computed. net9.0-maccatalyst was computed. net9.0-macos was computed. net9.0-tvos was computed. net9.0-windows was computed. 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
- Bitzsoft.Integrations.Compatibility (>= 1.0.0-alpha.10)
- Bitzsoft.Integrations.Core (>= 1.0.0-alpha.10)
- Bitzsoft.Integrations.Sync (>= 1.0.0-alpha.10)
- Bitzsoft.Integrations.Webhooks (>= 1.0.0-alpha.10)
- Microsoft.Extensions.DependencyInjection (>= 10.0.10)
-
net5.0
- Bitzsoft.Integrations.Compatibility (>= 1.0.0-alpha.10)
- Bitzsoft.Integrations.Core (>= 1.0.0-alpha.10)
- Bitzsoft.Integrations.Sync (>= 1.0.0-alpha.10)
- Bitzsoft.Integrations.Webhooks (>= 1.0.0-alpha.10)
- Microsoft.Extensions.DependencyInjection (>= 5.0.0)
-
net8.0
- Bitzsoft.Integrations.Compatibility (>= 1.0.0-alpha.10)
- Bitzsoft.Integrations.Core (>= 1.0.0-alpha.10)
- Bitzsoft.Integrations.Sync (>= 1.0.0-alpha.10)
- Bitzsoft.Integrations.Webhooks (>= 1.0.0-alpha.10)
- Microsoft.Extensions.DependencyInjection (>= 10.0.10)
NuGet packages (1)
Showing the top 1 NuGet packages that depend on Bitzsoft.Integrations.Certification:
| Package | Downloads |
|---|---|
|
Bitzsoft.Integrations.All
Bitzsoft 第三方集成聚合包 — net5.0 包含传统连接器,net8.0+ 额外包含受上游 TFM 限制的 AI 模块 |
GitHub repositories
This package is not used by any popular GitHub repositories.
| Version | Downloads | Last Updated |
|---|---|---|
| 1.0.0-alpha.10 | 55 | 7/26/2026 |