SAIF.NetCore.NtlmApiAuth takes two internal NuGet package dependencies — the foundation package SAIF.NetCore.ServiceContracts and, as one of the three documented implementation-to-implementation exceptions in Architecture.md, SAIF.NetCore.AuthService — plus one external Swashbuckle dependency, and makes no direct outbound API calls of its own; its only reachable outbound API call is a confirmed transitive chain through AuthService into SecurityAPI.
Supplies IHttpJsonClient, HttpClientOptions, and IEnvironmentClient contracts consumed by client-side header/options helpers and injected (unused) into NtlmApiAuthorizationService.
Documented implementation-to-implementation exception (Architecture.md "Notable exceptions"); supplies ISecurityClient, injected into NtlmApiAuthorizationService and called by IsAuthorized to authorize the request user and, when present, the on-behalf-of user.
Supplies SwaggerGenOptions, IOperationFilter, and OperationFilterContext used by SwaggerGenOptionsExtensions.AddDebuggerOnBehalfOfHeader to expose the OnBehalfOfUser header as a Swagger UI parameter when a debugger is attached; forces every consumer, including client-only MVC/Blazor apps, to take a Swashbuckle dependency*.
NtlmApiAuthorizationService.IsAuthorized (src/SAIF.NetCore.NtlmApiAuth/src/SAIF.NetCore.NtlmApiAuth/Services/NtmlApiAuthorizationService.cs L48 for the request user, L53 for the on-behalf-of user)
SAIF.NetCore.AuthService, package version 8.2023.319.2 (src/SAIF.NetCore.AuthService/SAIF.NetCore.AuthService/SAIF.NetCore.AuthService/Clients/SecurityClient.cs) — SecurityClient.IsAuthorized
Authorizes the request user's role and, if an on-behalf-of user is present, that user's role as well; both calls must return true for the dual-identity check to succeed. This behavior was traced from the 10.x SAIF.NetCore.AuthService source present in this repository; its applicability to the pinned 8.2023.319.2 package is inferred from the matching ISecurityClient.IsAuthorized(string,string) signature, not independently verified.*
SAIF.NetCore.AuthService is pinned at the version-lagged 8.2023.319.2 while the feed's latest is 10.2026.26267.1 and SAIF.NetCore.ServiceExtensions centrally pins the current 10.2026.26267.1; 8.x→10.x binary compatibility for the one member used (ISecurityClient.IsAuthorized(string,string)) is inferred from the 10.x source, not verified against the 8.x package*.
The library injects IEnvironmentClient into NtlmApiAuthorizationService but never calls it; the environment-based resource-suffix rewrite this constructor parameter once supported has moved into SAIF.NetCore.AuthService's SecurityClient.GetSuffixRole*.
No type in this repository references SAIF.NetCore.NtlmApiAuth; its only in-repo consumers are unbuilt or netcoreapp3.1 samples, so the Reference Type above reflects the producing-library classification rather than an observed in-repo consumer.
Note: Statements marked with * were inferred from code structure, naming
conventions, or contextual evidence where direct confirmation was not available
in source artifacts.