public static void RegisterGlobalFilters(HttpFilterCollection filters, ConfigProfile cp) { //filters.Add(new ExceptionHandlingAttribute()); //filters.Add(new NoCacheAttribute()); //if (cp.RequireHttps) //{ // // Require https only connection // filters.Add(new RequireHttpsAttribute()); //} //else //{ // Logger.Current.Warn("Require HTTPS is disabled for web api"); //} // Require a valid caller Identity //filters.Add(new ClaimsAuthorizeAttribute()); //filters.Add(new RequestValidUserIDAttribute()); Func <PersistentLib.ISqlFactory> auditSqlFactoryProvider = () => { return(new PersistentLib.SqlServerFactory(cp.TokenCacheConnection)); }; if (cp.EnforceUniqueUserLogin) { filters.Add(new bUtility.TokenCache.Filters.UniqueUserLoginAttribute( auditSqlFactoryProvider, cp.RollingExpiryWindowInMinutes)); } // Depricated, using httpHandler for xsrf instead //filters.Add(new WebApiValidateAntiForgeryTokenAttribute()) }
protected void Application_Start() { Logger.SetCurrent(new Logger("TokenCacheSource")); // Remove Header X-AspNetMvc-Version //MvcHandler.DisableMvcResponseHeader = true; //AreaRegistration.RegisterAllAreas(); var cp = ConfigProfile.LoadConfigurationProfile(); WebApiConfig.Configure(cp); }
private static void RegisterHandlers( System.Collections.ObjectModel.Collection <System.Net.Http.DelegatingHandler> handlers, ConfigProfile cp) { //if (cp.MessageLoggingEnabled) handlers.Add(new MessageLoggingHandler("WebApi")); //handlers.Add(new bUtility.Handlers.AuthenticationHandler()); //handlers.Add(new bUtility.Handlers.LanguageMessageHandler()); //handlers.Add(new bUtility.Handlers.ThrottlingHandler(999, 0)); }
internal static ConfigProfile LoadConfigurationProfile() { var cp = new ConfigProfile { RequireHttps = LoadBooleanValue("RequireHttps"), EnforceUniqueUserLogin = LoadBooleanValue("EnforceUniqueUserLogin"), RollingExpiryWindowInMinutes = LoadIntValue("RollingExpiryWindowInMinutes", 65), TokenCacheConnection = ConfigurationManager.AppSettings["tokenCacheConnection"] }; Current = cp; return(cp); }
public static void Configure(ConfigProfile cp) { try { GlobalConfiguration.Configure((httpConf) => { RegisterRoutes(httpConf); //RegisterGlobalFilters(httpConf.Filters, cp); //CustomizeFormatters(httpConf.Formatters); //RegisterHandlers(httpConf.MessageHandlers, cp); RegisterLocalServices(cp); }); } catch (Exception ex) { Logger.Current.Error(ex); } }
private static void RegisterLocalServices(ConfigProfile cp) { try { throw new ApplicationException("test Exception"); } catch (Exception ex) { Logger.Current.Error(ex); } try { #warning το θέλουμε ή όχι; //filters.Add(new AuditFilterAttribute()); Func <PersistentLib.ISqlFactory> ibSqlFactoryProvider = () => { return(new PersistentLib.SqlServerFactory(cp.TokenCacheConnection)); }; } catch (Exception ex) { Logger.Current.Error(ex); throw; } }