public static string GetValue(this IConfiguration configuration, ImmutablePath path, string keySuffix = null, string keyPrefix = "vault")
        {
            var sb = new StringBuilder();
            if (keyPrefix != null) sb.Append($"{keyPrefix}:");
            sb.Append(path.ToConfigurationPath());
            if (keyPrefix != null) sb.Append($":{keySuffix}");

            var key = sb.ToString();

            return configuration[key];
        }
 public static async Task WriteSecretAsync<T>(this VaultClient client, ImmutablePath path, T value)
 {
     await client.WriteSecretAsync(path.ToVaultPath(), value);
 }