AnsweredAssumed Answered

Keystore Config Not Working

Question asked by pat2man on May 7, 2010
Latest reply on Jul 19, 2010 by skyfredox
I am trying to set up Alfresco with mod_auth_cas and I have gotten everything working except Alfresco Share.

Looking through the logs I can see that Share is not using x509 to authenticate. I have it set up in share-config-custom.xml just like the documentation:

            <keystore>
                <path>alfresco/web-extension/alfresco-system.p12</path>
                <type>pkcs12</type>
                <password>alfresco-system</password>
            </keystore>

but when I check the debug log its not going through:
10:37:45,783 DEBUG [org.apache.commons.httpclient.HttpConnection] Open connection to server.example.org:80
10:37:45,783 DEBUG [httpclient.wire.header] >> "POST /alfresco/wcs/api/login HTTP/1.1[\r][\n]"
10:37:45,784 DEBUG [org.apache.commons.httpclient.HttpMethodBase] Adding Host request header
10:37:45,784 DEBUG [httpclient.wire.header] >> "Content-Type: application/json[\r][\n]"
10:37:45,784 DEBUG [httpclient.wire.header] >> "User-Agent: Jakarta Commons-HttpClient/3.1[\r][\n]"
10:37:45,784 DEBUG [httpclient.wire.header] >> "Host: server.example.org[\r][\n]"
10:37:45,784 DEBUG [httpclient.wire.header] >> "Content-Length: 42[\r][\n]"
10:37:45,784 DEBUG [httpclient.wire.header] >> "[\r][\n]"
10:37:45,785 DEBUG [httpclient.wire.content] >> "{"username": "admin", "password": "admin"}"
10:37:45,785 DEBUG [org.apache.commons.httpclient.methods.EntityEnclosingMethod] Request body sent
10:37:45,785 DEBUG [httpclient.wire.header] << "HTTP/1.1 302 Found[\r][\n]"
10:37:45,785 DEBUG [httpclient.wire.header] << "HTTP/1.1 302 Found[\r][\n]"
10:37:45,786 DEBUG [httpclient.wire.header] << "Date: Fri, 07 May 2010 17:37:45 GMT[\r][\n]"
10:37:45,786 DEBUG [httpclient.wire.header] << "Location: https://server.example.org/login/login?service=http%3a%2f%2fserver.example.org%2falfresco%2fwcs%2fapi%2flogin[\r][\n]"
10:37:45,786 DEBUG [httpclient.wire.header] << "Vary: Accept-Encoding[\r][\n]"
10:37:45,786 DEBUG [httpclient.wire.header] << "Content-Length: 380[\r][\n]"
10:37:45,786 DEBUG [httpclient.wire.header] << "Content-Type: text/html; charset=iso-8859-1[\r][\n]"
10:37:45,786 DEBUG [httpclient.wire.header] << "[\r][\n]"
10:37:45,786 DEBUG [org.apache.commons.httpclient.HttpMethodDirector] Redirect required
10:37:45,786 DEBUG [httpclient.wire.content] << "<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">[\n]"
10:37:45,786 DEBUG [httpclient.wire.content] << "<html><head>[\n]"
10:37:45,786 DEBUG [httpclient.wire.content] << "<title>302 Found</title>[\n]"
10:37:45,786 DEBUG [httpclient.wire.content] << "</head><body>[\n]"
10:37:45,786 DEBUG [httpclient.wire.content] << "<h1>Found</h1>[\n]"
10:37:45,786 DEBUG [httpclient.wire.content] << "<p>The document has moved <a href="https://server.example.org/login/login?service=http%3a%2f%2fserver.example.org%2falfresco%2fwcs%2fapi%2flogin">here</a>.</p>[\n]"
10:37:45,786 DEBUG [httpclient.wire.content] << "<hr>[\n]"
10:37:45,786 DEBUG [httpclient.wire.content] << "<address>Apache/2.2.14 (Ubuntu) Server at server.example.org Port 80</address>[\n]"
10:37:45,786 DEBUG [httpclient.wire.content] << "</body></html>[\n]"
10:37:45,786 DEBUG [org.apache.commons.httpclient.HttpMethodBase] Resorting to protocol version default close connection policy
10:37:45,786 DEBUG [org.apache.commons.httpclient.HttpMethodBase] Should NOT close connection, using HTTP/1.1
10:37:45,786 DEBUG [org.apache.commons.httpclient.HttpConnection] Releasing connection back to connection manager.
10:37:45,787 DEBUG [org.apache.commons.httpclient.params.DefaultHttpParams] Set parameter http.connection.stalecheck = false
10:37:45,787 DEBUG [org.apache.commons.httpclient.params.DefaultHttpParams] Set parameter http.tcp.nodelay = true
10:37:45,787 DEBUG [org.apache.commons.httpclient.params.DefaultHttpParams] Set parameter http.connection.timeout = 5000
10:37:45,787 DEBUG [org.apache.commons.httpclient.params.DefaultHttpParams] Set parameter http.socket.timeout = 90000
10:37:45,787 DEBUG [org.apache.commons.httpclient.HttpConnection] Open connection to server.example.org:80
10:37:45,788 DEBUG [httpclient.wire.header] >> "GET /alfresco/wcs/webframework/content/metadata?user=admin HTTP/1.1[\r][\n]"
10:37:45,788 DEBUG [org.apache.commons.httpclient.HttpMethodBase] Adding Host request header
10:37:45,788 DEBUG [httpclient.wire.header] >> "Cookie: JSESSIONID=690770DF08661FBA9524C69CA6AABB0B[\r][\n]"
10:37:45,789 DEBUG [httpclient.wire.header] >> "User-Agent: Jakarta Commons-HttpClient/3.1[\r][\n]"
10:37:45,789 DEBUG [httpclient.wire.header] >> "Host: server.example.org[\r][\n]"
10:37:45,789 DEBUG [httpclient.wire.header] >> "[\r][\n]"
10:37:45,789 DEBUG [httpclient.wire.header] << "HTTP/1.1 302 Found[\r][\n]"
10:37:45,789 DEBUG [httpclient.wire.header] << "HTTP/1.1 302 Found[\r][\n]"
10:37:45,789 DEBUG [httpclient.wire.header] << "Date: Fri, 07 May 2010 17:37:45 GMT[\r][\n]"
10:37:45,789 DEBUG [httpclient.wire.header] << "Location: https://server.example.org/login/login?service=http%3a%2f%2fserver.example.org%2falfresco%2fwcs%2fwebframework%2fcontent%2fmetadata%3fuser%3dadmin[\r][\n]"
10:37:45,789 DEBUG [httpclient.wire.header] << "Vary: Accept-Encoding[\r][\n]"
10:37:45,790 DEBUG [httpclient.wire.header] << "Content-Length: 417[\r][\n]"
10:37:45,790 DEBUG [httpclient.wire.header] << "Content-Type: text/html; charset=iso-8859-1[\r][\n]"
10:37:45,790 DEBUG [httpclient.wire.header] << "[\r][\n]"
10:37:45,790 DEBUG [org.apache.commons.httpclient.HttpMethodDirector] Redirect required
10:37:45,790 DEBUG [httpclient.wire.content] << "<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">[\n]"
10:37:45,790 DEBUG [httpclient.wire.content] << "<html><head>[\n]"
10:37:45,790 DEBUG [httpclient.wire.content] << "<title>302 Found</title>[\n]"
10:37:45,790 DEBUG [httpclient.wire.content] << "</head><body>[\n]"
10:37:45,790 DEBUG [httpclient.wire.content] << "<h1>Found</h1>[\n]"
10:37:45,790 DEBUG [httpclient.wire.content] << "<p>The document has moved <a href="https://server.example.org/login/login?service=http%3a%2f%2fserver.example.org%2falfresco%2fwcs%2fwebframework%2fcontent%2fmetadata%3fuser%3dadmin">here</a>.</p>[\n]"
10:37:45,790 DEBUG [httpclient.wire.content] << "<hr>[\n]"
10:37:45,790 DEBUG [httpclient.wire.content] << "<address>Apache/2.2.14 (Ubuntu) Server at server.example.org Port 80</address>[\n]"
10:37:45,790 DEBUG [httpclient.wire.content] << "</body></html>[\n]"
10:37:45,790 DEBUG [org.apache.commons.httpclient.HttpMethodBase] Resorting to protocol version default close connection policy
10:37:45,791 DEBUG [org.apache.commons.httpclient.HttpMethodBase] Should NOT close connection, using HTTP/1.1
10:37:45,791 DEBUG [org.apache.commons.httpclient.HttpConnection] Releasing connection back to connection manager.
10:37:45,791 DEBUG [org.apache.commons.httpclient.HttpConnection] Open connection to server.example.org:443
10:37:45,791 DEBUG [httpclient.wire.header] >> "GET /login/login?service=http%3a%2f%2fserver.example.org%2falfresco%2fwcs%2fwebframework%2fcontent%2fmetadata%3fuser%3dadmin HTTP/1.1[\r][\n]"
10:37:45,792 DEBUG [org.apache.commons.httpclient.HttpMethodBase] Adding Host request header
10:37:45,792 DEBUG [httpclient.wire.header] >> "Cookie: JSESSIONID=690770DF08661FBA9524C69CA6AABB0B[\r][\n]"
10:37:45,792 DEBUG [httpclient.wire.header] >> "User-Agent: Jakarta Commons-HttpClient/3.1[\r][\n]"
10:37:45,792 DEBUG [httpclient.wire.header] >> "Host: server.example.org[\r][\n]"
10:37:45,792 DEBUG [httpclient.wire.header] >> "[\r][\n]"
10:37:45,857 DEBUG [httpclient.wire.header] << "HTTP/1.1 200 OK[\r][\n]"
10:37:45,857 DEBUG [httpclient.wire.header] << "HTTP/1.1 200 OK[\r][\n]"
10:37:45,857 DEBUG [httpclient.wire.header] << "Date: Fri, 07 May 2010 17:37:45 GMT[\r][\n]"
10:37:45,857 DEBUG [httpclient.wire.header] << "Server: Apache/2.2.14 (Ubuntu)[\r][\n]"
10:37:45,858 DEBUG [httpclient.wire.header] << "Pragma: no-cache[\r][\n]"
10:37:45,858 DEBUG [httpclient.wire.header] << "Expires: Thu, 01 Jan 1970 00:00:00 GMT[\r][\n]"
10:37:45,858 DEBUG [httpclient.wire.header] << "Cache-Control: no-cache[\r][\n]"
10:37:45,858 DEBUG [httpclient.wire.header] << "Cache-Control: no-store[\r][\n]"
10:37:45,858 DEBUG [httpclient.wire.header] << "Set-Cookie: JSESSIONID=B1CEBCF9400851A8CC067E0F58D6B944; Path=/login; Secure[\r][\n]"
10:37:45,858 DEBUG [httpclient.wire.header] << "Content-Length: 6651[\r][\n]"
10:37:45,858 DEBUG [httpclient.wire.header] << "Vary: Accept-Encoding[\r][\n]"
10:37:45,858 DEBUG [httpclient.wire.header] << "Content-Type: text/html;charset=UTF-8[\r][\n]"
10:37:45,858 DEBUG [httpclient.wire.header] << "[\r][\n]"
10:37:45,858 DEBUG [org.apache.commons.httpclient.HttpMethodBase] Cookie accepted: "$Version=0; JSESSIONID=B1CEBCF9400851A8CC067E0F58D6B944; $Path=/login"
10:37:45,860 DEBUG [httpclient.wire.content] << "[\n]"
10:37:45,860 DEBUG [httpclient.wire.content] << "[\n]"
10:37:45,860 DEBUG [httpclient.wire.content] << "[\n]"
10:37:45,860 DEBUG [httpclient.wire.content] << "[\n]"
10:37:45,860 DEBUG [httpclient.wire.content] << "[\n]"
10:37:45,860 DEBUG [httpclient.wire.content] << "[\n]"
10:37:45,860 DEBUG [httpclient.wire.content] << "[\n]"
10:37:45,860 DEBUG [httpclient.wire.content] << "[\n]"
10:37:45,860 DEBUG [httpclient.wire.content] << "[\n]"
10:37:45,860 DEBUG [httpclient.wire.content] << "[\n]"
10:37:45,860 DEBUG [httpclient.wire.content] << "<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">[\n]"
10:37:45,860 DEBUG [httpclient.wire.content] << "[\n]"
10:37:45,860 DEBUG [httpclient.wire.content] << "<html xmlns="http://www.w3.org/1999/xhtml" lang="en">[\n]"
10:37:45,860 DEBUG [httpclient.wire.content] << "[0x9]<head>[\n]"
10:37:45,860 DEBUG [httpclient.wire.content] << "[0x9]    <title>CAS &#8211; Central Authentication Service</title>[\n]"
10:37:45,861 DEBUG [httpclient.wire.content] << "        [\n]"
10:37:45,861 DEBUG [httpclient.wire.content] << "           [\n]"
10:37:45,861 DEBUG [httpclient.wire.content] << "           [\n]"
10:37:45,861 DEBUG [httpclient.wire.content] << "                <link type="text/css" rel="stylesheet" href="css/cas.css" />[\n]"
10:37:45,861 DEBUG [httpclient.wire.content] << "                <script type="text/javascript" src="js/common_rosters.js"></script>[\n]"
10:37:45,861 DEBUG [httpclient.wire.content] << "           [\n]"
10:37:45,861 DEBUG [httpclient.wire.content] << "        [\n]"
10:37:45,861 DEBUG [httpclient.wire.content] << "[0x9]    <link rel="icon" href="/login/favicon.ico" type="image/x-icon" />[\n]"
10:37:45,861 DEBUG [httpclient.wire.content] << "[0x9]</head>[\n]"
10:37:45,861 DEBUG [httpclient.wire.content] << "[0x9]<body id="cas" onload="init();" class="fl-theme-iphone">[\n]"
10:37:45,861 DEBUG [httpclient.wire.content] << "    <div class="flc-screenNavigator-view-container">[\n]"
10:37:45,861 DEBUG [httpclient.wire.content] << "        <div class="fl-screenNavigator-view">[\n]"
10:37:45,861 DEBUG [httpclient.wire.content] << "            <div id="header" class="flc-screenNavigator-navbar fl-navbar fl-table">[\n]"
10:37:45,861 DEBUG [httpclient.wire.content] << "                <h1 id="app-name" class="fl-table-cell">Central Authentication Service (CAS)</h1>[\n]"
10:37:45,862 DEBUG [httpclient.wire.content] << "            </div>[0x9][0x9][\n]"
10:37:45,862 DEBUG [httpclient.wire.content] << "            <div id="content" class="fl-screenNavigator-scroll-container">[\n]"
10:37:45,862 DEBUG [httpclient.wire.content] << "[\n]"
10:37:45,862 DEBUG [httpclient.wire.content] << "[0x9][0x9][0x9]<form id="fm1" class="fm-v clearfix" action="/login/login?service=http%3a%2f%2fserver.example.org%2falfresco%2fwcs%2fwebframework%2fcontent%2fmetadata%3fuser%3dadmin" method="post">[\n]"
10:37:45,862 DEBUG [httpclient.wire.content] << "[0x9][0x9][0x9]    [\n]"
10:37:45,862 DEBUG [httpclient.wire.content] << "                <div class="box fl-panel" id="login">[\n]"
10:37:45,862 DEBUG [httpclient.wire.content] << "                <!– Congratulations on bringing CAS online!  The default authentication handler authenticates where usernames equal passwords: go ahead, try it out.  –>[\n]"
10:37:45,862 DEBUG [httpclient.wire.content] << "                    <h2>Enter your NetID and Password</h2>[\n]"
10:37:45,862 DEBUG [httpclient.wire.content] << "                    <div class="row fl-controls-left">[\n]"
10:37:45,862 DEBUG [httpclient.wire.content] << "                        <label for="username" class="fl-label"><span class="accesskey">N</span>etID:</label>[\n]"
10:37:45,862 DEBUG [httpclient.wire.content] << "[0x9][0x9][0x9][0x9][0x9][0x9][\n]"
10:37:45,862 DEBUG [httpclient.wire.content] << "[\n]"
10:37:45,862 DEBUG [httpclient.wire.content] << "[0x9][0x9][0x9][0x9][0x9][0x9][\n]"
10:37:45,862 DEBUG [httpclient.wire.content] << "[0x9][0x9][0x9][0x9][0x9][0x9][\n]"
10:37:45,862 DEBUG [httpclient.wire.content] << "[0x9][0x9][0x9][0x9][0x9][0x9]<input id="username" name="username" class="required" tabindex="1" accesskey="n" type="text" value="" size="25" autocomplete="false"/>[\n]"
10:37:45,862 DEBUG [httpclient.wire.content] << "[0x9][0x9][0x9][0x9][0x9][0x9][\n]"
10:37:45,862 DEBUG [httpclient.wire.content] << "                    </div>[\n]"
10:37:45,862 DEBUG [httpclient.wire.content] << "                    <div class="row fl-controls-left">[\n]"
10:37:45,863 DEBUG [httpclient.wire.content] << "                        <label for="password" class="fl-label"><span class="accesskey">P</span>assword:</label>[\n]"
10:37:45,863 DEBUG [httpclient.wire.content] << "[0x9][0x9][0x9][0x9][0x9][0x9][\n]"
10:37:45,863 DEBUG [httpclient.wire.content] << "[0x9][0x9][0x9][0x9][0x9][0x9][\n]"
10:37:45,863 DEBUG [httpclient.wire.content] << "[0x9][0x9][0x9][0x9][0x9][0x9]<input id="password" name="password" class="required" tabindex="2" accesskey="p" type="password" value="" size="25" autocomplete="off"/>[\n]"
10:37:45,863 DEBUG [httpclient.wire.content] << "                    </div>[\n]"
10:37:45,863 DEBUG [httpclient.wire.content] << "                    <div class="row check">[\n]"
10:37:45,863 DEBUG [httpclient.wire.content] << "                        <input id="warn" name="warn" value="true" tabindex="3" accesskey="w" type="checkbox" />[\n]"
10:37:45,863 DEBUG [httpclient.wire.content] << "                        <label for="warn"><span class="accesskey">W</span>arn me before logging me into other sites.</label>[\n]"
10:37:45,863 DEBUG [httpclient.wire.content] << "                    </div>[\n]"
10:37:45,863 DEBUG [httpclient.wire.content] << "                    <div class="row btn-row">[\n]"
10:37:45,863 DEBUG [httpclient.wire.content] << "[0x9][0x9][0x9][0x9][0x9][0x9]<input type="hidden" name="lt" value="e1s1" />[\n]"
10:37:45,863 DEBUG [httpclient.wire.content] << "[0x9][0x9][0x9][0x9][0x9][0x9]<input type="hidden" name="_eventId" value="submit" />[\n]"
10:37:45,863 DEBUG [httpclient.wire.content] << "[\n]"
10:37:45,863 DEBUG [httpclient.wire.content] << "                        <input class="btn-submit" name="submit" accesskey="l" value="LOGIN" tabindex="4" type="submit" />[\n]"
10:37:45,863 DEBUG [httpclient.wire.content] << "                        <input class="btn-reset" name="reset" accesskey="c" value="CLEAR" tabindex="5" type="reset" />[\n]"
10:37:45,863 DEBUG [httpclient.wire.content] << "                    </div>[\n]"
10:37:45,863 DEBUG [httpclient.wire.content] << "                </div>[\n]"
10:37:45,864 DEBUG [httpclient.wire.content] << "            </form>[\n]"
10:37:45,864 DEBUG [httpclient.wire.content] << "[\n]"
10:37:45,864 DEBUG [httpclient.wire.content] << "            <div id="sidebar">[\n]"
10:37:45,864 DEBUG [httpclient.wire.content] << "                <p class="fl-panel fl-note fl-bevel-white fl-font-size-80">For security reasons, please Log Out and Exit your web browser when you are done accessing services that require authentication!</p>[\n]"
10:37:45,864 DEBUG [httpclient.wire.content] << "                <div id="list-languages" class="fl-panel">[\n]"
10:37:45,864 DEBUG [httpclient.wire.content] << "                [\n]"
10:37:45,864 DEBUG [httpclient.wire.content] << "[0x9][0x9][0x9][0x9][0x9][\n]"
10:37:45,864 DEBUG [httpclient.wire.content] << "                  <h3>Languages:</h3>[\n]"
10:37:45,864 DEBUG [httpclient.wire.content] << "                  [\n]"
10:37:45,864 DEBUG [httpclient.wire.content] << "                     [\n]"
10:37:45,864 DEBUG [httpclient.wire.content] << "                     [\n]"
10:37:45,864 DEBUG [httpclient.wire.content] << "                        [\n]"
10:37:45,864 DEBUG [httpclient.wire.content] << "[0x9][0x9][0x9][0x9][0x9][0x9]<ul[\n]"
10:37:45,864 DEBUG [httpclient.wire.content] << "[0x9][0x9][0x9][0x9][0x9][0x9][0x9]><li class="first"><a href="login?service=http%3a%2f%2fserver.example.org%2falfresco%2fwcs%2fwebframework%2fcontent%2fmetadata%3fuser%3dadmin&locale=en">English</a></li[\n]"
10:37:45,864 DEBUG [httpclient.wire.content] << "[0x9][0x9][0x9][0x9][0x9][0x9][0x9]><li><a href="login?service=http%3a%2f%2fserver.example.org%2falfresco%2fwcs%2fwebframework%2fcontent%2fmetadata%3fuser%3dadmin&locale=es">Spanish</a></li[\n]"
10:37:45,864 DEBUG [httpclient.wire.content] << "[0x9][0x9][0x9][0x9][0x9][0x9][0x9]><li><a href="login?service=http%3a%2f%2fserver.example.org%2falfresco%2fwcs%2fwebframework%2fcontent%2fmetadata%3fuser%3dadmin&locale=fr">French</a></li[\n]"
10:37:45,864 DEBUG [httpclient.wire.content] << "[0x9][0x9][0x9][0x9][0x9][0x9][0x9]><li><a href="login?service=http%3a%2f%2fserver.example.org%2falfresco%2fwcs%2fwebframework%2fcontent%2fmetadata%3fuser%3dadmin&locale=ru">Russian</a></li[\n]"
10:37:45,865 DEBUG [httpclient.wire.content] << "[0x9][0x9][0x9][0x9][0x9][0x9][0x9]><li><a href="login"
10:37:45,865 DEBUG [httpclient.wire.content] << "?service=http%3a%2f%2fserver.example.org%2falfresco%2fwcs%2fwebframework%2fcontent%2fmetadata%3fuser%3dadmin&locale=nl">Nederlands</a></li[\n]"
10:37:45,865 DEBUG [httpclient.wire.content] << "[0x9][0x9][0x9][0x9][0x9][0x9][0x9]><li><a href="login?service=http%3a%2f%2fserver.example.org%2falfresco%2fwcs%2fwebframework%2fcontent%2fmetadata%3fuser%3dadmin&locale=sv">Svenskt</a></li[\n]"
10:37:45,865 DEBUG [httpclient.wire.content] << "[0x9][0x9][0x9][0x9][0x9][0x9][0x9]><li><a href="login?service=http%3a%2f%2fserver.example.org%2falfresco%2fwcs%2fwebframework%2fcontent%2fmetadata%3fuser%3dadmin&locale=it">Italiano</a></li[\n]"
10:37:45,865 DEBUG [httpclient.wire.content] << "[0x9][0x9][0x9][0x9][0x9][0x9][0x9]><li><a href="login?service=http%3a%2f%2fserver.example.org%2falfresco%2fwcs%2fwebframework%2fcontent%2fmetadata%3fuser%3dadmin&locale=ur">Urdu</a></li[\n]"
10:37:45,865 DEBUG [httpclient.wire.content] << "[0x9][0x9][0x9][0x9][0x9][0x9][0x9]><li><a href="login?service=http%3a%2f%2fserver.example.org%2falfresco%2fwcs%2fwebframework%2fcontent%2fmetadata%3fuser%3dadmin&locale=zh_CN">Chinese (Simplified)</a></li[\n]"
10:37:45,865 DEBUG [httpclient.wire.content] << "[0x9][0x9][0x9][0x9][0x9][0x9][0x9]><li><a href="login?service=http%3a%2f%2fserver.example.org%2falfresco%2fwcs%2fwebframework%2fcontent%2fmetadata%3fuser%3dadmin&locale=de">Deutsch</a></li[\n]"
10:37:45,865 DEBUG [httpclient.wire.content] << "[0x9][0x9][0x9][0x9][0x9][0x9][0x9]><li><a href="login?service=http%3a%2f%2fserver.example.org%2falfresco%2fwcs%2fwebframework%2fcontent%2fmetadata%3fuser%3dadmin&locale=ja">Japanese</a></li[\n]"
10:37:45,865 DEBUG [httpclient.wire.content] << "[0x9][0x9][0x9][0x9][0x9][0x9][0x9]><li><a href="login?service=http%3a%2f%2fserver.example.org%2falfresco%2fwcs%2fwebframework%2fcontent%2fmetadata%3fuser%3dadmin&locale=hr">Croatian</a></li[\n]"
10:37:45,865 DEBUG [httpclient.wire.content] << "[0x9][0x9][0x9][0x9][0x9][0x9][0x9]><li><a href="login?service=http%3a%2f%2fserver.example.org%2falfresco%2fwcs%2fwebframework%2fcontent%2fmetadata%3fuser%3dadmin&locale=cs">Czech</a></li[\n]"
10:37:45,865 DEBUG [httpclient.wire.content] << "[0x9][0x9][0x9][0x9][0x9][0x9][0x9]><li><a href="login?service=http%3a%2f%2fserver.example.org%2falfresco%2fwcs%2fwebframework%2fcontent%2fmetadata%3fuser%3dadmin&locale=sl">Slovenian</a></li[\n]"
10:37:45,865 DEBUG [httpclient.wire.content] << "[0x9][0x9][0x9][0x9][0x9][0x9][0x9]><li class="last"><a href="login?service=http%3a%2f%2fserver.example.org%2falfresco%2fwcs%2fwebframework%2fcontent%2fmetadata%3fuser%3dadmin&locale=pl">Polish</a></li[\n]"
10:37:45,865 DEBUG [httpclient.wire.content] << "[0x9][0x9][0x9][0x9][0x9][0x9]></ul>[\n]"
10:37:45,866 DEBUG [httpclient.wire.content] << "                     [\n]"
10:37:45,866 DEBUG [httpclient.wire.content] << "                   [\n]"
10:37:45,866 DEBUG [httpclient.wire.content] << "                </div>[\n]"
10:37:45,866 DEBUG [httpclient.wire.content] << "            </div>[\n]"
10:37:45,866 DEBUG [httpclient.wire.content] << "                </div>[\n]"
10:37:45,866 DEBUG [httpclient.wire.content] << "                <div id="footer" class="fl-panel fl-note fl-bevel-white fl-font-size-80">[\n]"
10:37:45,866 DEBUG [httpclient.wire.content] << "                    <div>[\n]"
10:37:45,866 DEBUG [httpclient.wire.content] << "                        <p>Copyright &copy; 2005 - 2010 Jasig, Inc. All rights reserved.</p>[\n]"
10:37:45,866 DEBUG [httpclient.wire.content] << "                        <p>Powered by <a href="http://www.jasig.org/cas">Jasig Central Authentication Service 3.4.2</a></p>[\n]"
10:37:45,866 DEBUG [httpclient.wire.content] << "                    </div>[\n]"
10:37:45,866 DEBUG [httpclient.wire.content] << "                    <a href="http://www.jasig.org" title="go to Jasig home page"><img id="logo" src="images/ja-sig-logo.gif" width="118" height="31" alt="JA-SIG" title="go to Jasig home page" /></a>[\n]"
10:37:45,866 DEBUG [httpclient.wire.content] << "                </div>[\n]"
10:37:45,866 DEBUG [httpclient.wire.content] << "            </div>[\n]"
10:37:45,866 DEBUG [httpclient.wire.content] << "        </div>[\n]"
10:37:45,867 DEBUG [httpclient.wire.content] << "    </body>[\n]"
10:37:45,867 DEBUG [httpclient.wire.content] << "</html>[\n]"
10:37:45,867 DEBUG [httpclient.wire.content] << "[\n]"
10:37:45,867 DEBUG [org.apache.commons.httpclient.HttpMethodBase] Resorting to protocol version default close connection policy
10:37:45,867 DEBUG [org.apache.commons.httpclient.HttpMethodBase] Should NOT close connection, using HTTP/1.1
10:37:45,867 DEBUG [org.apache.commons.httpclient.HttpConnection] Releasing connection back to connection manager.

