List of usage examples for org.apache.shiro.web.env IniWebEnvironment setIni
public void setIni(Ini ini)
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); webEnvironment.setServletContext(getServletContext()); webEnvironment.init();/*from www. j a v a2 s.c o m*/ 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 . ja v a2 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); }