2012-01-16 92 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>