When I log in with firefox and the p12 cert it skips the login page and goes to Alfresco.

I can verify that this works with curl:
* About to connect() to server.example.org port 80 (#0)
*   Trying 10.77.9.87… connected
* Connected to server.example.org (10.77.9.87) port 80 (#0)
> POST /alfresco/wcs/webframework/content/metadata?user=admin HTTP/1.1
> User-Agent: curl/7.19.7 (x86_64-pc-linux-gnu) libcurl/7.19.7 OpenSSL/0.9.8k zlib/1.2.3.3 libidn/1.15
> Host: server.example.org
> Accept: */*
> Content-Length: 11
> Content-Type: application/x-www-form-urlencoded
>
< HTTP/1.1 302 Found
< Date: Fri, 07 May 2010 17:47:55 GMT
< Location: https://server.example.org/login/login?service=http%3a%2f%2fserver.example.org%2falfresco%2fwcs%2fwebframework%2fcontent%2fmetadata%3fuser%3dadmin
< Vary: Accept-Encoding
< Content-Length: 417
< Content-Type: text/html; charset=iso-8859-1
<
* Ignoring the response-body
* Connection #0 to host server.example.org left intact
* Issue another request to this URL: 'https://server.example.org/login/login?service=http%3a%2f%2fserver.example.org%2falfresco%2fwcs%2fwebframework%2fcontent%2fmetadata%3fuser%3dadmin'
* Violate RFC 2616/10.3.3 and switch from POST to GET
* About to connect() to server.example.org port 443 (#1)
*   Trying 10.77.9.87… connected
* Connected to server.example.org (10.77.9.87) port 443 (#1)
* successfully set certificate verify locations:
*   CAfile: none
  CApath: /etc/ssl/certs
* SSLv3, TLS handshake, Client hello (1):
* SSLv3, TLS handshake, Server hello (2):
* SSLv3, TLS handshake, CERT (11):
* SSLv3, TLS handshake, Server key exchange (12):
* SSLv3, TLS handshake, Request CERT (13):
* SSLv3, TLS handshake, Server finished (14):
* SSLv3, TLS handshake, CERT (11):
* SSLv3, TLS handshake, Client key exchange (16):
* SSLv3, TLS handshake, CERT verify (15):
* SSLv3, TLS change cipher, Client hello (1):
* SSLv3, TLS handshake, Finished (20):
* SSLv3, TLS change cipher, Client hello (1):
* SSLv3, TLS handshake, Finished (20):
* SSL connection using DHE-RSA-AES256-SHA
* Server certificate:
*     subject: O=*.iscompass.com; OU=Domain Control Validated; CN=*.iscompass.com
*     start date: 2010-02-25 17:18:00 GMT
*     expire date: 2011-02-25 17:18:00 GMT
*     subjectAltName: server.example.org matched
*     issuer: C=US; ST=Arizona; L=Scottsdale; O=GoDaddy.com, Inc.; OU=http://certificates.godaddy.com/repository; CN=Go Daddy Secure Certification Authority; serialNumber=07969287
*     SSL certificate verify ok.
> GET /login/login?service=http%3a%2f%2fserver.example.org%2falfresco%2fwcs%2fwebframework%2fcontent%2fmetadata%3fuser%3dadmin HTTP/1.1
> User-Agent: curl/7.19.7 (x86_64-pc-linux-gnu) libcurl/7.19.7 OpenSSL/0.9.8k zlib/1.2.3.3 libidn/1.15
> Host: server.example.org
> Accept: */*
>
< HTTP/1.1 302 Moved Temporarily
< Date: Fri, 07 May 2010 17:47:55 GMT
< Server: Apache/2.2.14 (Ubuntu)
< Pragma: no-cache
< Expires: Thu, 01 Jan 1970 00:00:00 GMT
< Cache-Control: no-cache
< Cache-Control: no-store
* Added cookie CASTGC="TGT-2-7K3q16ijRDKaNHJu7yRQ5vIrDVt2WIvSlaCg29ICt4D2QayVo6-cas" for domain server.example.org, path /login, expire 0
< Set-Cookie: CASTGC=TGT-2-7K3q16ijRDKaNHJu7yRQ5vIrDVt2WIvSlaCg29ICt4D2QayVo6-cas; Path=/login; Secure
< Location: http://server.example.org/alfresco/wcs/webframework/content/metadata?user=admin&ticket=ST-2-c4ndldGLTNsioRX25Wka-cas
< Content-Length: 0
< Content-Type: text/plain
<
* Connection #1 to host server.example.org left intact
* Issue another request to this URL: 'http://server.example.org/alfresco/wcs/webframework/content/metadata?user=admin&ticket=ST-2-c4ndldGLTNsioRX25Wka-cas'
* Re-using existing connection! (#0) with host server.example.org
* Connected to server.example.org (10.77.9.87) port 80 (#0)
> GET /alfresco/wcs/webframework/content/metadata?user=admin&ticket=ST-2-c4ndldGLTNsioRX25Wka-cas HTTP/1.1
> User-Agent: curl/7.19.7 (x86_64-pc-linux-gnu) libcurl/7.19.7 OpenSSL/0.9.8k zlib/1.2.3.3 libidn/1.15
> Host: server.example.org
> Accept: */*
>
< HTTP/1.1 302 Found
< Date: Fri, 07 May 2010 17:47:55 GMT
* Added cookie MOD_AUTH_CAS="f82846bdc4f19433e0f9ff01cc495f19" for domain server.example.org, path /alfresco, expire 0
< Set-Cookie: MOD_AUTH_CAS=f82846bdc4f19433e0f9ff01cc495f19;Path=/alfresco
< Location: http://server.example.org/alfresco/wcs/webframework/content/metadata?user%3dadmin
< Vary: Accept-Encoding
< Content-Length: 351
< Content-Type: text/html; charset=iso-8859-1
<
* Ignoring the response-body
* Connection #0 to host server.example.org left intact
* Issue another request to this URL: 'http://server.example.org/alfresco/wcs/webframework/content/metadata?user%3dadmin'
* Re-using existing connection! (#0) with host server.example.org
* Connected to server.example.org (10.77.9.87) port 80 (#0)
> GET /alfresco/wcs/webframework/content/metadata?user%3dadmin HTTP/1.1
> User-Agent: curl/7.19.7 (x86_64-pc-linux-gnu) libcurl/7.19.7 OpenSSL/0.9.8k zlib/1.2.3.3 libidn/1.15
> Host: server.example.org
> Accept: */*
> Cookie: MOD_AUTH_CAS=f82846bdc4f19433e0f9ff01cc495f19
>
< HTTP/1.1 302 Moved Temporarily
< Date: Fri, 07 May 2010 17:47:55 GMT
* Added cookie JSESSIONID="CB11B3955F8DF0959EA30FB28E51114B" for domain server.example.org, path /alfresco, expire 0
< Set-Cookie: JSESSIONID=CB11B3955F8DF0959EA30FB28E51114B; Path=/alfresco
< Location: http://server.example.org/alfresco/faces/jsp/login.jsp
< Content-Length: 0
< Content-Type: text/plain
<
* Connection #0 to host server.example.org left intact
* Issue another request to this URL: 'http://server.example.org/alfresco/faces/jsp/login.jsp'
* Re-using existing connection! (#0) with host server.example.org
* Connected to server.example.org (10.77.9.87) port 80 (#0)
> GET /alfresco/faces/jsp/login.jsp HTTP/1.1
> User-Agent: curl/7.19.7 (x86_64-pc-linux-gnu) libcurl/7.19.7 OpenSSL/0.9.8k zlib/1.2.3.3 libidn/1.15
> Host: server.example.org
> Accept: */*
> Cookie: JSESSIONID=CB11B3955F8DF0959EA30FB28E51114B; MOD_AUTH_CAS=f82846bdc4f19433e0f9ff01cc495f19
>
< HTTP/1.1 200 OK
< Date: Fri, 07 May 2010 17:47:55 GMT
< Content-Type: text/html;charset=UTF-8
< Content-Language: en
< Vary: Accept-Encoding
< Transfer-Encoding: chunked
<






















<body bgcolor="#ffffff" style="background-image: url(/alfresco/images/logo/AlfrescoFadedBG.png); background-repeat: no-repeat; background-attachment: fixed">

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
    "http://www.w3.org/TR/html4/loose.dtd">
<html><head><title>Alfresco Web Client - Login</title>
<link rel="search" type="application/opensearchdescription+xml" href="/alfresco/wcservice/api/search/keyword/description.xml" title="Alfresco Keyword Search">
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<meta http-equiv="X-UA-Compatible" content="Edge" />
<link rel="stylesheet" href="/alfresco/css/main.css" type="text/css">
<link rel="stylesheet" href="/alfresco/css/picker.css" type="text/css">
<script type="text/javascript" src="/alfresco/scripts/menu.js"></script>
<script type="text/javascript" src="/alfresco/scripts/webdav.js"></script>
<script type="text/javascript" src="/alfresco/scripts/ajax/yahoo/yahoo/yahoo-min.js"></script>
<script type="text/javascript" src="/alfresco/scripts/ajax/yahoo/connection/connection-min.js"></script>
<script type="text/javascript" src="/alfresco/scripts/ajax/yahoo/event/event-min.js"></script>
<script type="text/javascript" src="/alfresco/scripts/ajax/mootools.v1.11.js"></script>
<script type="text/javascript" src="/alfresco/scripts/ajax/common.js"></script>
<script type="text/javascript" src="/alfresco/scripts/ajax/summary-info.js"></script>
<script type="text/javascript" src="/alfresco/scripts/ajax/picker.js"></script>
<script type="text/javascript" src="/alfresco/scripts/ajax/tagger.js"></script>
<script type="text/javascript">setContextPath('/alfresco');</script>
</head><body>








<form id="loginForm" name="loginForm" method="post" action="/alfresco/faces/jsp/login.jsp" accept-charset="UTF-8" enctype="application/x-www-form-urlencoded">

<table width=100% height=98% align=center>
<tr width=100% align=center>
<td valign=middle align=center width=100%>

<table cellspacing=0 cellpadding=0 border=0>
<tr><td width=7><img src='/alfresco/images/parts/white_01.gif' width=7 height=7 alt=''></td>
<td background='/alfresco/images/parts/white_02.gif'>
<img src='/alfresco/images/parts/white_02.gif' width=7 height=7 alt=''></td>
<td width=7><img src='/alfresco/images/parts/white_03.gif' width=7 height=7 alt=''></td>
</tr>
<tr><td background='/alfresco/images/parts/white_04.gif'>
<img src='/alfresco/images/parts/white_04.gif' width=7 height=7 alt=''></td><td bgcolor='white'>

<table border=0 cellspacing=4 cellpadding=2>
<tr>
<td colspan=2>
<img src='/alfresco/images/logo/AlfrescoLogo200.png' width=200 height=58 alt="Alfresco" title="Alfresco">
</td>
</tr>

<tr>
<td colspan=2>
<span class='mainSubTitle'>Enter Login details:</span>
</td>
</tr>

<tr>
<td>
User Name:
</td>
<td>

<input id="loginForm:user-name" name="loginForm:user-name" type="text" value="" style="width:150px" />
</td>
</tr>

<tr>
<td>
Password:
</td>
<td>


<input type="password" id="loginForm:user-password" name="loginForm:user-password" style="width:150px" />
</td>
</tr>

<tr>
<td>
Language:
</td>
<td>



<select id="loginForm:language" name="loginForm:language" size="1" style="width:150px" onchange="document.forms['loginForm'].submit(); return true;">   <option value="en_US" selected="selected">English</option></select>
</td>
</tr>

<tr>
<td colspan=2 align=right>
<input id="loginForm:submit" name="loginForm:submit" type="submit" value="Login" onclick="if(typeof window.clearFormHiddenParams_loginForm!='undefined'){clearFormHiddenParams_loginForm('loginForm');}" />
</td>
</tr>

<tr>
<td colspan=2>


</td>
</tr>
</table>

</td><td background='/alfresco/images/parts/white_06.gif'>
<img src='/alfresco/images/parts/white_06.gif' width=7 height=7 alt=''></td></tr>
<tr><td width=7><img src='/alfresco/images/parts/white_07.gif' width=7 height=7 alt=''></td>
<td background='/alfresco/images/parts/white_08.gif'>
<img src='/alfresco/images/parts/white_08.gif' width=7 height=7 alt=''></td>
<td width=7><img src='/alfresco/images/parts/white_09.gif' width=7 height=7 alt=''></td></tr>
</table>

<div id="no-cookies" style="display:none">
<table cellpadding="0" cellspacing="0" border="0" style="padding-top:16px;">
<tr>
<td>
<table cellspacing='0' cellpadding='0' style='border-width: 0px; width: 100%'><tr><td style='width: 7px;'><img src='/alfresco/images/parts/yellowInner_01.gif' width='7' height='7' alt=''/></td><td style='background-image: url(/alfresco/images/parts/yellowInner_02.gif)'><img src='/alfresco/images/parts/yellowInner_02.gif' width='7' height='7' alt=''/></td><td style='width: 7px;'><img src='/alfresco/images/parts/yellowInner_03.gif' width='7' height='7' alt=''/></td></tr><tr><td style='background-image: url(/alfresco/images/parts/yellowInner_04.gif)'><img src='/alfresco/images/parts/yellowInner_04.gif' width='7' height='7' alt=''/></td><td style='background-color:#ffffcc;'>
<table cellpadding="0" cellspacing="0" border="0">
<tr>
<td valign=top style="padding-top:2px" width=20><img src="/alfresco/images/icons/info_icon.gif" height="16" width="16" /></td>
<td class="mainSubText">
Cookies must be enabled in your browser for the Alfresco Web-Client to function correctly.
</td>
</tr>
</table>
</td><td style='background-image: url(/alfresco/images/parts/yellowInner_06.gif)'><img src='/alfresco/images/parts/yellowInner_06.gif' width='7' height='7' alt=''/></td></tr><tr><td style='width: 7px;'><img src='/alfresco/images/parts/yellowInner_07.gif' width='7' height='7' alt=''/></td><td style='background-image: url(/alfresco/images/parts/yellowInner_08.gif)'><img src='/alfresco/images/parts/yellowInner_08.gif' width='7' height='7' alt=''/></td><td style='width: 7px;'><img src='/alfresco/images/parts/yellowInner_09.gif' width='7' height='7' alt=''/></td></tr></table>
</td>
</tr>
</table>
</div>
<script>
document.cookie="_alfTest=_alfTest"
var cookieEnabled = (document.cookie.indexOf("_alfTest") != -1);
if (cookieEnabled == false)
{
document.getElementById("no-cookies").style.display = 'inline';
}
</script>

</td>
</tr>

</table>

<input type="hidden" name="loginForm_SUBMIT" value="1" /><input type="hidden" name="loginForm:_idcl" /><input type="hidden" name="loginForm:_link_hidden_" /><script type="text/javascript"><!–

   function clear_loginForm()
   {
      clearFormHiddenParams_loginForm('loginForm');
   }
   
   function clearFormHiddenParams_loginForm(currFormName)
   {
      var f = document.forms['loginForm'];
      f.elements['loginForm:_idcl'].value='';
      f.elements['loginForm:_link_hidden_'].value='';
      f.target='';
   }
   
   clearFormHiddenParams_loginForm();
//–></script><input type="hidden" name="javax.faces.ViewState" id="javax.faces.ViewState" value="rO0ABXVyABNbTGphdmEubGFuZy5PYmplY3Q7kM5YnxBzKWwCAAB4cAAAAAN0AAExcHQADi9qc3AvbG9naW4uanNw" /></form>


<script>

if (document.getElementById("loginForm:user-name").value.length == 0)
{
document.getElementById("loginForm:user-name").focus();
}
else
{
document.getElementById("loginForm:user-password").focus();
}

</script>


</body></html>

</body>
* Connection #0 to host server.example.org left intact
* Closing connection #1
* SSLv3, TLS alert, Client hello (1):
* Closing connection #0
   

Notice that in the curl example we get an alfresco page, in the share debug log we get a CAS login page.

Outcomes