Orech.Identity.Client
1.4.0
dotnet add package Orech.Identity.Client --version 1.4.0
NuGet\Install-Package Orech.Identity.Client -Version 1.4.0
<PackageReference Include="Orech.Identity.Client" Version="1.4.0" />
<PackageVersion Include="Orech.Identity.Client" Version="1.4.0" />
<PackageReference Include="Orech.Identity.Client" />
paket add Orech.Identity.Client --version 1.4.0
#r "nuget: Orech.Identity.Client, 1.4.0"
#:package Orech.Identity.Client@1.4.0
#addin nuget:?package=Orech.Identity.Client&version=1.4.0
#tool nuget:?package=Orech.Identity.Client&version=1.4.0
Orech.Identity.Client
Biblioteca client para integração com o Orech IdentityService: validação de JWT via JWKS, cache de permissões em Redis, multi-tenant e multi-branch.
Instalação
dotnet add package Orech.Identity.Client
Uso mínimo
builder.Services.AddIdentityClient(o =>
{
o.Issuer = "https://identity.suaempresa.com";
o.JwksUri = "https://identity.suaempresa.com/.well-known/jwks.json";
o.ApplicationId = Guid.Parse("<GUID da app no IdentityService>"); // obrigatório (1.2.0+)
o.ApplicationSlug = "minha-app";
o.ApiKey = builder.Configuration["Identity:ApiKey"]!; // X-Api-Key do sync
o.RedisConnection = builder.Configuration["Redis:Connection"]!;
o.Permissions.Add(new("members.read", "Ver membros"));
o.RolesTemplate.Add(new("Admin", ["members.read", "members.write"]));
});
app.UseIdentityClient(); // middlewares: tenant, branch, permission
No startup, o client sincroniza permissões e template de roles com o IdentityService
(POST /api/registry/sync, header X-Api-Key) de forma idempotente (merge aditivo).
Validação
Tokens são validados contra o JWKS do issuer, com aud == ApplicationId (rejeita tokens
de outra aplicação). Permissões são resolvidas via cache Redis por
permissions:{userId}:{tenantId}:{appId}:permissions.
Tratamento de erro
Falhas do IdentityService chegam no contrato canônico application/problem+json
(OrechProblemDetails: code, message, status, correlation_id, errors?). O
correlation_id permite cruzar os logs do seu app com os do IdentityService.
Requer .NET 10. Consulte o INTEGRATION-GUIDE.md para o onboarding completo de uma app nova.
| 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
- Microsoft.AspNetCore.Authentication.JwtBearer (>= 10.0.8)
- StackExchange.Redis (>= 2.12.14)
NuGet packages
This package is not used by any NuGet packages.
GitHub repositories
This package is not used by any popular GitHub repositories.