public Task <IAdaptedConnection> OnConnectionAsync(ConnectionAdapterContext context) { var authFeature = new WindowsAuthFeature(); context.Features.Set <IWindowsAuthFeature>(authFeature); var adapted = new AuthenticationAdaptedConnection(context.ConnectionStream, authFeature); return(Task.FromResult <IAdaptedConnection>(adapted)); }
public async Task OnConnectionAsync(ConnectionFilterContext context) { await _previous.OnConnectionAsync(context); var previousRequest = context.PrepareRequest; var feature = new WindowsAuthFeature(); var wrapper = new WindowsAuthStreamWrapper(context.Connection, feature); context.Connection = wrapper; context.PrepareRequest = features => { previousRequest?.Invoke(features); features.Set(((WindowsAuthStreamWrapper)context.Connection).AuthFeature); }; }
public AuthenticationAdaptedConnection(Stream stream, WindowsAuthFeature authFeature) { _connectionStream = stream; _windowsAuth = authFeature; }
public WindowsAuthStreamWrapper(Stream inStream, WindowsAuthFeature authFeature) { _authFeature = authFeature ?? throw new ArgumentNullException(nameof(authFeature)); _innerStream = inStream ?? throw new ArgumentNullException(nameof(inStream)); }
public WindowsAuthStreamWrapper(Stream inStream, WindowsAuthFeature authFeature) { _authFeature = authFeature; _innerStream = inStream; }