예제 #1
0
        /// <summary>
        /// Adds the <see cref="MAuthMiddleware" /> middleware to the specified <see cref="IApplicationBuilder"/>,
        /// which enables MAuth authentication capabilities.
        /// </summary>
        /// <param name="app">The <see cref="IApplicationBuilder" /> to add the middleware to.</param>
        /// <param name="options">
        /// A <see cref="MAuthMiddlewareOptions"/> that specifies the options for the middleware.
        /// </param>
        /// <returns>A reference to this instance after the operation has completed.</returns>
        public static IApplicationBuilder UseMAuthAuthentication(this IApplicationBuilder app,
                                                                 MAuthMiddlewareOptions options)
        {
            if (app == null)
            {
                throw new ArgumentNullException(nameof(app));
            }

            if (options == null)
            {
                throw new ArgumentNullException(nameof(options));
            }

            return(app.UseMiddleware <MAuthMiddleware>(options));
        }
 public MAuthMiddleware(RequestDelegate next, MAuthMiddlewareOptions options)
 {
     this.next          = next;
     this.options       = options;
     this.authenticator = new MAuthAuthenticator(options);
 }