Cirreum.Secrets.Azure 2.0.0

dotnet add package Cirreum.Secrets.Azure --version 2.0.0
                    
NuGet\Install-Package Cirreum.Secrets.Azure -Version 2.0.0
                    
This command is intended to be used within the Package Manager Console in Visual Studio, as it uses the NuGet module's version of Install-Package.
<PackageReference Include="Cirreum.Secrets.Azure" Version="2.0.0" />
                    
For projects that support PackageReference, copy this XML node into the project file to reference the package.
<PackageVersion Include="Cirreum.Secrets.Azure" Version="2.0.0" />
                    
Directory.Packages.props
<PackageReference Include="Cirreum.Secrets.Azure" />
                    
Project file
For projects that support Central Package Management (CPM), copy this XML node into the solution Directory.Packages.props file to version the package.
paket add Cirreum.Secrets.Azure --version 2.0.0
                    
#r "nuget: Cirreum.Secrets.Azure, 2.0.0"
                    
#r directive can be used in F# Interactive and Polyglot Notebooks. Copy this into the interactive tool or source code of the script to reference the package.
#:package Cirreum.Secrets.Azure@2.0.0
                    
#:package directive can be used in C# file-based apps starting in .NET 10 preview 4. Copy this into a .cs file before any lines of code to reference the package.
#addin nuget:?package=Cirreum.Secrets.Azure&version=2.0.0
                    
Install as a Cake Addin
#tool nuget:?package=Cirreum.Secrets.Azure&version=2.0.0
                    
Install as a Cake Tool

Cirreum.Secrets.Azure

NuGet Version NuGet Downloads GitHub Release License .NET

Azure Key Vault secrets provider for the Cirreum Foundation Framework

Overview

Cirreum.Secrets.Azure provides seamless integration between Azure Key Vault and the Cirreum secrets provider framework, enabling secure configuration management for .NET applications.

This package implements the SecretsProviderRegistrar pattern to automatically configure Azure Key Vault as a secrets source, with built-in support for Azure Identity authentication and flexible configuration options.

Key Features

  • Seamless Integration: Drop-in Azure Key Vault support for Cirreum-based applications
  • Azure Identity: the nested Credential block selects DefaultAzureCredential, a deterministic ManagedIdentityCredential, or developer tooling credentials, with optional tenant-specific authentication
  • Flexible Configuration: Two-tier settings model for provider and instance-level configuration
  • Activity Tracing: Built-in support for distributed tracing with Azure SDK telemetry
  • Production Ready: Follows Microsoft.Extensions.* patterns and conventions

Usage

// Register Azure Key Vault as a secrets provider
services.AddSecretsProvider<AzureKeyVaultRegistrar>(configuration =>
{
    configuration.Configure<AzureKeyVaultSettings>(settings =>
    {
        settings.Instances.Add(new AzureKeyVaultInstanceSettings
        {
            Endpoint = "https://your-vault.vault.azure.net/",
            Identifier = "your-tenant-id" // Optional
        });
    });
});

Credential Modes

The nested Credential block (shared across Cirreum providers) selects how the instance authenticates:

Mode Credential When to use
Default DefaultAzureCredential General-purpose; tries the full credential chain
ManagedIdentity ManagedIdentityCredential Production; deterministic, no chain fallback
Developer Visual Studio → Azure CLI → Azure PowerShell Local runs as the signed-in developer
settings.Instances.Add(new AzureKeyVaultInstanceSettings
{
    Endpoint = "https://your-vault.vault.azure.net/",
    Credential = new()
    {
        Mode = CredentialMode.ManagedIdentity,
        IdentityId = "<user-assigned-client-id>" // Optional; omit for system-assigned
    }
});
"Instances": {
  "default": {
    "Endpoint": "https://your-vault.vault.azure.net/",
    "Credential": { "Mode": "ManagedIdentity", "IdentityId": "<user-assigned-client-id>" }
  }
}

IdentityId selects a user-assigned managed identity: under ManagedIdentity it picks the identity directly, and under Default it pins the chain's managed-identity leg. It is ignored by Developer.

Identifier sets the tenant ID and applies to Default and Developer. It has no effect under ManagedIdentity, since a managed identity's tenant is implicit to the resource it's attached to.

Configuration

The provider supports hierarchical configuration through:

  • AzureKeyVaultSettings: Provider-level settings
  • AzureKeyVaultInstanceSettings: Individual Key Vault instance settings. Set Endpoint to the vault's URI (appears as "DNS Name" in the Azure portal) — it's parsed into the vault URI used by the underlying SecretClient internally.

Contribution Guidelines

  1. Be conservative with new abstractions
    The API surface must remain stable and meaningful.

  2. Limit dependency expansion
    Only add foundational, version-stable dependencies.

  3. Favor additive, non-breaking changes
    Breaking changes ripple through the entire ecosystem.

  4. Include thorough unit tests
    All primitives and patterns should be independently testable.

  5. Document architectural decisions
    Context and reasoning should be clear for future maintainers.

  6. Follow .NET conventions
    Use established patterns from Microsoft.Extensions.* libraries.

Versioning

Cirreum.Secrets.Azure follows Semantic Versioning:

  • Major - Breaking API changes
  • Minor - New features, backward compatible
  • Patch - Bug fixes, backward compatible

License

This project is licensed under the MIT License - see the LICENSE file for details.


Cirreum Foundation Framework
Layered simplicity for modern .NET

Product Compatible and additional computed target framework versions.
.NET net10.0 is compatible.  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. 
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.

NuGet packages (1)

Showing the top 1 NuGet packages that depend on Cirreum.Secrets.Azure:

Package Downloads
Cirreum.Runtime.Secrets

The Runtime Secrets Provider configuration.

GitHub repositories

This package is not used by any popular GitHub repositories.

Version Downloads Last Updated
2.0.0 128 7/30/2026
1.1.0 106 7/28/2026
1.0.21 118 7/20/2026
1.0.20 107 7/19/2026
1.0.19 125 7/4/2026
1.0.18 98 7/4/2026
1.0.17 122 5/7/2026
1.0.16 122 5/1/2026
1.0.15 118 4/28/2026
1.0.14 119 4/26/2026
1.0.12 134 4/14/2026
1.0.11 132 4/13/2026
1.0.10 131 4/10/2026
1.0.9 145 3/13/2026
1.0.8 122 3/12/2026
1.0.7 126 3/9/2026
1.0.6 123 3/6/2026
1.0.5 153 1/22/2026
1.0.4 142 1/21/2026
1.0.3 177 12/20/2025
Loading failed