Udostępnij za pośrednictwem


Różne interfejsy API ASP.NET Core Data Protection

Ostrzeżenie

Typy implementujące dowolny z następujących interfejsów powinny być bezpieczne wątkowo dla wielu wywołujących.

ISecret

Interfejs ISecret reprezentuje wartość wpisu tajnego, taką jak materiał klucza kryptograficznego. Zawiera on następującą powierzchnię interfejsu API:

  • Length: int

  • Dispose(): void

  • WriteSecretIntoBuffer(ArraySegment<byte> buffer): void

Metoda WriteSecretIntoBuffer wypełnia podany bufor wartością nieprzetworzonego wpisu tajnego. Powodem, dla którego ten interfejs API przyjmuje bufor jako parametr zamiast zwracać bezpośrednio, jest to, że obiekt wywołujący może przypiąć obiekt buforu, ograniczając ujawnienie wpisów tajnych do zarządzanego modułu odśmiecania byte[] pamięci.

Typ to konkretna Secret implementacja ISecret , w której wartość wpisu tajnego jest przechowywana w pamięci procesowej. Na platformach Windows wartość wpisu tajnego jest szyfrowana za pośrednictwem programu CryptProtectMemory.