Beispiel #1
0
        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())
        }
Beispiel #2
0
        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);
        }
Beispiel #3
0
        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));
        }
Beispiel #4
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);
        }
Beispiel #5
0
 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);
     }
 }
Beispiel #6
0
        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;
            }
        }