Interface ISecretReferenceResolver
- Namespace
- MailFathom.Infrastructure.Secrets.References
- Assembly
- MailFathom.Infrastructure.dll
Turns one secret-bearing configuration value into material.
public interface ISecretReferenceResolver
Remarks
The contract lives in Infrastructure and is invoked by the host during startup and by the adapters that need
material. It is deliberately unreachable from Application and Domain: a resolver visible there would
give every use case the ability to ask for any secret by name, which is the broad secret access
ADR 0002
forbids normalizing into application code. Application code receives only the narrowly scoped settings each operation needs.
Resolution is asynchronous and cancellable even though every scheme shipped today reads a local file or an environment variable. A managed store is a network call, and retrofitting an asynchronous contract later would break every consumer at the moment a first provider adapter is added.
Methods
- ResolveAsync(string?, CancellationToken)
Resolves one configured value into owned material.