using System; using VaultSharp.V1.AuthMethods; using VaultSharp.V1.AuthMethods.Token; namespace GB5Shared.Vault.Auth { /// /// Token-based Vault authentication — the only method in production use across GB5 today. /// public sealed class TokenVaultAuthMethodProvider : IVaultAuthMethodProvider { public VaultAuthMethod Method => VaultAuthMethod.Token; public IAuthMethodInfo Create(VaultOptions options) { if (string.IsNullOrWhiteSpace(options.Token)) throw new InvalidOperationException( "Vault:Token must be configured when Vault:AuthMethod is 'Token'."); return new TokenAuthMethodInfo(options.Token); } } }