public AnonymousIdentificationMiddleware( OwinMiddleware next, IAppBuilder app, AnonymousIdentificationOptions options) : base(next) { _options = options; _logger = app.CreateLogger <AnonymousIdentificationMiddleware>(); if (string.IsNullOrEmpty(options.CookieName)) { options.CookieName = ".ASPXANONYMOUS"; } if (string.IsNullOrEmpty(options.HeaderName)) { options.HeaderName = "X-AnonymousId"; } if (options.CookieManager == null) { options.CookieManager = new ChunkingCookieManager(); } if (options.AnonymousIdDataFormat == null) { IDataProtector protector = app.CreateDataProtector( typeof(AnonymousIdentificationMiddleware).FullName, "Anonymous", "v1"); options.AnonymousIdDataFormat = new AnonymousIdDataFormat(protector); } }
public static IAppBuilder UseAnonymousAuthentication( this IAppBuilder app, AnonymousIdentificationOptions options) { if (app == null) { throw new ArgumentNullException(nameof(app)); } app.Use(typeof(AnonymousIdentificationMiddleware), app, options); app.UseStageMarker(PipelineStage.PostAuthenticate); return(app); }