
org.codehaus.enunciate.modules.spring_app.security-context.xml.fmt Maven / Gradle / Ivy
[#ftl] [@file name="security-context.xml"] <?xml version="1.0" encoding="UTF-8"?> <beans:beans xmlns="http://www.springframework.org/schema/security" xmlns:beans="http://www.springframework.org/schema/beans" xmlns:context="http://www.springframework.org/schema/context" xmlns:oauth="http://spring-security-oauth.codehaus.org/2.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-2.0.xsd http://www.springframework.org/schema/security http://www.springframework.org/schema/security/spring-security-2.0.xsd http://spring-security-oauth.codehaus.org/2.0 http://spring-security-oauth.codehaus.org/schema/spring-security-oauth-2.0.xsd http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context-2.5.xsd"> <context:annotation-config/> [#if securityConfig.onAuthenticationFailed?exists && securityConfig.onAuthenticationFailed.redirectTo?exists] [#assign entryPointDefined=true/] <!-- entry point on authentication failed (redirect to "${securityConfig.onAuthenticationFailed.redirectTo}")--> <beans:bean id="enunciate-entry-point" class="org.springframework.security.ui.webapp.AuthenticationProcessingFilterEntryPoint"> <beans:property name="loginFormUrl" value="${securityConfig.onAuthenticationFailed.redirectTo}"/> <beans:property name="forceHttps" value="false"/> <beans:property name="serverSideRedirect" value="false"/> </beans:bean> [#elseif securityConfig.onAuthenticationFailed?exists && securityConfig.onAuthenticationFailed.useEntryPoint?exists] [#if securityConfig.onAuthenticationFailed.useEntryPoint.beanName?exists] [#assign entryPointDefined=true/] <!-- entry point on authentication failed. --> <beans:alias alias="enunciate-entry-point" name="${securityConfig.onAuthenticationFailed.useEntryPoint.beanName}"/> [#elseif securityConfig.onAuthenticationFailed.useEntryPoint.className?exists] [#assign entryPointDefined=true/] <!-- entry point on authentication failed. --> <beans:bean id="enunciate-entry-point"class="${securityConfig.onAuthenticationFailed.useEntryPoint.className}"/> [/#if] [#elseif securityConfig.enableDigestHTTPAuth] [#assign entryPointDefined=true/] <!-- entry point on authentication failed. (Ask for HTTP digest auth credentials.) --> <beans:bean id="enunciate-entry-point" class="org.springframework.security.ui.digestauth.DigestProcessingFilterEntryPoint"> <beans:property name="realmName" value="${securityConfig.digestAuthConfig.realmName?default(securityConfig.realmName?default("Spring Security Application"))}"/> <beans:property name="key" value="${securityConfig.digestAuthConfig.key?default(securityConfig.key)}"/> [#if securityConfig.digestAuthConfig.nonceValiditySeconds?exists] <beans:property name="nonceValiditySeconds" nonceValiditySeconds="${securityConfig.digestAuthConfig.nonceValiditySeconds}"/> [/#if] </beans:bean> [#elseif securityConfig.enableBasicHTTPAuth] [#assign entryPointDefined=true/] <!-- entry point on authentication failed. (Ask for HTTP basic auth credentials.) --> <beans:bean id="enunciate-entry-point" class="org.springframework.security.ui.basicauth.BasicProcessingFilterEntryPoint"> <beans:property name="realmName" value="${securityConfig.basicAuthConfig.realmName?default(securityConfig.realmName?default("Spring Security Application"))}"/> </beans:bean> [/#if] <http auto-config="false"[#if !securityConfig.initJ2EESecurityContext] servlet-api-provision="false"[/#if][#if securityConfig.onAccessDenied?exists && securityConfig.onAccessDenied.redirectTo?exists] access-denied-page="${securityConfig.onAccessDenied.redirectTo}"[/#if][#if entryPointDefined?exists && entryPointDefined] entry-point-ref="enunciate-entry-point"[/#if][#if securityConfig.realmName?exists] realm="${securityConfig.realmName}"[/#if]> [#list securityConfig.secureUrls?keys as pattern] [#if securityConfig.secureUrls[pattern]?exists] <intercept-url pattern="${servletPatternToAntPattern(pattern)}" access="${securityConfig.secureUrls[pattern]}"/> [/#if] [/#list] <intercept-url pattern="/**"/> [#if securityConfig.enableFormBasedLogout] <logout logout-success-url="${securityConfig.formBasedLogoutConfig.redirectOnSuccessUrl}" logout-url="${securityConfig.formBasedLogoutConfig.url}"/> [/#if] [#if securityConfig.enableBasicHTTPAuth] <http-basic/> [/#if] [#if securityConfig.enableFormBasedLogin] <form-login authentication-failure-url="${securityConfig.formBasedLoginConfig.redirectOnFailureUrl}" default-target-url="${securityConfig.formBasedLoginConfig.redirectOnSuccessUrl}" login-page="${securityConfig.formBasedLoginConfig.loginPageURL}" login-processing-url="${securityConfig.formBasedLoginConfig.url}"/> [/#if] [#if securityConfig.enableRememberMeToken] <remember-me key="${securityConfig.rememberMeConfig.key?default(securityConfig.key)}"/> [/#if] [#if securityConfig.loadAnonymousIdentity] <anonymous key="${securityConfig.anonymousConfig.key?default(securityConfig.key)}" username="${securityConfig.anonymousConfig.userId?default("anonymous")}" granted-authority="${securityConfig.anonymousConfig.roles?default("ROLE_ANONYMOUS")}"/> [/#if] </http> [#if securityConfig.additionalAuthenticationFilters?exists] [#list securityConfig.additionalAuthenticationFilters as filter] [#if filter.beanName?exists] <beans:bean parent="${filter.beanName}"> [#elseif filter.className?exists] <beans:bean class="${filter.className}"> [/#if] <custom-filter before="PRE_AUTH_FILTER"/> </beans:bean> [/#list] [/#if] [#if securityConfig.enableDigestHTTPAuth] <beans:bean class="org.springframework.security.ui.digestauth.DigestProcessingFilter"> <custom-filter position="BASIC_PROCESSING_FILTER"/> </beans:bean> [/#if] [#if securityConfig.enableOAuth] <!-- Define the OAuth provider. For more information, see http://spring-security-oauth.codehaus.org/userguide.html --> <oauth:provider request-token-url="${securityConfig.OAuthConfig.requestTokenURL}" authenticate-token-url="${securityConfig.OAuthConfig.grantAccessURL}" authentication-failed-url="${securityConfig.OAuthConfig.accessConfirmationURL}" access-granted-url="${securityConfig.OAuthConfig.accessConfirmedURL}" access-token-url="${securityConfig.OAuthConfig.accessTokenURL}"/> [#if securityConfig.OAuthConfig.tokenServices?exists && securityConfig.OAuthConfig.tokenServices.className?exists] <beans:bean class="${securityConfig.OAuthConfig.tokenServices.className}"/> [/#if] [#if securityConfig.OAuthConfig.consumerDetailsService?exists && securityConfig.OAuthConfig.consumerDetailsService.className?exists] <beans:bean class="${securityConfig.OAuthConfig.consumerDetailsService.className}"/> [/#if] <!--The filter that ensures that the user is authenticated before allowing the confirm access page.--> <beans:bean id="oauthConfirmAccessFilter" class="org.codehaus.enunciate.modules.spring_app.OAuthConfirmAccessFilter"> <custom-filter after="EXCEPTION_TRANSLATION_FILTER"/> <beans:property name="confirmAccessUrl" value="${securityConfig.OAuthConfig.accessConfirmationURL}"/> <beans:property name="accessConfirmedUrl" value="${securityConfig.OAuthConfig.accessConfirmedURL}"/> </beans:bean> [/#if] [#if !securityConfig.disableDefaultProvider] [#if securityConfig.userDetailsService?exists && securityConfig.userDetailsService.beanName?exists] <authentication-provider user-service-ref="${securityConfig.userDetailsService.beanName}"/> [#elseif securityConfig.userDetailsService?exists && securityConfig.userDetailsService.className?exists] <beans:bean id="enunciate-user-details" class="${securityConfig.userDetailsService.className}"/> <authentication-provider user-service-ref="enunciate-user-details"/> [#else] <beans:bean id="enunciate-auth-provider" class="org.codehaus.enunciate.modules.spring_app.DefaultEnunciateAuthenticationProvider"> <custom-authentication-provider/> </beans:bean> [/#if] [/#if] <!-- service method interceptor (used to lock down the service methods.)--> <authentication-manager alias="authenticationManager"/> <beans:bean id="enunciate-security-interceptor" class="org.springframework.security.intercept.method.aopalliance.MethodSecurityInterceptor"> <beans:property name="authenticationManager" ref="authenticationManager"/> <beans:property name="accessDecisionManager"> <beans:bean class="org.springframework.security.vote.AffirmativeBased"> <beans:property name="allowIfAllAbstainDecisions" value="true"/> <beans:property name="decisionVoters"> <beans:list> <beans:bean class="org.codehaus.enunciate.modules.spring_app.JSR250Voter"/> [#if securityConfig.enableOAuth] <beans:bean class="org.springframework.security.oauth.provider.attributes.ConsumerSecurityVoter"/> [/#if] </beans:list> </beans:property> </beans:bean> </beans:property> <beans:property name="objectDefinitionSource"> <beans:bean class="org.springframework.security.intercept.method.MethodDefinitionAttributes"> <beans:property name="attributes"> <beans:bean class="org.codehaus.enunciate.modules.spring_app.WebMethodSecurityAnnotationAttributes"> <beans:constructor-arg> <!-- List of the security attributes that are supported by Enunciate. --> <beans:list> <!-- JSR 250 attributes --> <beans:bean class="org.codehaus.enunciate.modules.spring_app.JSR250SecurityAnnotationAttributes"/> [#if securityConfig.enableOAuth] <!-- OAuth security attributes --> <beans:bean class="org.springframework.security.oauth.provider.attributes.ConsumerSecurityAnnotationAttributes"/> [/#if] </beans:list> </beans:constructor-arg> </beans:bean> </beans:property> </beans:bean> </beans:property> <beans:property name="rejectPublicInvocations" value="false"/> </beans:bean> <!-- utility for programatic login/logout --> <beans:bean id="loginLogoutHelper" class="org.codehaus.enunciate.modules.spring_app.LoginLogoutHelperImpl"/> <!-- utility to use to determine if an exception that was thrown is auth failed or access denied. --> <beans:bean id="securityChecker" class="org.codehaus.enunciate.modules.spring_app.SpringSecurityExceptionChecker"/> <!-- the error handler for the application --> <beans:bean id="securityExceptionResolver" class="org.codehaus.enunciate.modules.spring_app.SecurityAwareExceptionHandler"/> </beans:beans> [/@file]
© 2015 - 2025 Weber Informatics LLC | Privacy Policy