David.Turing's blog

           

          Yale CAS異常問題總結(1)Unable to validate ProxyTicketValidator之HTTPS hostname wrong: should be.....

          嚴重: edu.yale.its.tp.cas.client.CASAuthenticationException: Unable to validate ProxyTicketValidator [[edu.yale.its.tp.cas.client.ProxyTicketValidator prox
          yList=[null] [edu.yale.its.tp.cas.client.ServiceTicketValidator casValidateUrl=[https://192.168.1.111:8443/cas/proxyValidate] ticket=[ST-0-9h7Mx5HK3pfsdxRv
          MD3y] service=[http%3A%2F%2F192.168.1.222%3A8080%2Fservlets-examples%2Fservlet%2FHelloWorldExample] renew=false]]]


          這個CAS異常是從CAS Client里面拋出,是當我們不使用證書的CN去訪問域名的時候(比如下文是用IP訪問而且證書的CN是該IP對應的域名而非該IP),CASClient無法信任,因為你證書的CN命名寫著abc.com,192.168.1.111這個IP是無法被CAS Client識別。

          edu.yale.its.tp.cas.client.CASAuthenticationException:?Unable?to?validate?ProxyTicketValidator?[[edu.yale.its.tp.cas.client.ProxyTicketValidator?proxyList = [ null ]?[edu.yale.its.tp.cas.client.ServiceTicketValidator?casValidateUrl = [https: // 192.168.1.111:8443/cas/proxyValidate]?ticket=[ST-0-9h7Mx5HK3pfsdxRvMD3y]?service=[http%3A%2F%2F192.168.1.222%3A8080%2Fservlets-examples%2Fservlet%2FHelloWorldExample]?renew=false]]]
          ????at?edu.yale.its.tp.cas.client.CASReceipt.getReceipt(CASReceipt.java: 52 )
          ????at?edu.yale.its.tp.cas.client.filter.CASFilter.getAuthenticatedUser(CASFilter.java:
          455 )
          ????at?edu.yale.its.tp.cas.client.filter.CASFilter.doFilter(CASFilter.java:
          378 )
          ????at?org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:
          202 )
          ????at?org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:
          173 )
          ????at?filters.ExampleFilter.doFilter(ExampleFilter.java:
          101 )
          ????at?org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:
          202 )
          ????at?org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:
          173 )
          ????at?org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:
          213 )
          ????at?org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:
          178 )
          ????at?org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:
          432 )
          ????at?org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:
          126 )
          ????at?org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:
          105 )
          ????at?org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:
          107 )
          ????at?org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:
          148 )
          ????at?org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:
          869 )
          ????at?org.apache.coyote.http11.Http11BaseProtocol$Http11ConnectionHandler.processConnection(Http11BaseProtocol.java:
          664 )
          ????at?org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpoint.java:
          527 )
          ????at?org.apache.tomcat.util.net.LeaderFollowerWorkerThread.runIt(LeaderFollowerWorkerThread.java:
          80 )
          ????at?org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:
          684 )
          ????at?java.lang.Thread.run(Thread.java:
          595 )
          Caused?by:?java.io.IOException:?HTTPS?hostname?wrong:??should?be?
          < 192.168 . 1.111 >
          ????at?sun.net.www.protocol.https.HttpsClient.checkURLSpoofing(HttpsClient.java:
          493 )
          ????at?sun.net.www.protocol.https.HttpsClient.afterConnect(HttpsClient.java:
          418 )
          ????at?sun.net.www.protocol.https.AbstractDelegateHttpsURLConnection.connect(AbstractDelegateHttpsURLConnection.java:
          170 )
          ????at?sun.net.www.protocol.http.HttpURLConnection.getInputStream(HttpURLConnection.java:
          905 )
          ????at?sun.net.www.protocol.https.HttpsURLConnectionImpl.getInputStream(HttpsURLConnectionImpl.java:
          234 )
          ????at?edu.yale.its.tp.cas.util.SecureURL.retrieve(SecureURL.java:
          84 )
          ????at?edu.yale.its.tp.cas.client.ServiceTicketValidator.validate(ServiceTicketValidator.java:
          212 )
          ????at?edu.yale.its.tp.cas.client.CASReceipt.getReceipt(CASReceipt.java:
          50 )

          解決辦法:
          用域名訪問,域名就是證書的CN。

          posted on 2006-09-05 18:20 david.turing 閱讀(9527) 評論(4)  編輯  收藏 所屬分類: Security異常問題

          評論

          # re: Yale CAS異常問題總結(1)Unable to validate ProxyTicketValidator之HTTPS hostname wrong: should be.....[未登錄] 2007-03-23 02:32 lulu

          client 怎么得到授權??
          就keytool -import....到jvm就行了???

          但是我還是報上面的錯誤..  回復  更多評論   

          # re: Yale CAS異常問題總結(1)Unable to validate ProxyTicketValidator之HTTPS hostname wrong: should be.....[未登錄] 2008-12-25 16:04 1

          要是別的機器訪問你的機器,用ip訪問,cn我也寫的ip,也還是報同樣錯誤  回復  更多評論   

          # re: Yale CAS異常問題總結(1)Unable to validate ProxyTicketValidator之HTTPS hostname wrong: should be.....[未登錄] 2011-08-30 18:20 小豬

          我的也是啊,用ip生成的cn,也是用ip訪問,還是報這個錯誤啊  回復  更多評論   

          # re: Yale CAS異常問題總結(1)Unable to validate ProxyTicketValidator之HTTPS hostname wrong: should be.....[未登錄] 2012-10-24 16:55 cx

          edu.yale.its.tp.cas.client.CASAuthenticationException: Unable to validate ProxyTicketValidator [[edu.yale.its.tp.cas.client.ProxyTicketValidator proxyList=[null] [edu.yale.its.tp.cas.client.ServiceTicketValidator casValidateUrl=[https://cx.com:8443/cas/proxyValidate] ticket=[ST-1-BS35zseNBoCQaZwNWjUu-cas] service=[http%3A%2F%2Fcx.com%3A8080%2Fjsp-examples%2F] renew=false]]]
          使用域名依舊錯誤……  回復  更多評論   

          導航

          統計

          常用鏈接

          留言簿(110)

          我參與的團隊

          隨筆分類(126)

          隨筆檔案(155)

          文章分類(9)

          文章檔案(19)

          相冊

          搜索

          積分與排名

          最新隨筆

          最新評論

          閱讀排行榜

          評論排行榜

          主站蜘蛛池模板: 深水埗区| 资阳市| 广元市| 清水河县| 黄浦区| 苏尼特左旗| 广宁县| 安新县| 浪卡子县| 井冈山市| 噶尔县| 明溪县| 赤壁市| 黔西县| 通辽市| 临江市| 嘉定区| 政和县| 贵溪市| 鄱阳县| 永和县| 阿拉善盟| 无锡市| 内丘县| 雷山县| 江永县| 东乌珠穆沁旗| 兴业县| 新巴尔虎右旗| 潞城市| 合阳县| 利川市| 新平| 博兴县| 东乌| 淳安县| 田林县| 双柏县| 且末县| 五河县| 万安县|