2012-01-16 93 views
2

如何配置Jasig的CAS只能在HTTPS端口(8443)上侦听?CAS Jboss AS7 HTTPS重定向

我们有应用程序分为两部分,门户和SSO权威(JASIG CAS)。两者都在JBoss AS7和不同的机器上运行。门户和SSO授权被配置为通过

<subsystem xmlns="urn:jboss:domain:web:1.0" default-virtual-server="default-host"> 
    <connector name="http" protocol="HTTP/1.1" socket-binding="http" scheme="http" redirect-port="8443"/> 
    <connector name="https" protocol="HTTP/1.1" socket-binding="https" scheme="https" secure="true"> 
     <ssl name="https" password="pass" certificate-key-file="/path_to_keystore.jks"/> 
    </connector> 
    <virtual-server name="default-host"> 
     <alias name="myapp.domain.com"/> 
    </virtual-server> 
</subsystem> 
... 
<socket-binding name="http" port="8080" fixed-port="true" interface="public"/> 
<socket-binding name="https" port="8443" fixed-port="true" interface="public"/> 

端口重定向从HTTP(8080)端口重定向到HTTPS(8443)端口工作以及门户的一部分,但CAS忽略重定向和HTTP(8080)的作品,以及(显示关于非安全访问的信息)。

回答

2

对于正确的java web应用程序,需要使用SSL配置使应用程序的某些部分在web.xml文件中得到保护。然后重定向作品完美无瑕。

<security-constraint> 
    <web-resource-collection> 
     <web-resource-name>sso secured pages</web-resource-name> 
     <url-pattern>/*</url-pattern> 
    </web-resource-collection> 
    <user-data-constraint> 
     <transport-guarantee>CONFIDENTIAL</transport-guarantee> 
    </user-data-constraint> 
</security-constraint>