3 interfaces inheriting from IDataProtector
Microsoft.AspNetCore.DataProtection (1)
IPersistedDataProtector.cs (1)
12public interface IPersistedDataProtector : IDataProtector
Microsoft.AspNetCore.DataProtection.Abstractions (1)
ISpanDataProtector.cs (1)
19public interface ISpanDataProtector : IDataProtector
Microsoft.AspNetCore.DataProtection.Extensions (1)
ITimeLimitedDataProtector.cs (1)
18public interface ITimeLimitedDataProtector : IDataProtector
3 implementations of IDataProtector
Aspire.Dashboard.Tests (1)
LocalBrowserStorageTests.cs (1)
275private sealed class TestDataProtector : IDataProtector
Microsoft.AspNetCore.DataProtection (1)
KeyManagement\KeyRingBasedDataProtector.cs (1)
24internal unsafe class KeyRingBasedDataProtector : IDataProtector, IPersistedDataProtector
Microsoft.AspNetCore.DataProtection.Extensions (1)
DataProtectionAdvancedExtensions.cs (1)
99private sealed class TimeLimitedWrappingProtector : IDataProtector
87 references to IDataProtector
Aspire.Dashboard.Tests (1)
LocalBrowserStorageTests.cs (1)
277public IDataProtector CreateProtector(string purpose)
Microsoft.AspNetCore.Antiforgery (1)
Internal\DefaultAntiforgeryTokenSerializer.cs (1)
18private readonly IDataProtector _defaultCryptoSystem;
Microsoft.AspNetCore.Authentication (10)
PropertiesDataFormat.cs (2)
17/// <param name="protector">The <see cref="IDataProtector"/>.</param> 18public PropertiesDataFormat(IDataProtector protector)
SecureDataFormat.cs (6)
18private readonly IDataProtector _protector; 24/// <param name="protector">The <see cref="IDataProtector"/>.</param> 25public SecureDataFormat(IDataSerializer<TData> serializer, IDataProtector protector) 42var protector = _protector; 87var protector = _protector; 110private static byte[]? Unprotect(IDataProtector protector, string protectedText)
TicketDataFormat.cs (2)
17/// <param name="protector">The <see cref="IDataProtector"/>.</param> 18public TicketDataFormat(IDataProtector protector)
Microsoft.AspNetCore.Authentication.Cookies (1)
PostConfigureCookieAuthenticationOptions.cs (1)
43var dataProtector = options.DataProtectionProvider.CreateProtector("Microsoft.AspNetCore.Authentication.Cookies.CookieAuthenticationMiddleware", name, "v2");
Microsoft.AspNetCore.Authentication.OAuth (1)
OAuthPostConfigureOptions.cs (1)
46var dataProtector = options.DataProtectionProvider.CreateProtector(
Microsoft.AspNetCore.Authentication.OpenIdConnect (2)
OpenIdConnectPostConfigureOptions.cs (2)
47var dataProtector = options.DataProtectionProvider.CreateProtector( 54var dataProtector = options.DataProtectionProvider.CreateProtector(
Microsoft.AspNetCore.Authentication.Twitter (1)
TwitterPostConfigureOptions.cs (1)
39var dataProtector = options.DataProtectionProvider.CreateProtector(
Microsoft.AspNetCore.Authentication.WsFederation (1)
WsFederationPostConfigureOptions.cs (1)
47var dataProtector = options.DataProtectionProvider.CreateProtector(
Microsoft.AspNetCore.Components.Endpoints (2)
src\aspnetcore\src\Shared\Components\ProtectedPrerenderComponentApplicationStore.cs (1)
11private IDataProtector _protector = default!; // Assigned in all constructor paths
TempData\CookieTempDataProvider.cs (1)
20private readonly IDataProtector _dataProtector;
Microsoft.AspNetCore.Components.Server (8)
Circuits\CircuitIdFactory.cs (1)
21private readonly IDataProtector _protector;
Circuits\ServerComponentDeserializer.cs (1)
60private readonly IDataProtector _dataProtector;
ProtectedBrowserStorage\ProtectedBrowserStorage.cs (5)
20private readonly ConcurrentDictionary<string, IDataProtector> _cachedDataProtectorsByPurpose 21= new ConcurrentDictionary<string, IDataProtector>(StringComparer.Ordinal); 138var protector = GetOrCreateCachedProtector(purpose); 145var protector = GetOrCreateCachedProtector(purpose); 162private IDataProtector GetOrCreateCachedProtector(string purpose)
src\aspnetcore\src\Shared\Components\ProtectedPrerenderComponentApplicationStore.cs (1)
11private IDataProtector _protector = default!; // Assigned in all constructor paths
Microsoft.AspNetCore.DataProtection (4)
EphemeralDataProtectionProvider.cs (1)
67public IDataProtector CreateProtector(string purpose)
KeyManagement\KeyManagementOptions.cs (1)
36/// to <see cref="IDataProtector.Protect(byte[])"/> may fail. The system may end up
KeyManagement\KeyRingBasedDataProtectionProvider.cs (1)
22public IDataProtector CreateProtector(string purpose)
KeyManagement\KeyRingBasedDataProtector.cs (1)
65public IDataProtector CreateProtector(string purpose)
Microsoft.AspNetCore.DataProtection.Abstractions (29)
DataProtectionCommonExtensions.cs (21)
23/// Creates an <see cref="IDataProtector"/> given a list of purposes. 28/// <returns>An <see cref="IDataProtector"/> tied to the provided purpose chain.</returns> 34public static IDataProtector CreateProtector(this IDataProtectionProvider provider, IEnumerable<string> purposes) 47retVal = retVal.CreateProtector(purpose) ?? CryptoUtil.Fail<IDataProtector>("CreateProtector returned null."); 56Debug.Assert(retVal is IDataProtector); // CreateProtector is supposed to return an instance of this interface 57return (IDataProtector)retVal; 61/// Creates an <see cref="IDataProtector"/> given a list of purposes. 64/// <param name="purpose">The primary purpose used to create the <see cref="IDataProtector"/>.</param> 67/// <returns>An <see cref="IDataProtector"/> tied to the provided purpose chain.</returns> 73public static IDataProtector CreateProtector(this IDataProtectionProvider provider, string purpose, params string[] subPurposes) 82IDataProtector? protector = provider.CreateProtector(purpose); 87return protector ?? CryptoUtil.Fail<IDataProtector>("CreateProtector returned null."); 111/// Retrieves an <see cref="IDataProtector"/> from an <see cref="IServiceProvider"/> given a list of purposes. 117/// <returns>An <see cref="IDataProtector"/> tied to the provided purpose chain.</returns> 123public static IDataProtector GetDataProtector(this IServiceProvider services, IEnumerable<string> purposes) 132/// Retrieves an <see cref="IDataProtector"/> from an <see cref="IServiceProvider"/> given a list of purposes. 136/// <param name="purpose">The primary purpose used to create the <see cref="IDataProtector"/>.</param> 139/// <returns>An <see cref="IDataProtector"/> tied to the provided purpose chain.</returns> 145public static IDataProtector GetDataProtector(this IServiceProvider services, string purpose, params string[] subPurposes) 159public static string Protect(this IDataProtector protector, string plaintext) 193public static string Unprotect(this IDataProtector protector, string protectedData)
IDataProtectionProvider.cs (5)
7/// An interface that can be used to create <see cref="IDataProtector"/> instances. 12/// Creates an <see cref="IDataProtector"/> given a purpose. 15/// The purpose to be assigned to the newly-created <see cref="IDataProtector"/>. 20/// different <see cref="IDataProtector"/> instances created with two different <paramref name="purpose"/> 24IDataProtector CreateProtector(string purpose);
ISpanDataProtector.cs (3)
17/// Is an optimized version of <see cref="IDataProtector"/>. 28/// This method provides an optimized, streaming alternative to <see cref="IDataProtector.Protect(byte[])"/>. 43/// This method provides an optimized, streaming alternative to <see cref="IDataProtector.Unprotect(byte[])"/>.
Microsoft.AspNetCore.DataProtection.Extensions (16)
DataProtectionAdvancedExtensions.cs (4)
65/// Converts an <see cref="IDataProtector"/> into an <see cref="ITimeLimitedDataProtector"/> 68/// <param name="protector">The <see cref="IDataProtector"/> to convert to a time-limited protector.</param> 70public static ITimeLimitedDataProtector ToTimeLimitedDataProtector(this IDataProtector protector) 109public IDataProtector CreateProtector(string purpose)
TimeLimitedDataProtector.cs (12)
18/// Wraps an existing <see cref="IDataProtector"/> and appends a purpose that allows 26private readonly IDataProtector _innerProtector; 27private IDataProtector? _innerProtectorWithTimeLimitedPurpose; // created on-demand 29public TimeLimitedDataProtector(IDataProtector innerProtector) 41private IDataProtector GetInnerProtectorWithTimeLimitedPurpose() 44var retVal = Volatile.Read(ref _innerProtectorWithTimeLimitedPurpose); 47var newValue = _innerProtector.CreateProtector(MyPurposeString); // we always append our purpose to the end of the chain 57var innerProtector = GetInnerProtectorWithTimeLimitedPurpose(); 86var innerProtector = GetInnerProtectorWithTimeLimitedPurpose(); 195IDataProtector IDataProtectionProvider.CreateProtector(string purpose) 202byte[] IDataProtector.Protect(byte[] plaintext) 210byte[] IDataProtector.Unprotect(byte[] protectedData)
Microsoft.AspNetCore.DataProtection.MicroBenchmarks (3)
Benchmarks\KeyRingProtectorBenchmarks.cs (2)
13private IDataProtector _shortPurposeProtector = null!; 14private IDataProtector _cookiePurposeProtector = null!;
Benchmarks\SpanDataProtectorComparison.cs (1)
56private IDataProtector _dataProtector = null!;
Microsoft.AspNetCore.Identity (3)
DataProtectorTokenProvider.cs (3)
46/// Gets the <see cref="IDataProtector"/> for this instance. 49/// The <see cref="IDataProtector"/> for this instance. 51protected IDataProtector Protector { get; private set; }
Microsoft.AspNetCore.Mvc.ViewFeatures (1)
CookieTempDataProvider.cs (1)
25private readonly IDataProtector _dataProtector;
Microsoft.AspNetCore.Session (3)
CookieProtection.cs (2)
12internal static string Protect(IDataProtector protector, string data) 26internal static string Unprotect(IDataProtector protector, string? protectedText, ILogger logger)
SessionMiddleware.cs (1)
25private readonly IDataProtector _dataProtector;