Table of Contents

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.