CAS 協議強制要求 HTTPS 保護票據傳輸安全。開發環境可用自簽證書,生產必須用 CA 簽發證書。
# 1. 生成 keystore 及密鑰對 (別名 cas) keytool -genkeypair -alias cas -keyalg RSA -keysize 2048 \ -keystore D:\cas\thekeystore \ -storepass changeit -keypass changeit \ -dname "CN=cas.example.com, OU=IT, O=MyOrg, L=City, ST=State, C=CN" \ -validity 365 # 2. 導出證書文件 (給客戶端/瀏覽器信任) keytool -exportcert -alias cas -file D:\cas\cas.crt \ -keystore D:\cas\thekeystore -storepass changeit -rfc # 3. 導入 JDK 信任庫 (使 Java 客戶端信任自簽證書) keytool -importcert -alias cas -file D:\cas\cas.crt \ -keystore "%JAVA_HOME%\lib\security\cacerts" \ -storepass changeit -noprompt # 4. (可選) 導入 Windows 系統信任庫 (雙擊 cas.crt → 安裝到「受信任的根憑證發佈機構」)
<Connector port="8443" protocol="org.apache.coyote.http11.Http11NioProtocol"
maxThreads="150" SSLEnabled="true" scheme="https" secure="true"
clientAuth="false" sslProtocol="TLS"
keystoreFile="D:/cas/thekeystore"
keystorePass="changeit"
keyAlias="cas" />
<Listener className="org.apache.catalina.core.AprLifecycleListener" SSLEngine="off" />