/* * Copyright 2014 MOSPA(Ministry of Security and Public Administration). * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. */ package egovframework.rte.fdl.security.config; import javax.sql.DataSource; /** * egov-security schema namespace 처리를 담당하는 bean 클래스 * *<p>Desc.: 설정 간소화 처리에 사용되는 bean으로 설정에 대한 정보를 보관</p> * * @author Vincent Han * @since 2014.03.12 * @version 3.0 * @see <pre> * == 개정이력(Modification Information) == * * 수정일 수정자 수정내용 * --------------------------------------------------------------------------------- * 2014.03.12 한성곤 Spring Security 설정 간소화 기능 추가 * * </pre> */ public class SecurityConfig { public static final String DEF_USERS_BY_USERNAME_QUERY_SQL = "select user_id, password, enabled, users.* from users where user_id = ?"; public static final String DEF_AUTHORITIES_BY_USERNAME_QUERY_SQL = "select user_id, authority from authorites where user_id = ?"; private String loginUrl; private String logoutSuccessUrl; private String loginFailureUrl; private String accessDeniedUrl; private DataSource dataSource; private String jdbcUsersByUsernameQuery = DEF_USERS_BY_USERNAME_QUERY_SQL; private String jdbcAuthoritiesByUsernameQuery = DEF_AUTHORITIES_BY_USERNAME_QUERY_SQL; private String jdbcMapClass = "egovframework.rte.fdl.security.userdetails.DefaultMapUserDetailsMapping"; private String requestMatcherType = "regex"; // regex, ant, ciRegex (case-insensitive) private String hash = "sha-256"; // hashing algorithm private boolean hashBase64 = true; // default = true private int concurrentMaxSessons; private String concurrentExpiredUrl; private String defaultTargetUrl; private boolean supportPointcut; public String getLoginUrl() { return loginUrl; } public void setLoginUrl(String loginUrl) { this.loginUrl = loginUrl; } public String getLogoutSuccessUrl() { return logoutSuccessUrl; } public void setLogoutSuccessUrl(String logoutSuccessUrl) { this.logoutSuccessUrl = logoutSuccessUrl; } public String getLoginFailureUrl() { return loginFailureUrl; } public void setLoginFailureUrl(String loginFailureUrl) { this.loginFailureUrl = loginFailureUrl; } public String getAccessDeniedUrl() { return accessDeniedUrl; } public void setAccessDeniedUrl(String accessDeniedUrl) { this.accessDeniedUrl = accessDeniedUrl; } public DataSource getDataSource() { return dataSource; } public void setDataSource(DataSource dataSource) { this.dataSource = dataSource; } public String getJdbcUsersByUsernameQuery() { return jdbcUsersByUsernameQuery; } public void setJdbcUsersByUsernameQuery(String jdbcUsersByUsernameQuery) { this.jdbcUsersByUsernameQuery = jdbcUsersByUsernameQuery; } public String getJdbcAuthoritiesByUsernameQuery() { return jdbcAuthoritiesByUsernameQuery; } public void setJdbcAuthoritiesByUsernameQuery(String jdbcAuthoritiesByUsernameQuery) { this.jdbcAuthoritiesByUsernameQuery = jdbcAuthoritiesByUsernameQuery; } public String getJdbcMapClass() { return jdbcMapClass; } public void setJdbcMapClass(String jdbcMapClass) { this.jdbcMapClass = jdbcMapClass; } public String getRequestMatcherType() { return requestMatcherType; } public void setRequestMatcherType(String requestMatcherType) { this.requestMatcherType = requestMatcherType; } public String getHash() { return hash; } public void setHash(String hash) { this.hash = hash; } public boolean isSupportPointcut() { return supportPointcut; } public void setSupportPointcut(boolean supportPointcut) { this.supportPointcut = supportPointcut; } public int getConcurrentMaxSessons() { return concurrentMaxSessons; } public void setConcurrentMaxSessons(int concurrentMaxSessons) { this.concurrentMaxSessons = concurrentMaxSessons; } public String getConcurrentExpiredUrl() { return concurrentExpiredUrl; } public void setConcurrentExpiredUrl(String concurrentExpiredUrl) { this.concurrentExpiredUrl = concurrentExpiredUrl; } public String getDefaultTargetUrl() { return defaultTargetUrl; } public void setDefaultTargetUrl(String defaultTargetUrl) { this.defaultTargetUrl = defaultTargetUrl; } public boolean isHashBase64() { return hashBase64; } public void setHashBase64(boolean hashBase64) { this.hashBase64 = hashBase64; } }