List of usage examples for org.apache.shiro.web.env IniWebEnvironment IniWebEnvironment
public IniWebEnvironment()
From source file:fathom.shiro.ShiroModule.java
License:Apache License
@Override protected void setup() { String configFile = getSettings().getString("shiro.configurationFile", "classpath:conf/shiro.ini"); Ini ini = Ini.fromResourcePath(configFile); IniWebEnvironment webEnvironment = new IniWebEnvironment(); webEnvironment.setIni(ini);// www. j av a 2 s . c om webEnvironment.setServletContext(getServletContext()); webEnvironment.init(); bind(WebEnvironment.class).toInstance(webEnvironment); bind(SecurityManager.class).toInstance(webEnvironment.getSecurityManager()); bind(WebSecurityManager.class).toInstance(webEnvironment.getWebSecurityManager()); String basePath = Strings.nullToEmpty(getSettings().getString(RestServlet.SETTING_URL, null)).trim(); filter(basePath + "/*").through(ShiroFilter.class); install(new AopModule()); }
From source file:org.everit.osgi.authentication.shiro.simple.DefaultShiroFilter.java
License:Open Source License
public DefaultShiroFilter(final long globalSessionTimeout, final String shiroIniLocation, final Realm realm, final String casLoginUrl, final String casFailureUrl) { Ini ini = loadIni(shiroIniLocation); IniWebEnvironment iniWebEnvironment = new IniWebEnvironment() { @Override//from w w w . j a va 2 s. c o m protected FilterChainResolver createFilterChainResolver() { FilterChainResolver filterChainResolver = super.createFilterChainResolver(); if (realm instanceof CasRealm) { if (filterChainResolver instanceof PathMatchingFilterChainResolver) { FilterChainManager filterChainManager = ((PathMatchingFilterChainResolver) filterChainResolver) .getFilterChainManager(); Map<String, Filter> filters = filterChainManager.getFilters(); for (Filter filter : filters.values()) { if (filter instanceof RolesAuthorizationFilter) { ((RolesAuthorizationFilter) filter).setLoginUrl(casLoginUrl); } } } } return filterChainResolver; } @Override protected WebSecurityManager createWebSecurityManager() { DefaultWebSessionManager defaultWebSessionManager = new DefaultWebSessionManager(); defaultWebSessionManager.setGlobalSessionTimeout(globalSessionTimeout); DefaultWebSecurityManager webSecurityManager = new DefaultWebSecurityManager(); webSecurityManager.setRealm(realm); webSecurityManager.setSessionManager(defaultWebSessionManager); if (realm instanceof CasRealm) { webSecurityManager.setSubjectFactory(new CasSubjectFactory()); CasFilter casFilter = new CasFilter(); casFilter.setFailureUrl(casFailureUrl); setObject("casFilter", casFilter); } return webSecurityManager; } }; iniWebEnvironment.setIni(ini); iniWebEnvironment.init(); WebSecurityManager securityManager = (WebSecurityManager) iniWebEnvironment.getSecurityManager(); setSecurityManager(securityManager); FilterChainResolver filterChainResolver = iniWebEnvironment.getFilterChainResolver(); setFilterChainResolver(filterChainResolver); }
From source file:to.sauerkraut.krautadmin.auth.SecureShiroBundle.java
License:Open Source License
@Override protected Filter createFilter(final KrautAdminConfiguration configuration) { final ShiroConfiguration shiroConfig = narrow(configuration); final IniWebEnvironment shiroEnv = new IniWebEnvironment(); shiroEnv.setConfigLocations(shiroConfig.iniConfigs()); shiroEnv.init();/*w ww . j a v a 2 s . c o m*/ return new SecureShiroFilter(configuration, shiroEnv); }