6 implementations of IKeyEscrowSink
Microsoft.AspNetCore.DataProtection (2)
KeyManagement\KeyEscrowServiceProviderExtensions.cs (1)
24private sealed class AggregateKeyEscrowSink : IKeyEscrowSink
KeyManagement\XmlKeyManager.cs (1)
721private sealed class AggregateKeyEscrowSink : IKeyEscrowSink
Microsoft.AspNetCore.DataProtection.Tests (4)
Internal\KeyManagementOptionsSetupTest.cs (2)
134private class MyKeyEscrowSink1 : IKeyEscrowSink 142private class MyKeyEscrowSink2 : IKeyEscrowSink
RegistryPolicyResolverTests.cs (2)
306private class MyKeyEscrowSink1 : IKeyEscrowSink 314private class MyKeyEscrowSink2 : IKeyEscrowSink
39 references to IKeyEscrowSink
Microsoft.AspNetCore.DataProtection (32)
DataProtectionBuilderExtensions.cs (10)
53/// Registers a <see cref="IKeyEscrowSink"/> to perform escrow before keys are persisted to storage. 56/// <param name="sink">The instance of the <see cref="IKeyEscrowSink"/> to register.</param> 61public static IDataProtectionBuilder AddKeyEscrowSink(this IDataProtectionBuilder builder, IKeyEscrowSink sink) 75/// Registers a <see cref="IKeyEscrowSink"/> to perform escrow before keys are persisted to storage. 77/// <typeparam name="TImplementation">The concrete type of the <see cref="IKeyEscrowSink"/> to register.</typeparam> 84where TImplementation : class, IKeyEscrowSink 101/// Registers a <see cref="IKeyEscrowSink"/> to perform escrow before keys are persisted to storage. 104/// <param name="factory">A factory that creates the <see cref="IKeyEscrowSink"/> instance.</param> 109public static IDataProtectionBuilder AddKeyEscrowSink(this IDataProtectionBuilder builder, Func<IServiceProvider, IKeyEscrowSink> factory) 116var instance = factory(services);
Internal\KeyManagementOptionsSetup.cs (1)
60foreach (var escrowSink in escrowSinks)
KeyManagement\IKeyEscrowSink.cs (2)
14/// <see cref="IKeyEscrowSink"/> is distinct from <see cref="IXmlRepository"/> in that 15/// <see cref="IKeyEscrowSink"/> provides a write-only interface and instances handle unencrypted key material,
KeyManagement\KeyEscrowServiceProviderExtensions.cs (6)
15/// Gets an aggregate <see cref="IKeyEscrowSink"/> from the underlying <see cref="IServiceProvider"/>. 18public static IKeyEscrowSink? GetKeyEscrowSink(this IServiceProvider services) 20var escrowSinks = services?.GetService<IEnumerable<IKeyEscrowSink>>()?.ToList(); 26private readonly List<IKeyEscrowSink> _sinks; 28public AggregateKeyEscrowSink(List<IKeyEscrowSink> sinks) 35foreach (var sink in _sinks)
KeyManagement\KeyManagementOptions.cs (3)
147/// The list of <see cref="IKeyEscrowSink"/> to store the key material in. 149public IList<IKeyEscrowSink> KeyEscrowSinks { get; } = new List<IKeyEscrowSink>();
KeyManagement\XmlKeyManager.cs (4)
55private readonly IKeyEscrowSink? _keyEscrowSink; 723private readonly IList<IKeyEscrowSink> _sinks; 725public AggregateKeyEscrowSink(IList<IKeyEscrowSink> sinks) 732foreach (var sink in _sinks)
RegistryPolicy.cs (2)
14IEnumerable<IKeyEscrowSink> keyEscrowSinks, 24public IEnumerable<IKeyEscrowSink> KeyEscrowSinks { get; }
RegistryPolicyResolver.cs (4)
54typeof(IKeyEscrowSink).AssertIsAssignableFrom(TypeExtensions.GetTypeWithTrimFriendlyErrorMessage(candidate)); 104Array.Empty<IKeyEscrowSink>() : 105new IKeyEscrowSink[escrowSinks.Count]; 108keyEscrowSinks[i] = _activator.CreateInstance<IKeyEscrowSink>(escrowSinks[i]);
Microsoft.AspNetCore.DataProtection.Tests (7)
KeyManagement\KeyEscrowServiceProviderExtensionsTests.cs (6)
35var mockKeyEscrowSink = new Mock<IKeyEscrowSink>(); 43serviceCollection.AddSingleton<IKeyEscrowSink>(mockKeyEscrowSink.Object); 60var mockKeyEscrowSink1 = new Mock<IKeyEscrowSink>(); 67var mockKeyEscrowSink2 = new Mock<IKeyEscrowSink>(); 75serviceCollection.AddSingleton<IKeyEscrowSink>(mockKeyEscrowSink1.Object); 76serviceCollection.AddSingleton<IKeyEscrowSink>(mockKeyEscrowSink2.Object);
KeyManagement\XmlKeyManagerTests.cs (1)
190var mockKeyEscrow = new Mock<IKeyEscrowSink>();