/// <summary> /// This module requires the security claims to be validated. /// </summary> /// <param name="module"></param> /// <param name="isValid"></param> public static void RequiresSecurityClaims(this INancyModule module, Func <Claim[], bool> isValid) { module.RequiresMSOwinAuthentication(); module.AddBeforeHookOrExecute(ctx => { IAuthenticationManager auth = ctx.GetAuthenticationManager(); return(isValid(auth.User.Claims.ToArray()) ? (Response)null : HttpStatusCode.Unauthorized); }, "Requires valid security claims"); }