网站contextPath是root,http://localhost:8080,使用Spring安全SAML实现单点登录。无论url在localhost:8080根路径下输入什么,它都将指向IDP提供者进行身份验证,这是正确的。
我想要的是localhost:8080 / unsecure目录,用户可以访问而无需重定向到IDP进行身份验证。我不知道在哪里配置告诉SAML跳过某个路径。
由于
答案 0 :(得分:0)
在security-applicationContext.xml文件中,配置spring-security-saml时必须有类似的映射URL:
<!-- Unsecured pages -->
<security:http security="none" pattern="/favicon.ico"/>
<security:http security="none" pattern="/images/**"/>
<security:http security="none" pattern="/css/**"/>
<security:http security="none" pattern="/logout.jsp"/>
<!-- Security for the administration UI -->
<security:http pattern="/saml/web/**" use-expressions="false">
<security:access-denied-handler error-page="/saml/web/metadata/login"/>
<security:form-login login-processing-url="/saml/web/login" login-page="/saml/web/metadata/login" default-target-url="/saml/web/metadata"/>
<security:intercept-url pattern="/saml/web/metadata/login" access="IS_AUTHENTICATED_ANONYMOUSLY"/>
<security:intercept-url pattern="/saml/web/**" access="ROLE_ADMIN"/>
<security:custom-filter before="FIRST" ref="metadataGeneratorFilter"/>
</security:http>
<!-- Secured pages with SAML as entry point -->
<security:http entry-point-ref="samlEntryPoint" use-expressions="false">
<security:intercept-url pattern="/**" access="IS_AUTHENTICATED_FULLY"/>
<security:custom-filter before="FIRST" ref="metadataGeneratorFilter"/>
<security:custom-filter after="BASIC_AUTH_FILTER" ref="samlFilter"/>
</security:http>
这里我们允许图像,css,favicon等无需登录即可使用。因此,可以向不安全的映射列表添加更多URL ,如果您希望它在没有身份验证的情况下可用。