Anteckning
Åtkomst till den här sidan kräver auktorisering. Du kan prova att logga in eller ändra kataloger.
Åtkomst till den här sidan kräver auktorisering. Du kan prova att ändra kataloger.
              DefaultKeyResolution.ShouldGenerateNewKey visar inte längre om standardnyckeln är nära dess förfallotid.
Version lanserad
ASP.NET Core 9.0 Förhandsversion 3
Tidigare beteende
Det var en odokumenterad, men konsekvent, funktion i API:n som innebar att ShouldGenerateNewKey var true om standardnyckeln var inom två dagar från dess utgångstid (en översimplifiering). Ledtiden baserades på polling-intervallet ICacheableKeyRingProvider, vilket inte var något IDefaultKeyResolver.ResolveDefaultKeyPolicy borde ha varit beroende av (eftersom alternativa implementeringar förmodligen inte skulle känna till dessa detaljer).
Nytt beteende
Från och med .NET 9, om ShouldGenerateNewKey är true, anger det att det antingen inte finns någon standardnyckel eller att av någon annan principorsak (i en specialiserad implementering av IDefaultKeyResolver) ska en ny nyckel genereras. Fattar ICacheableKeyRingProvider ett eget beslut om förfallotiden är tillräckligt nära för att generera en ny nyckel.
Typ av brytande ändring
Den här ändringen är en beteendeförändring.
Orsak till ändring
Den här ändringen gjordes av två skäl:
- Ändra logiken kring nyckelgenerering nära förfallotid.
 - För att göra det enklare att implementera en anpassad 
IDefaultKeyResolver. 
Rekommenderad åtgärd
Om du har en IDefaultKeyResolver implementering som försöker replikera förfallologik kan du ta bort den logiken (men det är också bra att lämna den).
Om du använder IDefaultKeyResolver direkt för att avgöra om förfall är väntande kan du kontrollera standardnyckelns ExpirationDate egenskap direkt.
Berörda API:er
Microsoft.AspNetCore.DataProtection.KeyManagement.Internal.DefaultKeyResolution.ShouldGenerateNewKey