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

## KeyRingOptions Class

Configuration of the key ring\.

```csharp
public sealed class KeyRingOptions
```

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

## KeyRingOptions\.KeyRolloverPropagation Property {#Abblix.Jwt.ExternalKeys.KeyRingOptions.KeyRolloverPropagation}

How long a newly minted key is published before the ring starts producing with it\.

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

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

### Remarks
A consumer caches the published key set, so a key that starts signing the moment it appears will sign
tokens that consumers with a warm cache cannot yet verify\. Publishing first and producing later closes
that window: by the time a key leads its algorithm, every consumer refreshing on the usual schedule has
already seen it\.

The value is therefore a property of how long consumers cache, not of how often keys rotate\. An hour
covers the caching most providers and clients default to\.
