OnTheFlySettings.AWSSecretManager.Client
1.0.0
dotnet add package OnTheFlySettings.AWSSecretManager.Client --version 1.0.0
NuGet\Install-Package OnTheFlySettings.AWSSecretManager.Client -Version 1.0.0
<PackageReference Include="OnTheFlySettings.AWSSecretManager.Client" Version="1.0.0" />
<PackageVersion Include="OnTheFlySettings.AWSSecretManager.Client" Version="1.0.0" />
<PackageReference Include="OnTheFlySettings.AWSSecretManager.Client" />
paket add OnTheFlySettings.AWSSecretManager.Client --version 1.0.0
#r "nuget: OnTheFlySettings.AWSSecretManager.Client, 1.0.0"
#:package OnTheFlySettings.AWSSecretManager.Client@1.0.0
#addin nuget:?package=OnTheFlySettings.AWSSecretManager.Client&version=1.0.0
#tool nuget:?package=OnTheFlySettings.AWSSecretManager.Client&version=1.0.0
OnTheFlySettings.AWSSecretManager.Client
| Packages | Version | Downloads |
|---|---|---|
| OnTheFlySettings | ||
| OnTheFlySettings.Client | ||
| OnTheFlySettings.AzureKeyVault.Client | ||
| OnTheFlySettings.AWSSecretManager.Client |

The .NET Client library allows you to interact with the OnTheFlySettings GET & PUT endpoints.
Let us say your settings are secrets in AWS Secret Manager.

You add the library to your project in your Program.cs or Startup.cs:
using OnTheFlySettings.AWSSecretManager.Client;
services.AddOnTheFlySettingsClient(settings =>
{
settings.BaseUrl = "https://localhost:7277";
settings.TimeoutMilliseconds = 1000 * 60 * 5;
var region = Environment.GetEnvironmentVariable("AWS_REGION");
var accessKeyId = Environment.GetEnvironmentVariable("AWS_ACCESS_KEY_ID");
var secretAccessKey = Environment.GetEnvironmentVariable("AWS_SECRET_ACCESS_KEY");
settings.AWS.SecretId = "MyHealthCheckBasicSettings";
settings.AWS.Region = region;
//settings.AWS.UseDefaultAWSCredentialChain = true;
// OR
settings.AWS.Credentials.AccessKeyId = accessKeyId;
settings.AWS.Credentials.SecretAccessKey = secretAccessKey;
});
The library provides an IOnTheFlySettingsClient interface.
You can provide your headers (including Auth) if needed.
public interface IOnTheFlySettingsClient
{
Task<IDictionary<string, string>> GetAllAWSSecretManagerSecretsAsync(CancellationToken cancellationToken = default);
Task<IDictionary<string, string>> GetAllAWSSecretManagerSecretsAsync(string secretId, string region, CancellationToken cancellationToken = default);
Task<TSettings> GetSettingsAsync<TSettings>(string route = "/settings",
Action<HttpRequestHeaders> addHeaders = null)
where TSettings : class, new();
Task<bool> ReplaceSettingsAsync(IDictionary<string, string> newSettings,
string route = "/settings/aws/replace",
Action<HttpRequestHeaders> addHeaders = null);
}
You can inject interface and call the GetAllAWSSecretManagerSecretsAsync, GetSettingsAsync & ReplaceSettingsAsync methods:
Get all AWS Secret Manager secrets:
If you have provided the Region & SecretId in the settings, you can do this:
var client = _serviceProvider.GetRequiredService<IOnTheFlySettingsClient>();
var awsSecrets = await client.GetAllAWSSecretManagerSecretsAsync();
OR
you can use the overload & provide the Region & SecretId:
var client = _serviceProvider.GetRequiredService<IOnTheFlySettingsClient>();
string region = "<<your aws region here>>";
string secretId = "<<your aws secretId here>>";
var awsSecrets = await client.GetAllAWSSecretManagerSecretsAsync(secretId, region);
Get current settings from API:
var client = _serviceProvider.GetRequiredService<IOnTheFlySettingsClient>();
var response = await client.GetSettingsAsync<MyHealthCheckBasicSettings>();
Update settings in API:
You can update the settings in awsSecrets returned.
and you can filter awsSecrets to contain only the settings you want to update.
var client = _serviceProvider.GetRequiredService<IOnTheFlySettingsClient>();
var response = await client.ReplaceSettingsAsync(awsSecrets);
Documentation
| Product | Versions Compatible and additional computed target framework versions. |
|---|---|
| .NET | net5.0 was computed. net5.0-windows was computed. net6.0 was computed. net6.0-android was computed. net6.0-ios was computed. net6.0-maccatalyst was computed. net6.0-macos was computed. net6.0-tvos was computed. net6.0-windows was computed. net7.0 was computed. net7.0-android was computed. net7.0-ios was computed. net7.0-maccatalyst was computed. net7.0-macos was computed. net7.0-tvos was computed. net7.0-windows was computed. net8.0 was computed. net8.0-android was computed. net8.0-browser was computed. net8.0-ios was computed. net8.0-maccatalyst was computed. net8.0-macos was computed. net8.0-tvos was computed. net8.0-windows was computed. net9.0 was computed. net9.0-android was computed. net9.0-browser was computed. net9.0-ios was computed. net9.0-maccatalyst was computed. net9.0-macos was computed. net9.0-tvos was computed. net9.0-windows was computed. net10.0 was computed. net10.0-android was computed. net10.0-browser was computed. net10.0-ios was computed. net10.0-maccatalyst was computed. net10.0-macos was computed. net10.0-tvos was computed. net10.0-windows was computed. |
| .NET Core | netcoreapp2.0 was computed. netcoreapp2.1 was computed. netcoreapp2.2 was computed. netcoreapp3.0 was computed. netcoreapp3.1 was computed. |
| .NET Standard | netstandard2.0 is compatible. netstandard2.1 was computed. |
| .NET Framework | net461 was computed. net462 was computed. net463 was computed. net47 was computed. net471 was computed. net472 was computed. net48 was computed. net481 was computed. |
| MonoAndroid | monoandroid was computed. |
| MonoMac | monomac was computed. |
| MonoTouch | monotouch was computed. |
| Tizen | tizen40 was computed. tizen60 was computed. |
| Xamarin.iOS | xamarinios was computed. |
| Xamarin.Mac | xamarinmac was computed. |
| Xamarin.TVOS | xamarintvos was computed. |
| Xamarin.WatchOS | xamarinwatchos was computed. |
-
.NETStandard 2.0
- AWSSDK.SecretsManager (>= 4.0.100.14)
- Microsoft.Extensions.DependencyInjection.Abstractions (>= 10.0.12)
- Microsoft.Extensions.Http (>= 10.0.12)
NuGet packages
This package is not used by any NuGet packages.
GitHub repositories
This package is not used by any popular GitHub repositories.
| Version | Downloads | Last Updated |
|---|---|---|
| 1.0.0 | 86 | 10/6/2026 |
Initial release.