Microsoft.Identity.Client.ManagedIdentity.V2.MtlsBindingCache
Orchestrates mTLS binding retrieval:
1) local in-memory cache
2) per-key async gate (dedup concurrent mint)
3) persisted cache (best-effort)
4) factory mint + back-fill
Persistence is best-effort and non-throwing.
namespace Microsoft.Identity.Client.ManagedIdentity.V2
{
internal sealed class MtlsBindingCache : IMtlsCertificateCache
{
public MtlsBindingCache(ICertificateCache memory, IPersistentCertificateCache persisted);
public Task<MtlsBindingInfo> GetOrCreateAsync(string cacheKey, Func<Task<MtlsBindingInfo>> factory, CancellationToken cancellationToken, ILoggerAdapter logger);
public void RemoveBadCert(string cacheKey, ILoggerAdapter logger);
}
}