/// <summary> /// Evaluates whether the request is authorized based on the status of the specified cookie and value. /// </summary> /// <param name="httpContext"></param> /// <returns></returns> protected override bool AuthorizeCore(HttpContextBase httpContext) { string name, value; #if DEBUG if (AuthorizeInDebugMode) { return(true); } #endif name = !string.IsNullOrEmpty(CookieName) ? CookieName : ConfigurationManager.AppSettings[CookieNameAppSettingKey]; value = !string.IsNullOrEmpty(CookieValue) ? CookieValue : ConfigurationManager.AppSettings[CookieValueAppSettingKey]; if (string.IsNullOrEmpty(name) || string.IsNullOrEmpty(value)) { throw new InvalidOperationException(string.Format("A '{0}' requires a cookie name and cookie value. Either use the explicit value properties or the app setting key properties.", this.GetType().ToString())); } return(Cookies.CookieHasValue(name, value)); }