#### [Abblix\.Jwt\.Azure](https://www.abblix.com/en/docs/api/abblix-jwt-azure 'index')
### [Abblix\.Jwt\.Azure](https://www.abblix.com/en/docs/api/abblix-jwt-azure/Abblix.Jwt.Azure 'Abblix\.Jwt\.Azure')

## AzureKeyVaultOptions Class

Points the custodian at an Azure Key Vault: which vault and how to authenticate to it, and nothing about which
keys to use\. Which keys, and therefore whether their private halves ever enter this process, is the placement
choice that follows the custodian registration\.

```csharp
public sealed class AzureKeyVaultOptions
```

Inheritance [System\.Object](https://learn.microsoft.com/en-us/dotnet/api/system.object 'System\.Object') → AzureKeyVaultOptions
### Properties

## AzureKeyVaultOptions\.ClientId Property {#Abblix.Jwt.Azure.AzureKeyVaultOptions.ClientId}

Application \(client\) ID of the service principal; see [TenantId](https://www.abblix.com/en/docs/api/abblix-jwt-azure/Abblix.Jwt.Azure.AzureKeyVaultOptions#Abblix.Jwt.Azure.AzureKeyVaultOptions.TenantId 'Abblix\.Jwt\.Azure\.AzureKeyVaultOptions\.TenantId')\.

```csharp
public string ClientId { get; set; }
```

#### Property Value
[System\.String](https://learn.microsoft.com/en-us/dotnet/api/system.string 'System\.String')

## AzureKeyVaultOptions\.ClientSecret Property {#Abblix.Jwt.Azure.AzureKeyVaultOptions.ClientSecret}

Client secret of the service principal; see [TenantId](https://www.abblix.com/en/docs/api/abblix-jwt-azure/Abblix.Jwt.Azure.AzureKeyVaultOptions#Abblix.Jwt.Azure.AzureKeyVaultOptions.TenantId 'Abblix\.Jwt\.Azure\.AzureKeyVaultOptions\.TenantId')\. Never hardcode it\.

```csharp
public string ClientSecret { get; set; }
```

#### Property Value
[System\.String](https://learn.microsoft.com/en-us/dotnet/api/system.string 'System\.String')

## AzureKeyVaultOptions\.KeyVaultUri Property {#Abblix.Jwt.Azure.AzureKeyVaultOptions.KeyVaultUri}

The vault URI, e\.g\. `https://my-vault.vault.azure.net/`\.

```csharp
public System.Uri KeyVaultUri { get; set; }
```

#### Property Value
[System\.Uri](https://learn.microsoft.com/en-us/dotnet/api/system.uri 'System\.Uri')

## AzureKeyVaultOptions\.PooledConnectionLifetime Property {#Abblix.Jwt.Azure.AzureKeyVaultOptions.PooledConnectionLifetime}

How long a pooled HTTP connection is reused before it is recycled\. The Azure SDK keeps one client for the
vault, so recycling connections lets it pick up DNS changes without handler rotation \(default 2 minutes,
matching the default IHttpClientFactory handler lifetime\)\.

```csharp
public System.TimeSpan PooledConnectionLifetime { get; set; }
```

#### Property Value
[System\.TimeSpan](https://learn.microsoft.com/en-us/dotnet/api/system.timespan 'System\.TimeSpan')

## AzureKeyVaultOptions\.TenantId Property {#Abblix.Jwt.Azure.AzureKeyVaultOptions.TenantId}

Tenant ID of the service principal\. When [TenantId](https://www.abblix.com/en/docs/api/abblix-jwt-azure/Abblix.Jwt.Azure.AzureKeyVaultOptions#Abblix.Jwt.Azure.AzureKeyVaultOptions.TenantId 'Abblix\.Jwt\.Azure\.AzureKeyVaultOptions\.TenantId'), [ClientId](https://www.abblix.com/en/docs/api/abblix-jwt-azure/Abblix.Jwt.Azure.AzureKeyVaultOptions#Abblix.Jwt.Azure.AzureKeyVaultOptions.ClientId 'Abblix\.Jwt\.Azure\.AzureKeyVaultOptions\.ClientId') and
[ClientSecret](https://www.abblix.com/en/docs/api/abblix-jwt-azure/Abblix.Jwt.Azure.AzureKeyVaultOptions#Abblix.Jwt.Azure.AzureKeyVaultOptions.ClientSecret 'Abblix\.Jwt\.Azure\.AzureKeyVaultOptions\.ClientSecret') are all set the custodian authenticates with a client\-secret credential;
leave them blank to fall back to the default Azure credential chain \(a managed identity in production,
an Azure CLI sign\-in, or the `AZURE_TENANT_ID` / `AZURE_CLIENT_ID` / `AZURE_CLIENT_SECRET`
environment variables\)\. Source the secret from the environment or a secret store, never hardcode it\.

```csharp
public string TenantId { get; set; }
```

#### Property Value
[System\.String](https://learn.microsoft.com/en-us/dotnet/api/system.string 'System\.String')
