phpCAS with Apache started redirect loop after upgrade - what's going on?? (please help)

82 views
Skip to first unread message

Stewart

unread,
Mar 5, 2021, 12:45:53 PM3/5/21
to CAS Community
I upgraded to php74 and apache2.4.41 on ubuntu 20.04 and my phpCAS (1.3.8) started an infinite redirect loop (which ends with a redirected too many times) between the php app and CAS (6.1.x).  It appears that CAS is successfully authenticating and providing a ticket to phpCAS, which is either ignored or otherwise not considered valid.  I'm fairly sure it's some change to this platform as it worked before and I have other places where phpCAS continues to function with the same CAS server and similar services entries.  I'm just at a complete loss as to figure out how to troubleshoot this and fix it...

Here's a debug log (anonymized a bit) for a single attempt --- is anyone able to please give me a clue as to what's going on with this?

4CF9 .START (2021-03-05 17:36:54) phpCAS-1.3.8 ****************** [CAS.php:475]
4CF9 .=> phpCAS::client('2.0', 'cas.example.com', 443, '/cas') [example_simple.php:29]
4CF9 .|    => CAS_Client::__construct('2.0', false, 'cas.example.com', 443, '/cas', true) [CAS.php:365]
4CF9 .|    |    Starting a new session ckf9jgglmr1c37nlsfd3vnv956 [Client.php:932]
4CF9 .|    |    Session is not authenticated [Client.php:938]
4CF9 .|    <= ''
4CF9 .<= ''
4CF9 .=> phpCAS::setCasServerCACert('/etc/ssl/certs/cas-trust.crt') [example_simple.php:33]
4CF9 .<= ''
4CF9 .=> phpCAS::forceAuthentication() [example_simple.php:41]
4CF9 .|    => CAS_Client::forceAuthentication() [CAS.php:1120]
4CF9 .|    |    => CAS_Client::isAuthenticated() [Client.php:1286]
4CF9 .|    |    |    => CAS_Client::_wasPreviouslyAuthenticated() [Client.php:1398]
4CF9 .|    |    |    |    no user found [Client.php:1640]
4CF9 .|    |    |    <= false
4CF9 .|    |    |    no ticket found [Client.php:1499]
4CF9 .|    |    <= false
4CF9 .|    |    => CAS_Client::redirectToCas(false) [Client.php:1295]
4CF9 .|    |    |    => CAS_Client::getServerLoginURL(false, false) [Client.php:1661]
4CF9 .|    |    |    |    => CAS_Client::getURL() [Client.php:342]
4CF9 .|    |    |    |    |    Final URI: https://ct.example.com/example_simple.php [Client.php:3585]
4CF9 .|    |    |    |    <= 'https://ct.example.com/example_simple.php'
4CF9 .|    |    |    exit()
4CF9 .|    |    |    -
4CF9 .|    |    -
4CF9 .|    -
38A5 .START (2021-03-05 17:37:05) phpCAS-1.3.8 ****************** [CAS.php:475]
38A5 .=> phpCAS::client('2.0', 'cas.example.com', 443, '/cas') [example_simple.php:29]
38A5 .|    => CAS_Client::__construct('2.0', false, 'cas.example.com', 443, '/cas', true) [CAS.php:365]
38A5 .|    |    Starting a new session fu72cjc1vjgas1fmoh9e54qlil [Client.php:932]
38A5 .|    |    Session is not authenticated [Client.php:938]
38A5 .|    |    Ticket 'ST-2686-YNQIAWP-A6GsZgmvA-316GuFo4c-cas0' found [Client.php:1026]
38A5 .|    <= ''
38A5 .<= ''
38A5 .=> phpCAS::setCasServerCACert('/etc/ssl/certs/cas-trust.crt') [example_simple.php:33]
38A5 .<= ''
38A5 .=> phpCAS::forceAuthentication() [example_simple.php:41]
38A5 .|    => CAS_Client::forceAuthentication() [CAS.php:1120]
38A5 .|    |    => CAS_Client::isAuthenticated() [Client.php:1286]
38A5 .|    |    |    => CAS_Client::_wasPreviouslyAuthenticated() [Client.php:1398]
38A5 .|    |    |    |    no user found [Client.php:1640]
38A5 .|    |    |    <= false
38A5 .|    |    |    CAS 2.0 ticket `ST-2686-YNQIAWP-A6GsZgmvA-316GuFo4c-cas0' is present [Client.php:1451]
38A5 .|    |    |    => CAS_Client::validateCAS20('', NULL, NULL, false) [Client.php:1454]
38A5 .|    |    |    |     [Client.php:3216]
38A5 .|    |    |    |    => CAS_Client::getServerServiceValidateURL() [Client.php:3222]
38A5 .|    |    |    |    |    => CAS_Client::getURL() [Client.php:453]
38A5 .|    |    |    |    |    |    Final URI: https://ct.example.com/example_simple.php [Client.php:3585]
38A5 .|    |    |    |    |    <= 'https://ct.example.com/example_simple.php'
38A5 .|    |    |    |    |    => CAS_Request_CurlRequest::sendRequest() [AbstractRequest.php:242]
38A5 .|    |    |    |    |    |    CURL: Set CURLOPT_CAINFO /etc/ssl/certs/cas-trust.crt [CurlRequest.php:129]
38A5 .|    |    |    |    |    |    Response Body:
38A5 .|    |    |    |    |    |    <cas:serviceResponse xmlns:cas='http://www.yale.edu/tp/cas'>
38A5 .|    |    |    |    |    |        <cas:authenticationSuccess>
38A5 .|    |    |    |    |    |            <cas:user>jsmith</cas:user>
38A5 .|    |    |    |    |    |            <cas:attributes>
38A5 .|    |    |    |    |    |                <cas:credentialType>UsernamePasswordCredential</cas:credentialType>
38A5 .|    |    |    |    |    |                <cas:samlAuthenticationStatementAuthMethod>urn:oasis:names:tc:SAML:1.0:am:password</cas:samlAuthenticationStatementAuthMethod>
38A5 .|    |    |    |    |    |                <cas:isFromNewLogin>true</cas:isFromNewLogin>
38A5 .|    |    |    |    |    |                <cas:authenticationDate>2021-03-05T17:37:05.332653Z</cas:authenticationDate>
38A5 .|    |    |    |    |    |                <cas:authenticationMethod>Active Directory</cas:authenticationMethod>
38A5 .|    |    |    |    |    |                <cas:displayName>John Smith</cas:displayName>
38A5 .|    |    |    |    |    |                <cas:successfulAuthenticationHandlers>Active Directory</cas:successfulAuthenticationHandlers>
38A5 .|    |    |    |    |    |                <cas:longTermAuthenticationRequestTokenUsed>false</cas:longTermAuthenticationRequestTokenUsed>
38A5 .|    |    |    |    |    |                </cas:attributes>
38A5 .|    |    |    |    |    |        </cas:authenticationSuccess>
38A5 .|    |    |    |    |    |    </cas:serviceResponse>
38A5 .|    |    |    |    |    |
38A5 .|    |    |    |    |    |     [CurlRequest.php:84]
38A5 .|    |    |    |    |    <= true
38A5 .|    |    |    |    <= true
38A5 .|    |    |    |    => CAS_Client::_readExtraAttributesCas20(DOMNodeList) [Client.php:3301]
38A5 .|    |    |    |    |    Found nested jasig style attributes [Client.php:3383]
38A5 .|    |    |    |    |    Attribute [credentialType] = UsernamePasswordCredential [Client.php:3389]
38A5 .|    |    |    |    |    Attribute [samlAuthenticationStatementAuthMethod] = urn:oasis:names:tc:SAML:1.0:am:password [Client.php:3389]
38A5 .|    |    |    |    |    Attribute [isFromNewLogin] = true [Client.php:3389]
38A5 .|    |    |    |    |    Attribute [authenticationDate] = 2021-03-05T17:37:05.332653Z [Client.php:3389]
38A5 .|    |    |    |    |    Attribute [authenticationMethod] = Active Directory [Client.php:3389]
38A5 .|    |    |    |    |    Attribute [displayName] = John Smith [Client.php:3389]
38A5 .|    |    |    |    |    Attribute [successfulAuthenticationHandlers] = Active Directory [Client.php:3389]
38A5 .|    |    |    |    |    Attribute [longTermAuthenticationRequestTokenUsed] = false [Client.php:3389]
38A5 .|    |    |    |    <= ''
38A5 .|    |    |    |    => CAS_ProxyChain_AllowedList::isProxyListAllowed(array ()) [Client.php:3313]
38A5 .|    |    |    |    |    No proxies were found in the response [AllowedList.php:81]
38A5 .|    |    |    |    <= true
38A5 .|    |    |    |    => CAS_Client::_renameSession('ST-2686-YNQIAWP-A6GsZgmvA-316GuFo4c-cas0') [Client.php:3331]
38A5 .|    |    |    |    |    Killing session: fu72cjc1vjgas1fmoh9e54qlil [Client.php:3718]
38A5 .|    |    |    |    |    Starting session: 2f6bf6441d77521dbff8ca436f902ddb8831c897715c8418d59a517f371e0636 [Client.php:3722]
38A5 .|    |    |    |    |    Restoring old session vars [Client.php:3725]
38A5 .|    |    |    |    <= ''
38A5 .|    |    |    <= true
38A5 .|    |    |    CAS 2.0 ticket `ST-2686-YNQIAWP-A6GsZgmvA-316GuFo4c-cas0' was validated [Client.php:1457]
38A5 .|    |    |    => CAS_Client::getURL() [Client.php:1523]
38A5 .|    |    |    <= 'https://ct.example.com/example_simple.php'
38A5 .|    |    |    Prepare redirect to : https://ct.example.com/example_simple.php [Client.php:1523]
38A5 .|    |    |    => CAS_Client::getURL() [Client.php:1525]
38A5 .|    |    |    <= 'https://ct.example.com/example_simple.php'
38A5 .|    |    |    exit()
38A5 .|    |    |    -
38A5 .|    |    -
38A5 .|    -
5B90 .START (2021-03-05 17:37:05) phpCAS-1.3.8 ****************** [CAS.php:475]
5B90 .=> phpCAS::client('2.0', 'cas.example.com', 443, '/cas') [example_simple.php:29]
5B90 .|    => CAS_Client::__construct('2.0', false, 'cas.example.com', 443, '/cas', true) [CAS.php:365]
5B90 .|    |    Starting a new session ksugi1qvlm6aforko58ne6tk08 [Client.php:932]
5B90 .|    |    Session is not authenticated [Client.php:938]
5B90 .|    <= ''
5B90 .<= ''
5B90 .=> phpCAS::setCasServerCACert('/etc/ssl/certs/cas-trust.crt') [example_simple.php:33]
5B90 .<= ''
5B90 .=> phpCAS::forceAuthentication() [example_simple.php:41]
5B90 .|    => CAS_Client::forceAuthentication() [CAS.php:1120]
5B90 .|    |    => CAS_Client::isAuthenticated() [Client.php:1286]
5B90 .|    |    |    => CAS_Client::_wasPreviouslyAuthenticated() [Client.php:1398]
5B90 .|    |    |    |    no user found [Client.php:1640]
5B90 .|    |    |    <= false
5B90 .|    |    |    no ticket found [Client.php:1499]
5B90 .|    |    <= false
5B90 .|    |    => CAS_Client::redirectToCas(false) [Client.php:1295]
5B90 .|    |    |    => CAS_Client::getServerLoginURL(false, false) [Client.php:1661]
5B90 .|    |    |    |    => CAS_Client::getURL() [Client.php:342]
5B90 .|    |    |    |    |    Final URI: https://ct.example.com/example_simple.php [Client.php:3585]
5B90 .|    |    |    |    <= 'https://ct.example.com/example_simple.php'
5B90 .|    |    |    exit()
5B90 .|    |    |    -
5B90 .|    |    -
5B90 .|    -
B507 .START (2021-03-05 17:37:05) phpCAS-1.3.8 ****************** [CAS.php:475]
B507 .=> phpCAS::client('2.0', 'cas.example.com', 443, '/cas') [example_simple.php:29]
B507 .|    => CAS_Client::__construct('2.0', false, 'cas.example.com', 443, '/cas', true) [CAS.php:365]
B507 .|    |    Starting a new session 5r51gjdvtb5bfqdoh6f0sqh12c [Client.php:932]
B507 .|    |    Session is not authenticated [Client.php:938]
B507 .|    |    Ticket 'ST-2687-Vshhs9lQVPj6LjPYT5VD7lNpIZY-cas0' found [Client.php:1026]
B507 .|    <= ''
B507 .<= ''
B507 .=> phpCAS::setCasServerCACert('/etc/ssl/certs/cas-trust.crt') [example_simple.php:33]
B507 .<= ''
B507 .=> phpCAS::forceAuthentication() [example_simple.php:41]
B507 .|    => CAS_Client::forceAuthentication() [CAS.php:1120]
B507 .|    |    => CAS_Client::isAuthenticated() [Client.php:1286]
B507 .|    |    |    => CAS_Client::_wasPreviouslyAuthenticated() [Client.php:1398]
B507 .|    |    |    |    no user found [Client.php:1640]
B507 .|    |    |    <= false
B507 .|    |    |    CAS 2.0 ticket `ST-2687-Vshhs9lQVPj6LjPYT5VD7lNpIZY-cas0' is present [Client.php:1451]
B507 .|    |    |    => CAS_Client::validateCAS20('', NULL, NULL, false) [Client.php:1454]
B507 .|    |    |    |     [Client.php:3216]
B507 .|    |    |    |    => CAS_Client::getServerServiceValidateURL() [Client.php:3222]
B507 .|    |    |    |    |    => CAS_Client::getURL() [Client.php:453]
B507 .|    |    |    |    |    |    Final URI: https://ct.example.com/example_simple.php [Client.php:3585]
B507 .|    |    |    |    |    <= 'https://ct.example.com/example_simple.php'
B507 .|    |    |    |    |    => CAS_Request_CurlRequest::sendRequest() [AbstractRequest.php:242]
B507 .|    |    |    |    |    |    CURL: Set CURLOPT_CAINFO /etc/ssl/certs/cas-trust.crt [CurlRequest.php:129]
B507 .|    |    |    |    |    |    Response Body:
B507 .|    |    |    |    |    |    <cas:serviceResponse xmlns:cas='http://www.yale.edu/tp/cas'>
B507 .|    |    |    |    |    |        <cas:authenticationSuccess>
B507 .|    |    |    |    |    |            <cas:user>jsmith</cas:user>
B507 .|    |    |    |    |    |            <cas:attributes>
B507 .|    |    |    |    |    |                <cas:credentialType>UsernamePasswordCredential</cas:credentialType>
B507 .|    |    |    |    |    |                <cas:samlAuthenticationStatementAuthMethod>urn:oasis:names:tc:SAML:1.0:am:password</cas:samlAuthenticationStatementAuthMethod>
B507 .|    |    |    |    |    |                <cas:isFromNewLogin>false</cas:isFromNewLogin>
B507 .|    |    |    |    |    |                <cas:authenticationDate>2021-03-05T17:37:05.332653Z</cas:authenticationDate>
B507 .|    |    |    |    |    |                <cas:authenticationMethod>Active Directory</cas:authenticationMethod>
B507 .|    |    |    |    |    |                <cas:displayName>John Smith</cas:displayName>
B507 .|    |    |    |    |    |                <cas:successfulAuthenticationHandlers>Active Directory</cas:successfulAuthenticationHandlers>
B507 .|    |    |    |    |    |                <cas:longTermAuthenticationRequestTokenUsed>false</cas:longTermAuthenticationRequestTokenUsed>
B507 .|    |    |    |    |    |                </cas:attributes>
B507 .|    |    |    |    |    |        </cas:authenticationSuccess>
B507 .|    |    |    |    |    |    </cas:serviceResponse>
B507 .|    |    |    |    |    |
B507 .|    |    |    |    |    |     [CurlRequest.php:84]
B507 .|    |    |    |    |    <= true
B507 .|    |    |    |    <= true
B507 .|    |    |    |    => CAS_Client::_readExtraAttributesCas20(DOMNodeList) [Client.php:3301]
B507 .|    |    |    |    |    Found nested jasig style attributes [Client.php:3383]
B507 .|    |    |    |    |    Attribute [credentialType] = UsernamePasswordCredential [Client.php:3389]
B507 .|    |    |    |    |    Attribute [samlAuthenticationStatementAuthMethod] = urn:oasis:names:tc:SAML:1.0:am:password [Client.php:3389]
B507 .|    |    |    |    |    Attribute [isFromNewLogin] = false [Client.php:3389]
B507 .|    |    |    |    |    Attribute [authenticationDate] = 2021-03-05T17:37:05.332653Z [Client.php:3389]
B507 .|    |    |    |    |    Attribute [authenticationMethod] = Active Directory [Client.php:3389]
B507 .|    |    |    |    |    Attribute [displayName] = John Smith [Client.php:3389]
B507 .|    |    |    |    |    Attribute [successfulAuthenticationHandlers] = Active Directory [Client.php:3389]
B507 .|    |    |    |    |    Attribute [longTermAuthenticationRequestTokenUsed] = false [Client.php:3389]
B507 .|    |    |    |    <= ''
B507 .|    |    |    |    => CAS_ProxyChain_AllowedList::isProxyListAllowed(array ()) [Client.php:3313]
B507 .|    |    |    |    |    No proxies were found in the response [AllowedList.php:81]
B507 .|    |    |    |    <= true
B507 .|    |    |    |    => CAS_Client::_renameSession('ST-2687-Vshhs9lQVPj6LjPYT5VD7lNpIZY-cas0') [Client.php:3331]
B507 .|    |    |    |    |    Killing session: 5r51gjdvtb5bfqdoh6f0sqh12c [Client.php:3718]
B507 .|    |    |    |    |    Starting session: f0361192b8b02f430a61e0fef32e1a5c9399bad6071b70949969262b894e615b [Client.php:3722]
B507 .|    |    |    |    |    Restoring old session vars [Client.php:3725]
B507 .|    |    |    |    <= ''
B507 .|    |    |    <= true
B507 .|    |    |    CAS 2.0 ticket `ST-2687-Vshhs9lQVPj6LjPYT5VD7lNpIZY-cas0' was validated [Client.php:1457]
B507 .|    |    |    => CAS_Client::getURL() [Client.php:1523]
B507 .|    |    |    <= 'https://ct.example.com/example_simple.php'
B507 .|    |    |    Prepare redirect to : https://ct.example.com/example_simple.php [Client.php:1523]
B507 .|    |    |    => CAS_Client::getURL() [Client.php:1525]
B507 .|    |    |    <= 'https://ct.example.com/example_simple.php'
B507 .|    |    |    exit()
B507 .|    |    |    -
B507 .|    |    -
B507 .|    -
553A .START (2021-03-05 17:37:05) phpCAS-1.3.8 ****************** [CAS.php:475]
553A .=> phpCAS::client('2.0', 'cas.example.com', 443, '/cas') [example_simple.php:29]
553A .|    => CAS_Client::__construct('2.0', false, 'cas.example.com', 443, '/cas', true) [CAS.php:365]
553A .|    |    Starting a new session po1u8tt5s14i03e5i0r2rgrmoc [Client.php:932]
553A .|    |    Session is not authenticated [Client.php:938]
553A .|    <= ''
553A .<= ''
553A .=> phpCAS::setCasServerCACert('/etc/ssl/certs/cas-trust.crt') [example_simple.php:33]
553A .<= ''
553A .=> phpCAS::forceAuthentication() [example_simple.php:41]
553A .|    => CAS_Client::forceAuthentication() [CAS.php:1120]
553A .|    |    => CAS_Client::isAuthenticated() [Client.php:1286]
553A .|    |    |    => CAS_Client::_wasPreviouslyAuthenticated() [Client.php:1398]
553A .|    |    |    |    no user found [Client.php:1640]
553A .|    |    |    <= false
553A .|    |    |    no ticket found [Client.php:1499]
553A .|    |    <= false
553A .|    |    => CAS_Client::redirectToCas(false) [Client.php:1295]
553A .|    |    |    => CAS_Client::getServerLoginURL(false, false) [Client.php:1661]
553A .|    |    |    |    => CAS_Client::getURL() [Client.php:342]
553A .|    |    |    |    |    Final URI: https://ct.example.com/example_simple.php [Client.php:3585]
553A .|    |    |    |    <= 'https://ct.example.com/example_simple.php'
553A .|    |    |    exit()
553A .|    |    |    -
553A .|    |    -
553A .|    -
8D3D .START (2021-03-05 17:37:06) phpCAS-1.3.8 ****************** [CAS.php:475]
8D3D .=> phpCAS::client('2.0', 'cas.example.com', 443, '/cas') [example_simple.php:29]
8D3D .|    => CAS_Client::__construct('2.0', false, 'cas.example.com', 443, '/cas', true) [CAS.php:365]
8D3D .|    |    Starting a new session 8r76vigq39depcrocplknaold1 [Client.php:932]
8D3D .|    |    Session is not authenticated [Client.php:938]
8D3D .|    |    Ticket 'ST-2688-tnebagd1-HzCkxjoEQDXezov8nA-cas0' found [Client.php:1026]
8D3D .|    <= ''
8D3D .<= ''
8D3D .=> phpCAS::setCasServerCACert('/etc/ssl/certs/cas-trust.crt') [example_simple.php:33]
8D3D .<= ''
8D3D .=> phpCAS::forceAuthentication() [example_simple.php:41]
8D3D .|    => CAS_Client::forceAuthentication() [CAS.php:1120]
8D3D .|    |    => CAS_Client::isAuthenticated() [Client.php:1286]
8D3D .|    |    |    => CAS_Client::_wasPreviouslyAuthenticated() [Client.php:1398]
8D3D .|    |    |    |    no user found [Client.php:1640]
8D3D .|    |    |    <= false
8D3D .|    |    |    CAS 2.0 ticket `ST-2688-tnebagd1-HzCkxjoEQDXezov8nA-cas0' is present [Client.php:1451]
8D3D .|    |    |    => CAS_Client::validateCAS20('', NULL, NULL, false) [Client.php:1454]
8D3D .|    |    |    |     [Client.php:3216]
8D3D .|    |    |    |    => CAS_Client::getServerServiceValidateURL() [Client.php:3222]
8D3D .|    |    |    |    |    => CAS_Client::getURL() [Client.php:453]
8D3D .|    |    |    |    |    |    Final URI: https://ct.example.com/example_simple.php [Client.php:3585]
8D3D .|    |    |    |    |    <= 'https://ct.example.com/example_simple.php'
8D3D .|    |    |    |    |    => CAS_Request_CurlRequest::sendRequest() [AbstractRequest.php:242]
8D3D .|    |    |    |    |    |    CURL: Set CURLOPT_CAINFO /etc/ssl/certs/cas-trust.crt [CurlRequest.php:129]
8D3D .|    |    |    |    |    |    Response Body:
8D3D .|    |    |    |    |    |    <cas:serviceResponse xmlns:cas='http://www.yale.edu/tp/cas'>
8D3D .|    |    |    |    |    |        <cas:authenticationSuccess>
8D3D .|    |    |    |    |    |            <cas:user>jsmith</cas:user>
8D3D .|    |    |    |    |    |            <cas:attributes>
8D3D .|    |    |    |    |    |                <cas:credentialType>UsernamePasswordCredential</cas:credentialType>
8D3D .|    |    |    |    |    |                <cas:samlAuthenticationStatementAuthMethod>urn:oasis:names:tc:SAML:1.0:am:password</cas:samlAuthenticationStatementAuthMethod>
8D3D .|    |    |    |    |    |                <cas:isFromNewLogin>false</cas:isFromNewLogin>
8D3D .|    |    |    |    |    |                <cas:authenticationDate>2021-03-05T17:37:05.332653Z</cas:authenticationDate>
8D3D .|    |    |    |    |    |                <cas:authenticationMethod>Active Directory</cas:authenticationMethod>
8D3D .|    |    |    |    |    |                <cas:displayName>John Smith</cas:displayName>
8D3D .|    |    |    |    |    |                <cas:successfulAuthenticationHandlers>Active Directory</cas:successfulAuthenticationHandlers>
8D3D .|    |    |    |    |    |                <cas:longTermAuthenticationRequestTokenUsed>false</cas:longTermAuthenticationRequestTokenUsed>
8D3D .|    |    |    |    |    |                </cas:attributes>
8D3D .|    |    |    |    |    |        </cas:authenticationSuccess>
8D3D .|    |    |    |    |    |    </cas:serviceResponse>
8D3D .|    |    |    |    |    |
8D3D .|    |    |    |    |    |     [CurlRequest.php:84]
8D3D .|    |    |    |    |    <= true
8D3D .|    |    |    |    <= true
8D3D .|    |    |    |    => CAS_Client::_readExtraAttributesCas20(DOMNodeList) [Client.php:3301]
8D3D .|    |    |    |    |    Found nested jasig style attributes [Client.php:3383]
8D3D .|    |    |    |    |    Attribute [credentialType] = UsernamePasswordCredential [Client.php:3389]
8D3D .|    |    |    |    |    Attribute [samlAuthenticationStatementAuthMethod] = urn:oasis:names:tc:SAML:1.0:am:password [Client.php:3389]
8D3D .|    |    |    |    |    Attribute [isFromNewLogin] = false [Client.php:3389]
8D3D .|    |    |    |    |    Attribute [authenticationDate] = 2021-03-05T17:37:05.332653Z [Client.php:3389]
8D3D .|    |    |    |    |    Attribute [authenticationMethod] = Active Directory [Client.php:3389]
8D3D .|    |    |    |    |    Attribute [displayName] = John Smith [Client.php:3389]
8D3D .|    |    |    |    |    Attribute [successfulAuthenticationHandlers] = Active Directory [Client.php:3389]
8D3D .|    |    |    |    |    Attribute [longTermAuthenticationRequestTokenUsed] = false [Client.php:3389]
8D3D .|    |    |    |    <= ''
8D3D .|    |    |    |    => CAS_ProxyChain_AllowedList::isProxyListAllowed(array ()) [Client.php:3313]
8D3D .|    |    |    |    |    No proxies were found in the response [AllowedList.php:81]
8D3D .|    |    |    |    <= true
8D3D .|    |    |    |    => CAS_Client::_renameSession('ST-2688-tnebagd1-HzCkxjoEQDXezov8nA-cas0') [Client.php:3331]
8D3D .|    |    |    |    |    Killing session: 8r76vigq39depcrocplknaold1 [Client.php:3718]
8D3D .|    |    |    |    |    Starting session: 8fc7dfea03f6fef3e816b5d46af7969cc63892384019bcee7f7424ee94643140 [Client.php:3722]
8D3D .|    |    |    |    |    Restoring old session vars [Client.php:3725]
8D3D .|    |    |    |    <= ''
8D3D .|    |    |    <= true
8D3D .|    |    |    CAS 2.0 ticket `ST-2688-tnebagd1-HzCkxjoEQDXezov8nA-cas0' was validated [Client.php:1457]
8D3D .|    |    |    => CAS_Client::getURL() [Client.php:1523]
8D3D .|    |    |    <= 'https://ct.example.com/example_simple.php'
8D3D .|    |    |    Prepare redirect to : https://ct.example.com/example_simple.php [Client.php:1523]
8D3D .|    |    |    => CAS_Client::getURL() [Client.php:1525]
8D3D .|    |    |    <= 'https://ct.example.com/example_simple.php'
8D3D .|    |    |    exit()
8D3D .|    |    |    -
8D3D .|    |    -
8D3D .|    -
6E82 .START (2021-03-05 17:37:06) phpCAS-1.3.8 ****************** [CAS.php:475]
6E82 .=> phpCAS::client('2.0', 'cas.example.com', 443, '/cas') [example_simple.php:29]
6E82 .|    => CAS_Client::__construct('2.0', false, 'cas.example.com', 443, '/cas', true) [CAS.php:365]
6E82 .|    |    Starting a new session moplbbotea5aej05aj5rla92fg [Client.php:932]
6E82 .|    |    Session is not authenticated [Client.php:938]
6E82 .|    <= ''
6E82 .<= ''
6E82 .=> phpCAS::setCasServerCACert('/etc/ssl/certs/cas-trust.crt') [example_simple.php:33]
6E82 .<= ''
6E82 .=> phpCAS::forceAuthentication() [example_simple.php:41]
6E82 .|    => CAS_Client::forceAuthentication() [CAS.php:1120]
6E82 .|    |    => CAS_Client::isAuthenticated() [Client.php:1286]
6E82 .|    |    |    => CAS_Client::_wasPreviouslyAuthenticated() [Client.php:1398]
6E82 .|    |    |    |    no user found [Client.php:1640]
6E82 .|    |    |    <= false
6E82 .|    |    |    no ticket found [Client.php:1499]
6E82 .|    |    <= false
6E82 .|    |    => CAS_Client::redirectToCas(false) [Client.php:1295]
6E82 .|    |    |    => CAS_Client::getServerLoginURL(false, false) [Client.php:1661]
6E82 .|    |    |    |    => CAS_Client::getURL() [Client.php:342]
6E82 .|    |    |    |    |    Final URI: https://ct.example.com/example_simple.php [Client.php:3585]
6E82 .|    |    |    |    <= 'https://ct.example.com/example_simple.php'
6E82 .|    |    |    exit()
6E82 .|    |    |    -
6E82 .|    |    -
6E82 .|    -
B96A .START (2021-03-05 17:37:06) phpCAS-1.3.8 ****************** [CAS.php:475]
B96A .=> phpCAS::client('2.0', 'cas.example.com', 443, '/cas') [example_simple.php:29]
B96A .|    => CAS_Client::__construct('2.0', false, 'cas.example.com', 443, '/cas', true) [CAS.php:365]
B96A .|    |    Starting a new session 40gfue56hcq34hou13b0sgqdbk [Client.php:932]
B96A .|    |    Session is not authenticated [Client.php:938]
B96A .|    |    Ticket 'ST-2689-B2IYcLKI4cEhc3ilbAmBQ3qfxls-cas0' found [Client.php:1026]
B96A .|    <= ''
B96A .<= ''
B96A .=> phpCAS::setCasServerCACert('/etc/ssl/certs/cas-trust.crt') [example_simple.php:33]
B96A .<= ''
B96A .=> phpCAS::forceAuthentication() [example_simple.php:41]
B96A .|    => CAS_Client::forceAuthentication() [CAS.php:1120]
B96A .|    |    => CAS_Client::isAuthenticated() [Client.php:1286]
B96A .|    |    |    => CAS_Client::_wasPreviouslyAuthenticated() [Client.php:1398]
B96A .|    |    |    |    no user found [Client.php:1640]
B96A .|    |    |    <= false
B96A .|    |    |    CAS 2.0 ticket `ST-2689-B2IYcLKI4cEhc3ilbAmBQ3qfxls-cas0' is present [Client.php:1451]
B96A .|    |    |    => CAS_Client::validateCAS20('', NULL, NULL, false) [Client.php:1454]
B96A .|    |    |    |     [Client.php:3216]
B96A .|    |    |    |    => CAS_Client::getServerServiceValidateURL() [Client.php:3222]
B96A .|    |    |    |    |    => CAS_Client::getURL() [Client.php:453]
B96A .|    |    |    |    |    |    Final URI: https://ct.example.com/example_simple.php [Client.php:3585]
B96A .|    |    |    |    |    <= 'https://ct.example.com/example_simple.php'
B96A .|    |    |    |    |    => CAS_Request_CurlRequest::sendRequest() [AbstractRequest.php:242]
B96A .|    |    |    |    |    |    CURL: Set CURLOPT_CAINFO /etc/ssl/certs/cas-trust.crt [CurlRequest.php:129]
B96A .|    |    |    |    |    |    Response Body:
B96A .|    |    |    |    |    |    <cas:serviceResponse xmlns:cas='http://www.yale.edu/tp/cas'>
B96A .|    |    |    |    |    |        <cas:authenticationSuccess>
B96A .|    |    |    |    |    |            <cas:user>jsmith</cas:user>
B96A .|    |    |    |    |    |            <cas:attributes>
B96A .|    |    |    |    |    |                <cas:credentialType>UsernamePasswordCredential</cas:credentialType>
B96A .|    |    |    |    |    |                <cas:samlAuthenticationStatementAuthMethod>urn:oasis:names:tc:SAML:1.0:am:password</cas:samlAuthenticationStatementAuthMethod>
B96A .|    |    |    |    |    |                <cas:isFromNewLogin>false</cas:isFromNewLogin>
B96A .|    |    |    |    |    |                <cas:authenticationDate>2021-03-05T17:37:05.332653Z</cas:authenticationDate>
B96A .|    |    |    |    |    |                <cas:authenticationMethod>Active Directory</cas:authenticationMethod>
B96A .|    |    |    |    |    |                <cas:displayName>John Smith</cas:displayName>
B96A .|    |    |    |    |    |                <cas:successfulAuthenticationHandlers>Active Directory</cas:successfulAuthenticationHandlers>
B96A .|    |    |    |    |    |                <cas:longTermAuthenticationRequestTokenUsed>false</cas:longTermAuthenticationRequestTokenUsed>
B96A .|    |    |    |    |    |                </cas:attributes>
B96A .|    |    |    |    |    |        </cas:authenticationSuccess>
B96A .|    |    |    |    |    |    </cas:serviceResponse>
B96A .|    |    |    |    |    |
B96A .|    |    |    |    |    |     [CurlRequest.php:84]
B96A .|    |    |    |    |    <= true
B96A .|    |    |    |    <= true
B96A .|    |    |    |    => CAS_Client::_readExtraAttributesCas20(DOMNodeList) [Client.php:3301]
B96A .|    |    |    |    |    Found nested jasig style attributes [Client.php:3383]
B96A .|    |    |    |    |    Attribute [credentialType] = UsernamePasswordCredential [Client.php:3389]
B96A .|    |    |    |    |    Attribute [samlAuthenticationStatementAuthMethod] = urn:oasis:names:tc:SAML:1.0:am:password [Client.php:3389]
B96A .|    |    |    |    |    Attribute [isFromNewLogin] = false [Client.php:3389]
B96A .|    |    |    |    |    Attribute [authenticationDate] = 2021-03-05T17:37:05.332653Z [Client.php:3389]
B96A .|    |    |    |    |    Attribute [authenticationMethod] = Active Directory [Client.php:3389]
B96A .|    |    |    |    |    Attribute [displayName] = John Smith [Client.php:3389]
B96A .|    |    |    |    |    Attribute [successfulAuthenticationHandlers] = Active Directory [Client.php:3389]
B96A .|    |    |    |    |    Attribute [longTermAuthenticationRequestTokenUsed] = false [Client.php:3389]
B96A .|    |    |    |    <= ''
B96A .|    |    |    |    => CAS_ProxyChain_AllowedList::isProxyListAllowed(array ()) [Client.php:3313]
B96A .|    |    |    |    |    No proxies were found in the response [AllowedList.php:81]
B96A .|    |    |    |    <= true
B96A .|    |    |    |    => CAS_Client::_renameSession('ST-2689-B2IYcLKI4cEhc3ilbAmBQ3qfxls-cas0') [Client.php:3331]
B96A .|    |    |    |    |    Killing session: 40gfue56hcq34hou13b0sgqdbk [Client.php:3718]
B96A .|    |    |    |    |    Starting session: 77b2e07fe2a51a493dc2dd709381196084f4b12a475379db4333fa691b3e1ef6 [Client.php:3722]
B96A .|    |    |    |    |    Restoring old session vars [Client.php:3725]
B96A .|    |    |    |    <= ''
B96A .|    |    |    <= true
B96A .|    |    |    CAS 2.0 ticket `ST-2689-B2IYcLKI4cEhc3ilbAmBQ3qfxls-cas0' was validated [Client.php:1457]
B96A .|    |    |    => CAS_Client::getURL() [Client.php:1523]
B96A .|    |    |    <= 'https://ct.example.com/example_simple.php'
B96A .|    |    |    Prepare redirect to : https://ct.example.com/example_simple.php [Client.php:1523]
B96A .|    |    |    => CAS_Client::getURL() [Client.php:1525]
B96A .|    |    |    <= 'https://ct.example.com/example_simple.php'
B96A .|    |    |    exit()
B96A .|    |    |    -
B96A .|    |    -
B96A .|    -
82B6 .START (2021-03-05 17:37:06) phpCAS-1.3.8 ****************** [CAS.php:475]
82B6 .=> phpCAS::client('2.0', 'cas.example.com', 443, '/cas') [example_simple.php:29]
82B6 .|    => CAS_Client::__construct('2.0', false, 'cas.example.com', 443, '/cas', true) [CAS.php:365]
82B6 .|    |    Starting a new session h2tr1l3qumnni64jp9j3t457ib [Client.php:932]
82B6 .|    |    Session is not authenticated [Client.php:938]
82B6 .|    <= ''
82B6 .<= ''
82B6 .=> phpCAS::setCasServerCACert('/etc/ssl/certs/cas-trust.crt') [example_simple.php:33]
82B6 .<= ''
82B6 .=> phpCAS::forceAuthentication() [example_simple.php:41]
82B6 .|    => CAS_Client::forceAuthentication() [CAS.php:1120]
82B6 .|    |    => CAS_Client::isAuthenticated() [Client.php:1286]
82B6 .|    |    |    => CAS_Client::_wasPreviouslyAuthenticated() [Client.php:1398]
82B6 .|    |    |    |    no user found [Client.php:1640]
82B6 .|    |    |    <= false
82B6 .|    |    |    no ticket found [Client.php:1499]
82B6 .|    |    <= false
82B6 .|    |    => CAS_Client::redirectToCas(false) [Client.php:1295]
82B6 .|    |    |    => CAS_Client::getServerLoginURL(false, false) [Client.php:1661]
82B6 .|    |    |    |    => CAS_Client::getURL() [Client.php:342]
82B6 .|    |    |    |    |    Final URI: https://ct.example.com/example_simple.php [Client.php:3585]
82B6 .|    |    |    |    <= 'https://ct.example.com/example_simple.php'
82B6 .|    |    |    exit()
82B6 .|    |    |    -
82B6 .|    |    -
82B6 .|    -
6A4E .START (2021-03-05 17:37:06) phpCAS-1.3.8 ****************** [CAS.php:475]
6A4E .=> phpCAS::client('2.0', 'cas.example.com', 443, '/cas') [example_simple.php:29]
6A4E .|    => CAS_Client::__construct('2.0', false, 'cas.example.com', 443, '/cas', true) [CAS.php:365]
6A4E .|    |    Starting a new session bmbche8ajc2bo30kc3utuc6vvg [Client.php:932]
6A4E .|    |    Session is not authenticated [Client.php:938]
6A4E .|    |    Ticket 'ST-2690-k5uqtCpFFuo8bKT0ATut1JMbLKc-cas0' found [Client.php:1026]
6A4E .|    <= ''
6A4E .<= ''
6A4E .=> phpCAS::setCasServerCACert('/etc/ssl/certs/cas-trust.crt') [example_simple.php:33]
6A4E .<= ''
6A4E .=> phpCAS::forceAuthentication() [example_simple.php:41]
6A4E .|    => CAS_Client::forceAuthentication() [CAS.php:1120]
6A4E .|    |    => CAS_Client::isAuthenticated() [Client.php:1286]
6A4E .|    |    |    => CAS_Client::_wasPreviouslyAuthenticated() [Client.php:1398]
6A4E .|    |    |    |    no user found [Client.php:1640]
6A4E .|    |    |    <= false
6A4E .|    |    |    CAS 2.0 ticket `ST-2690-k5uqtCpFFuo8bKT0ATut1JMbLKc-cas0' is present [Client.php:1451]
6A4E .|    |    |    => CAS_Client::validateCAS20('', NULL, NULL, false) [Client.php:1454]
6A4E .|    |    |    |     [Client.php:3216]
6A4E .|    |    |    |    => CAS_Client::getServerServiceValidateURL() [Client.php:3222]
6A4E .|    |    |    |    |    => CAS_Client::getURL() [Client.php:453]
6A4E .|    |    |    |    |    |    Final URI: https://ct.example.com/example_simple.php [Client.php:3585]
6A4E .|    |    |    |    |    <= 'https://ct.example.com/example_simple.php'
6A4E .|    |    |    |    |    => CAS_Request_CurlRequest::sendRequest() [AbstractRequest.php:242]
6A4E .|    |    |    |    |    |    CURL: Set CURLOPT_CAINFO /etc/ssl/certs/cas-trust.crt [CurlRequest.php:129]
6A4E .|    |    |    |    |    |    Response Body:
6A4E .|    |    |    |    |    |    <cas:serviceResponse xmlns:cas='http://www.yale.edu/tp/cas'>
6A4E .|    |    |    |    |    |        <cas:authenticationSuccess>
6A4E .|    |    |    |    |    |            <cas:user>jsmith</cas:user>
6A4E .|    |    |    |    |    |            <cas:attributes>
6A4E .|    |    |    |    |    |                <cas:credentialType>UsernamePasswordCredential</cas:credentialType>
6A4E .|    |    |    |    |    |                <cas:samlAuthenticationStatementAuthMethod>urn:oasis:names:tc:SAML:1.0:am:password</cas:samlAuthenticationStatementAuthMethod>
6A4E .|    |    |    |    |    |                <cas:isFromNewLogin>false</cas:isFromNewLogin>
6A4E .|    |    |    |    |    |                <cas:authenticationDate>2021-03-05T17:37:05.332653Z</cas:authenticationDate>
6A4E .|    |    |    |    |    |                <cas:authenticationMethod>Active Directory</cas:authenticationMethod>
6A4E .|    |    |    |    |    |                <cas:displayName>John Smith</cas:displayName>
6A4E .|    |    |    |    |    |                <cas:successfulAuthenticationHandlers>Active Directory</cas:successfulAuthenticationHandlers>
6A4E .|    |    |    |    |    |                <cas:longTermAuthenticationRequestTokenUsed>false</cas:longTermAuthenticationRequestTokenUsed>
6A4E .|    |    |    |    |    |                </cas:attributes>
6A4E .|    |    |    |    |    |        </cas:authenticationSuccess>
6A4E .|    |    |    |    |    |    </cas:serviceResponse>
6A4E .|    |    |    |    |    |
6A4E .|    |    |    |    |    |     [CurlRequest.php:84]
6A4E .|    |    |    |    |    <= true
6A4E .|    |    |    |    <= true
6A4E .|    |    |    |    => CAS_Client::_readExtraAttributesCas20(DOMNodeList) [Client.php:3301]
6A4E .|    |    |    |    |    Found nested jasig style attributes [Client.php:3383]
6A4E .|    |    |    |    |    Attribute [credentialType] = UsernamePasswordCredential [Client.php:3389]
6A4E .|    |    |    |    |    Attribute [samlAuthenticationStatementAuthMethod] = urn:oasis:names:tc:SAML:1.0:am:password [Client.php:3389]
6A4E .|    |    |    |    |    Attribute [isFromNewLogin] = false [Client.php:3389]
6A4E .|    |    |    |    |    Attribute [authenticationDate] = 2021-03-05T17:37:05.332653Z [Client.php:3389]
6A4E .|    |    |    |    |    Attribute [authenticationMethod] = Active Directory [Client.php:3389]
6A4E .|    |    |    |    |    Attribute [displayName] = John Smith [Client.php:3389]
6A4E .|    |    |    |    |    Attribute [successfulAuthenticationHandlers] = Active Directory [Client.php:3389]
6A4E .|    |    |    |    |    Attribute [longTermAuthenticationRequestTokenUsed] = false [Client.php:3389]
6A4E .|    |    |    |    <= ''
6A4E .|    |    |    |    => CAS_ProxyChain_AllowedList::isProxyListAllowed(array ()) [Client.php:3313]
6A4E .|    |    |    |    |    No proxies were found in the response [AllowedList.php:81]
6A4E .|    |    |    |    <= true
6A4E .|    |    |    |    => CAS_Client::_renameSession('ST-2690-k5uqtCpFFuo8bKT0ATut1JMbLKc-cas0') [Client.php:3331]
6A4E .|    |    |    |    |    Killing session: bmbche8ajc2bo30kc3utuc6vvg [Client.php:3718]
6A4E .|    |    |    |    |    Starting session: bfbdb77eb14820c13dac633d3b2cf2ba88cc32d614e525b7851d2823205be87d [Client.php:3722]
6A4E .|    |    |    |    |    Restoring old session vars [Client.php:3725]
6A4E .|    |    |    |    <= ''
6A4E .|    |    |    <= true
6A4E .|    |    |    CAS 2.0 ticket `ST-2690-k5uqtCpFFuo8bKT0ATut1JMbLKc-cas0' was validated [Client.php:1457]
6A4E .|    |    |    => CAS_Client::getURL() [Client.php:1523]
6A4E .|    |    |    <= 'https://ct.example.com/example_simple.php'
6A4E .|    |    |    Prepare redirect to : https://ct.example.com/example_simple.php [Client.php:1523]
6A4E .|    |    |    => CAS_Client::getURL() [Client.php:1525]
6A4E .|    |    |    <= 'https://ct.example.com/example_simple.php'
6A4E .|    |    |    exit()
6A4E .|    |    |    -
6A4E .|    |    -
6A4E .|    -
87B8 .START (2021-03-05 17:37:06) phpCAS-1.3.8 ****************** [CAS.php:475]
87B8 .=> phpCAS::client('2.0', 'cas.example.com', 443, '/cas') [example_simple.php:29]
87B8 .|    => CAS_Client::__construct('2.0', false, 'cas.example.com', 443, '/cas', true) [CAS.php:365]
87B8 .|    |    Starting a new session 5ku78qh2p8qlt9d4knomkgnu8v [Client.php:932]
87B8 .|    |    Session is not authenticated [Client.php:938]
87B8 .|    <= ''
87B8 .<= ''
87B8 .=> phpCAS::setCasServerCACert('/etc/ssl/certs/cas-trust.crt') [example_simple.php:33]
87B8 .<= ''
87B8 .=> phpCAS::forceAuthentication() [example_simple.php:41]
87B8 .|    => CAS_Client::forceAuthentication() [CAS.php:1120]
87B8 .|    |    => CAS_Client::isAuthenticated() [Client.php:1286]
87B8 .|    |    |    => CAS_Client::_wasPreviouslyAuthenticated() [Client.php:1398]
87B8 .|    |    |    |    no user found [Client.php:1640]
87B8 .|    |    |    <= false
87B8 .|    |    |    no ticket found [Client.php:1499]
87B8 .|    |    <= false
87B8 .|    |    => CAS_Client::redirectToCas(false) [Client.php:1295]
87B8 .|    |    |    => CAS_Client::getServerLoginURL(false, false) [Client.php:1661]
87B8 .|    |    |    |    => CAS_Client::getURL() [Client.php:342]
87B8 .|    |    |    |    |    Final URI: https://ct.example.com/example_simple.php [Client.php:3585]
87B8 .|    |    |    |    <= 'https://ct.example.com/example_simple.php'
87B8 .|    |    |    exit()
87B8 .|    |    |    -
87B8 .|    |    -
87B8 .|    -
F16C .START (2021-03-05 17:37:06) phpCAS-1.3.8 ****************** [CAS.php:475]
F16C .=> phpCAS::client('2.0', 'cas.example.com', 443, '/cas') [example_simple.php:29]
F16C .|    => CAS_Client::__construct('2.0', false, 'cas.example.com', 443, '/cas', true) [CAS.php:365]
F16C .|    |    Starting a new session mbcb66oj82ujd0qungl5hdlba5 [Client.php:932]
F16C .|    |    Session is not authenticated [Client.php:938]
F16C .|    |    Ticket 'ST-2691-jDMqrcXKiW9v0Olg-Pk2sa8-gcg-cas0' found [Client.php:1026]
F16C .|    <= ''
F16C .<= ''
F16C .=> phpCAS::setCasServerCACert('/etc/ssl/certs/cas-trust.crt') [example_simple.php:33]
F16C .<= ''
F16C .=> phpCAS::forceAuthentication() [example_simple.php:41]
F16C .|    => CAS_Client::forceAuthentication() [CAS.php:1120]
F16C .|    |    => CAS_Client::isAuthenticated() [Client.php:1286]
F16C .|    |    |    => CAS_Client::_wasPreviouslyAuthenticated() [Client.php:1398]
F16C .|    |    |    |    no user found [Client.php:1640]
F16C .|    |    |    <= false
F16C .|    |    |    CAS 2.0 ticket `ST-2691-jDMqrcXKiW9v0Olg-Pk2sa8-gcg-cas0' is present [Client.php:1451]
F16C .|    |    |    => CAS_Client::validateCAS20('', NULL, NULL, false) [Client.php:1454]
F16C .|    |    |    |     [Client.php:3216]
F16C .|    |    |    |    => CAS_Client::getServerServiceValidateURL() [Client.php:3222]
F16C .|    |    |    |    |    => CAS_Client::getURL() [Client.php:453]
F16C .|    |    |    |    |    |    Final URI: https://ct.example.com/example_simple.php [Client.php:3585]
F16C .|    |    |    |    |    <= 'https://ct.example.com/example_simple.php'
F16C .|    |    |    |    |    => CAS_Request_CurlRequest::sendRequest() [AbstractRequest.php:242]
F16C .|    |    |    |    |    |    CURL: Set CURLOPT_CAINFO /etc/ssl/certs/cas-trust.crt [CurlRequest.php:129]
F16C .|    |    |    |    |    |    Response Body:
F16C .|    |    |    |    |    |    <cas:serviceResponse xmlns:cas='http://www.yale.edu/tp/cas'>
F16C .|    |    |    |    |    |        <cas:authenticationSuccess>
F16C .|    |    |    |    |    |            <cas:user>jsmith</cas:user>
F16C .|    |    |    |    |    |            <cas:attributes>
F16C .|    |    |    |    |    |                <cas:credentialType>UsernamePasswordCredential</cas:credentialType>
F16C .|    |    |    |    |    |                <cas:samlAuthenticationStatementAuthMethod>urn:oasis:names:tc:SAML:1.0:am:password</cas:samlAuthenticationStatementAuthMethod>
F16C .|    |    |    |    |    |                <cas:isFromNewLogin>false</cas:isFromNewLogin>
F16C .|    |    |    |    |    |                <cas:authenticationDate>2021-03-05T17:37:05.332653Z</cas:authenticationDate>
F16C .|    |    |    |    |    |                <cas:authenticationMethod>Active Directory</cas:authenticationMethod>
F16C .|    |    |    |    |    |                <cas:displayName>John Smith</cas:displayName>
F16C .|    |    |    |    |    |                <cas:successfulAuthenticationHandlers>Active Directory</cas:successfulAuthenticationHandlers>
F16C .|    |    |    |    |    |                <cas:longTermAuthenticationRequestTokenUsed>false</cas:longTermAuthenticationRequestTokenUsed>
F16C .|    |    |    |    |    |                </cas:attributes>
F16C .|    |    |    |    |    |        </cas:authenticationSuccess>
F16C .|    |    |    |    |    |    </cas:serviceResponse>
F16C .|    |    |    |    |    |
F16C .|    |    |    |    |    |     [CurlRequest.php:84]
F16C .|    |    |    |    |    <= true
F16C .|    |    |    |    <= true
F16C .|    |    |    |    => CAS_Client::_readExtraAttributesCas20(DOMNodeList) [Client.php:3301]
F16C .|    |    |    |    |    Found nested jasig style attributes [Client.php:3383]
F16C .|    |    |    |    |    Attribute [credentialType] = UsernamePasswordCredential [Client.php:3389]
F16C .|    |    |    |    |    Attribute [samlAuthenticationStatementAuthMethod] = urn:oasis:names:tc:SAML:1.0:am:password [Client.php:3389]
F16C .|    |    |    |    |    Attribute [isFromNewLogin] = false [Client.php:3389]
F16C .|    |    |    |    |    Attribute [authenticationDate] = 2021-03-05T17:37:05.332653Z [Client.php:3389]
F16C .|    |    |    |    |    Attribute [authenticationMethod] = Active Directory [Client.php:3389]
F16C .|    |    |    |    |    Attribute [displayName] = John Smith [Client.php:3389]
F16C .|    |    |    |    |    Attribute [successfulAuthenticationHandlers] = Active Directory [Client.php:3389]
F16C .|    |    |    |    |    Attribute [longTermAuthenticationRequestTokenUsed] = false [Client.php:3389]
F16C .|    |    |    |    <= ''
F16C .|    |    |    |    => CAS_ProxyChain_AllowedList::isProxyListAllowed(array ()) [Client.php:3313]
F16C .|    |    |    |    |    No proxies were found in the response [AllowedList.php:81]
F16C .|    |    |    |    <= true
F16C .|    |    |    |    => CAS_Client::_renameSession('ST-2691-jDMqrcXKiW9v0Olg-Pk2sa8-gcg-cas0') [Client.php:3331]
F16C .|    |    |    |    |    Killing session: mbcb66oj82ujd0qungl5hdlba5 [Client.php:3718]
F16C .|    |    |    |    |    Starting session: b679e0272b4c070c649a4ed54745aad4a0c2734641beafcff5dd08355cd11b77 [Client.php:3722]
F16C .|    |    |    |    |    Restoring old session vars [Client.php:3725]
F16C .|    |    |    |    <= ''
F16C .|    |    |    <= true
F16C .|    |    |    CAS 2.0 ticket `ST-2691-jDMqrcXKiW9v0Olg-Pk2sa8-gcg-cas0' was validated [Client.php:1457]
F16C .|    |    |    => CAS_Client::getURL() [Client.php:1523]
F16C .|    |    |    <= 'https://ct.example.com/example_simple.php'
F16C .|    |    |    Prepare redirect to : https://ct.example.com/example_simple.php [Client.php:1523]
F16C .|    |    |    => CAS_Client::getURL() [Client.php:1525]
F16C .|    |    |    <= 'https://ct.example.com/example_simple.php'
F16C .|    |    |    exit()
F16C .|    |    |    -
F16C .|    |    -
F16C .|    -
34CB .START (2021-03-05 17:37:06) phpCAS-1.3.8 ****************** [CAS.php:475]
34CB .=> phpCAS::client('2.0', 'cas.example.com', 443, '/cas') [example_simple.php:29]
34CB .|    => CAS_Client::__construct('2.0', false, 'cas.example.com', 443, '/cas', true) [CAS.php:365]
34CB .|    |    Starting a new session p079mdjvb553scjfjkqh19ghvv [Client.php:932]
34CB .|    |    Session is not authenticated [Client.php:938]
34CB .|    <= ''
34CB .<= ''
34CB .=> phpCAS::setCasServerCACert('/etc/ssl/certs/cas-trust.crt') [example_simple.php:33]
34CB .<= ''
34CB .=> phpCAS::forceAuthentication() [example_simple.php:41]
34CB .|    => CAS_Client::forceAuthentication() [CAS.php:1120]
34CB .|    |    => CAS_Client::isAuthenticated() [Client.php:1286]
34CB .|    |    |    => CAS_Client::_wasPreviouslyAuthenticated() [Client.php:1398]
34CB .|    |    |    |    no user found [Client.php:1640]
34CB .|    |    |    <= false
34CB .|    |    |    no ticket found [Client.php:1499]
34CB .|    |    <= false
34CB .|    |    => CAS_Client::redirectToCas(false) [Client.php:1295]
34CB .|    |    |    => CAS_Client::getServerLoginURL(false, false) [Client.php:1661]
34CB .|    |    |    |    => CAS_Client::getURL() [Client.php:342]
34CB .|    |    |    |    |    Final URI: https://ct.example.com/example_simple.php [Client.php:3585]
34CB .|    |    |    |    <= 'https://ct.example.com/example_simple.php'
34CB .|    |    |    exit()
34CB .|    |    |    -
34CB .|    |    -
34CB .|    -
F762 .START (2021-03-05 17:37:07) phpCAS-1.3.8 ****************** [CAS.php:475]
F762 .=> phpCAS::client('2.0', 'cas.example.com', 443, '/cas') [example_simple.php:29]
F762 .|    => CAS_Client::__construct('2.0', false, 'cas.example.com', 443, '/cas', true) [CAS.php:365]
F762 .|    |    Starting a new session m751n2pit5v2061116t95rij1g [Client.php:932]
F762 .|    |    Session is not authenticated [Client.php:938]
F762 .|    |    Ticket 'ST-2692-NZVG5brIvc7rsgZp1QSgiqDdzwA-cas0' found [Client.php:1026]
F762 .|    <= ''
F762 .<= ''
F762 .=> phpCAS::setCasServerCACert('/etc/ssl/certs/cas-trust.crt') [example_simple.php:33]
F762 .<= ''
F762 .=> phpCAS::forceAuthentication() [example_simple.php:41]
F762 .|    => CAS_Client::forceAuthentication() [CAS.php:1120]
F762 .|    |    => CAS_Client::isAuthenticated() [Client.php:1286]
F762 .|    |    |    => CAS_Client::_wasPreviouslyAuthenticated() [Client.php:1398]
F762 .|    |    |    |    no user found [Client.php:1640]
F762 .|    |    |    <= false
F762 .|    |    |    CAS 2.0 ticket `ST-2692-NZVG5brIvc7rsgZp1QSgiqDdzwA-cas0' is present [Client.php:1451]
F762 .|    |    |    => CAS_Client::validateCAS20('', NULL, NULL, false) [Client.php:1454]
F762 .|    |    |    |     [Client.php:3216]
F762 .|    |    |    |    => CAS_Client::getServerServiceValidateURL() [Client.php:3222]
F762 .|    |    |    |    |    => CAS_Client::getURL() [Client.php:453]
F762 .|    |    |    |    |    |    Final URI: https://ct.example.com/example_simple.php [Client.php:3585]
F762 .|    |    |    |    |    <= 'https://ct.example.com/example_simple.php'
F762 .|    |    |    |    |    => CAS_Request_CurlRequest::sendRequest() [AbstractRequest.php:242]
F762 .|    |    |    |    |    |    CURL: Set CURLOPT_CAINFO /etc/ssl/certs/cas-trust.crt [CurlRequest.php:129]
F762 .|    |    |    |    |    |    Response Body:
F762 .|    |    |    |    |    |    <cas:serviceResponse xmlns:cas='http://www.yale.edu/tp/cas'>
F762 .|    |    |    |    |    |        <cas:authenticationSuccess>
F762 .|    |    |    |    |    |            <cas:user>jsmith</cas:user>
F762 .|    |    |    |    |    |            <cas:attributes>
F762 .|    |    |    |    |    |                <cas:credentialType>UsernamePasswordCredential</cas:credentialType>
F762 .|    |    |    |    |    |                <cas:samlAuthenticationStatementAuthMethod>urn:oasis:names:tc:SAML:1.0:am:password</cas:samlAuthenticationStatementAuthMethod>
F762 .|    |    |    |    |    |                <cas:isFromNewLogin>false</cas:isFromNewLogin>
F762 .|    |    |    |    |    |                <cas:authenticationDate>2021-03-05T17:37:05.332653Z</cas:authenticationDate>
F762 .|    |    |    |    |    |                <cas:authenticationMethod>Active Directory</cas:authenticationMethod>
F762 .|    |    |    |    |    |                <cas:displayName>John Smith</cas:displayName>
F762 .|    |    |    |    |    |                <cas:successfulAuthenticationHandlers>Active Directory</cas:successfulAuthenticationHandlers>
F762 .|    |    |    |    |    |                <cas:longTermAuthenticationRequestTokenUsed>false</cas:longTermAuthenticationRequestTokenUsed>
F762 .|    |    |    |    |    |                </cas:attributes>
F762 .|    |    |    |    |    |        </cas:authenticationSuccess>
F762 .|    |    |    |    |    |    </cas:serviceResponse>
F762 .|    |    |    |    |    |
F762 .|    |    |    |    |    |     [CurlRequest.php:84]
F762 .|    |    |    |    |    <= true
F762 .|    |    |    |    <= true
F762 .|    |    |    |    => CAS_Client::_readExtraAttributesCas20(DOMNodeList) [Client.php:3301]
F762 .|    |    |    |    |    Found nested jasig style attributes [Client.php:3383]
F762 .|    |    |    |    |    Attribute [credentialType] = UsernamePasswordCredential [Client.php:3389]
F762 .|    |    |    |    |    Attribute [samlAuthenticationStatementAuthMethod] = urn:oasis:names:tc:SAML:1.0:am:password [Client.php:3389]
F762 .|    |    |    |    |    Attribute [isFromNewLogin] = false [Client.php:3389]
F762 .|    |    |    |    |    Attribute [authenticationDate] = 2021-03-05T17:37:05.332653Z [Client.php:3389]
F762 .|    |    |    |    |    Attribute [authenticationMethod] = Active Directory [Client.php:3389]
F762 .|    |    |    |    |    Attribute [displayName] = John Smith [Client.php:3389]
F762 .|    |    |    |    |    Attribute [successfulAuthenticationHandlers] = Active Directory [Client.php:3389]
F762 .|    |    |    |    |    Attribute [longTermAuthenticationRequestTokenUsed] = false [Client.php:3389]
F762 .|    |    |    |    <= ''
F762 .|    |    |    |    => CAS_ProxyChain_AllowedList::isProxyListAllowed(array ()) [Client.php:3313]
F762 .|    |    |    |    |    No proxies were found in the response [AllowedList.php:81]
F762 .|    |    |    |    <= true
F762 .|    |    |    |    => CAS_Client::_renameSession('ST-2692-NZVG5brIvc7rsgZp1QSgiqDdzwA-cas0') [Client.php:3331]
F762 .|    |    |    |    |    Killing session: m751n2pit5v2061116t95rij1g [Client.php:3718]
F762 .|    |    |    |    |    Starting session: 32487f6242ce63d62c3f283abca3e57b2d0f287ff755e5dc9953429f2fc57da9 [Client.php:3722]
F762 .|    |    |    |    |    Restoring old session vars [Client.php:3725]
F762 .|    |    |    |    <= ''
F762 .|    |    |    <= true
F762 .|    |    |    CAS 2.0 ticket `ST-2692-NZVG5brIvc7rsgZp1QSgiqDdzwA-cas0' was validated [Client.php:1457]
F762 .|    |    |    => CAS_Client::getURL() [Client.php:1523]
F762 .|    |    |    <= 'https://ct.example.com/example_simple.php'
F762 .|    |    |    Prepare redirect to : https://ct.example.com/example_simple.php [Client.php:1523]
F762 .|    |    |    => CAS_Client::getURL() [Client.php:1525]
F762 .|    |    |    <= 'https://ct.example.com/example_simple.php'
F762 .|    |    |    exit()
F762 .|    |    |    -
F762 .|    |    -
F762 .|    -
2AE6 .START (2021-03-05 17:37:08) phpCAS-1.3.8 ****************** [CAS.php:475]
2AE6 .=> phpCAS::client('2.0', 'cas.example.com', 443, '/cas') [example_simple.php:29]
2AE6 .|    => CAS_Client::__construct('2.0', false, 'cas.example.com', 443, '/cas', true) [CAS.php:365]
2AE6 .|    |    Starting a new session c7gp3bf2m2o6aembl9qs464aq7 [Client.php:932]
2AE6 .|    |    Session is not authenticated [Client.php:938]
2AE6 .|    |    Ticket 'ST-2692-NZVG5brIvc7rsgZp1QSgiqDdzwA-cas0' found [Client.php:1026]
2AE6 .|    <= ''
2AE6 .<= ''
2AE6 .=> phpCAS::setCasServerCACert('/etc/ssl/certs/cas-trust.crt') [example_simple.php:33]
2AE6 .<= ''
2AE6 .=> phpCAS::forceAuthentication() [example_simple.php:41]
2AE6 .|    => CAS_Client::forceAuthentication() [CAS.php:1120]
2AE6 .|    |    => CAS_Client::isAuthenticated() [Client.php:1286]
2AE6 .|    |    |    => CAS_Client::_wasPreviouslyAuthenticated() [Client.php:1398]
2AE6 .|    |    |    |    no user found [Client.php:1640]
2AE6 .|    |    |    <= false
2AE6 .|    |    |    CAS 2.0 ticket `ST-2692-NZVG5brIvc7rsgZp1QSgiqDdzwA-cas0' is present [Client.php:1451]
2AE6 .|    |    |    => CAS_Client::validateCAS20('', NULL, NULL, false) [Client.php:1454]
2AE6 .|    |    |    |     [Client.php:3216]
2AE6 .|    |    |    |    => CAS_Client::getServerServiceValidateURL() [Client.php:3222]
2AE6 .|    |    |    |    |    => CAS_Client::getURL() [Client.php:453]
2AE6 .|    |    |    |    |    |    Final URI: https://ct.example.com/example_simple.php [Client.php:3585]
2AE6 .|    |    |    |    |    <= 'https://ct.example.com/example_simple.php'
2AE6 .|    |    |    |    |    => CAS_Request_CurlRequest::sendRequest() [AbstractRequest.php:242]
2AE6 .|    |    |    |    |    |    CURL: Set CURLOPT_CAINFO /etc/ssl/certs/cas-trust.crt [CurlRequest.php:129]
2AE6 .|    |    |    |    |    |    Response Body:
2AE6 .|    |    |    |    |    |    <cas:serviceResponse xmlns:cas='http://www.yale.edu/tp/cas'>
2AE6 .|    |    |    |    |    |        <cas:authenticationFailure code="INVALID_TICKET">Ticket &#39;ST-2692-NZVG5brIvc7rsgZp1QSgiqDdzwA-cas0&#39; not recognized</cas:authenticationFailure>
2AE6 .|    |    |    |    |    |    </cas:serviceResponse>
2AE6 .|    |    |    |    |    |
2AE6 .|    |    |    |    |    |     [CurlRequest.php:84]
2AE6 .|    |    |    |    |    <= true
2AE6 .|    |    |    |    <= true
2AE6 .|    |    |    |    => CAS_AuthenticationException::__construct(CAS_Client, 'Ticket not validated', 'https://cas.example.com/cas/serviceValidate?service=https%3A%2F%2Fct.example.com%2Fexample_simple.php&ticket=ST-2692-NZVG5brIvc7rsgZp1QSgiqDdzwA-cas0', false, false, '<cas:serviceResponse xmlns:cas=\'http://www.yale.edu/tp/cas\'>    <cas:authenticationFailure code="INVALID_TICKET">Ticket &#39;ST-2692-NZVG5brIvc7rsgZp1QSgiqDdzwA-cas0&#39; not recognized</cas:authenticationFailure></cas:serviceResponse>', 'INVALID_TICKET', 'Ticket \'ST-2692-NZVG5brIvc7rsgZp1QSgiqDdzwA-cas0\' not recognized') [Client.php:3283]
2AE6 .|    |    |    |    |    => CAS_Client::getURL() [AuthenticationException.php:77]
2AE6 .|    |    |    |    |    <= 'https://ct.example.com/example_simple.php'
2AE6 .|    |    |    |    |    Authentication failure: Ticket not validated [AuthenticationException.php:81]
2AE6 .|    |    |    |    |    Reason: [INVALID_TICKET] CAS error: Ticket 'ST-2692-NZVG5brIvc7rsgZp1QSgiqDdzwA-cas0' not recognized [AuthenticationException.php:97]
2AE6 .|    |    |    |    |    CAS response: <cas:serviceResponse xmlns:cas='http://www.yale.edu/tp/cas'>
2AE6 .|    |    |    |    |        <cas:authenticationFailure code="INVALID_TICKET">Ticket &#39;ST-2692-NZVG5brIvc7rsgZp1QSgiqDdzwA-cas0&#39; not recognized</cas:authenticationFailure>
2AE6 .|    |    |    |    |    </cas:serviceResponse>
2AE6 .|    |    |    |    |     [AuthenticationException.php:102]
2AE6 .|    |    |    |    |    exit()
2AE6 .|    |    |    |    |    -
2AE6 .|    |    |    |    -
2AE6 .|    |    |    -
2AE6 .|    |    -
2AE6 .|    -

Ray Bon

unread,
Mar 5, 2021, 12:59:33 PM3/5/21
to cas-...@apereo.org
Stewart,

It looks like the session is renamed to the ST (correct expected behaviour), but then a new session is promptly created.
Is it possible that the client app is doing some post authentication processing?

Ray

On Fri, 2021-03-05 at 09:45 -0800, Stewart wrote:
Notice: This message was sent from outside the University of Victoria email system. Please be cautious with links and sensitive information.
-- 
Ray Bon
Programmer Analyst
Development Services, University Systems

I respectfully acknowledge that my place of work is located within the ancestral, traditional and unceded territory of the Songhees, Esquimalt and WSÁNEĆ Nations.

Stewart

unread,
Mar 5, 2021, 1:09:37 PM3/5/21
to CAS Community, Ray Bon
Hi Ray,

Thanks for the reply.  This debug log is of the sample app (example_simple.php) from the phpCAS respository.  It doesn't do anything other than try to display an attribute after auth....

Danny

unread,
Mar 5, 2021, 3:11:17 PM3/5/21
to CAS Community, Stewart, Ray Bon
Is your CAS SSL certificate properly validating?  I've seen this behavior when the client cannot validate the CAS servers SSL certificate.

Danny

unread,
Mar 5, 2021, 3:13:40 PM3/5/21
to CAS Community, Danny, Stewart, Ray Bon
By client, I mean the client application service, not the end user.

Stewart

unread,
Mar 5, 2021, 3:24:36 PM3/5/21
to CAS Community, Danny, Stewart, Ray Bon
Hi Danny,

Wouldn't that prevent a response such as this?


38A5 .|    |    |    |    |    |    Response Body:
38A5 .|    |    |    |    |    |    <cas:serviceResponse xmlns:cas='http://www.yale.edu/tp/cas'>
38A5 .|    |    |    |    |    |        <cas:authenticationSuccess>
38A5 .|    |    |    |    |    |            <cas:user>jsmith</cas:user>
38A5 .|    |    |    |    |    |            <cas:attributes>
38A5 .|    |    |    |    |    |                <cas:credentialType>UsernamePasswordCredential</cas:credentialType>
38A5 .|    |    |    |    |    |                <cas:samlAuthenticationStatementAuthMethod>urn:oasis:names:tc:SAML:1.0:am:password</cas:samlAuthenticationStatementAuthMethod>
38A5 .|    |    |    |    |    |                <cas:isFromNewLogin>true</cas:isFromNewLogin>
38A5 .|    |    |    |    |    |                <cas:authenticationDate>2021-03-05T17:37:05.332653Z</cas:authenticationDate>
38A5 .|    |    |    |    |    |                <cas:authenticationMethod>Active Directory</cas:authenticationMethod>
38A5 .|    |    |    |    |    |                <cas:displayName>John Smith</cas:displayName>
38A5 .|    |    |    |    |    |                <cas:successfulAuthenticationHandlers>Active Directory</cas:successfulAuthenticationHandlers>
38A5 .|    |    |    |    |    |                <cas:longTermAuthenticationRequestTokenUsed>false</cas:longTermAuthenticationRequestTokenUsed>
38A5 .|    |    |    |    |    |                </cas:attributes>
38A5 .|    |    |    |    |    |        </cas:authenticationSuccess>
38A5 .|    |    |    |    |    |    </cas:serviceResponse>

Danny

unread,
Mar 5, 2021, 3:35:24 PM3/5/21
to CAS Community, Stewart, Danny, Ray Bon
I don't know...I just know I've seen the looping happen with CAS services using phpCAS  in the past year twice when the CA chain expired/changed on our CAS server certificate (CA intermediate expired, later renewal was under a new CA chain).

Pascal Rigaux

unread,
Mar 5, 2021, 4:29:39 PM3/5/21
to cas-...@apereo.org
Hi,

Looking at the logs, it seems clear the ticket is validated.
After that, phpCAS "remove the ticket by an additional redirect"
Cf setNoClearTicketsFromUrl in doc : https://apereo.github.io/phpCAS/api/group__publicAuth.html#gac7a6eeb2bfd55a432c57f5d18bd35048

I suggest "set-cookie: PHPSESSID=xxx" is somehow missing or rejected by the browser,
so the browser will not send the cookie to the redirectd url without ticket= , ending up in an endless loop...

Could you check that ?

cu


On 05/03/2021 18:45, Stewart wrote:
> 38A5 .|    |    |    |    => CAS_Client::_renameSession('ST-2686-YNQIAWP-A6GsZgmvA-316GuFo4c-cas0') [Client.php:3331]
> 38A5 .|    |    |    |    |    Killing session: fu72cjc1vjgas1fmoh9e54qlil [Client.php:3718]
> 38A5 .|    |    |    |    |    Starting session: 2f6bf6441d77521dbff8ca436f902ddb8831c897715c8418d59a517f371e0636 [Client.php:3722]
> 38A5 .|    |    |    Prepare redirect to : https://ct.example.com/example_simple.php [Client.php:1523]
> 38A5 .|    |    |    <= 'https://ct.example.com/example_simple.php'
> 38A5 .|    |    |    exit()

> 5B90 .START (2021-03-05 17:37:05) phpCAS-1.3.8 ****************** [CAS.php:475]
> 5B90 .=> phpCAS::client('2.0', 'cas.example.com', 443, '/cas') [example_simple.php:29]
> 5B90 .|    => CAS_Client::__construct('2.0', false, 'cas.example.com', 443, '/cas', true) [CAS.php:365]
> 5B90 .|    |    Starting a new session ksugi1qvlm6aforko58ne6tk08 [Client.php:932]
> 5B90 .|    |    Session is not authenticated [Client.php:938]
> 5B90 .|    <= ''

Stewart

unread,
Mar 5, 2021, 5:30:13 PM3/5/21
to CAS Community, pascal...@univ-paris1.fr
Thank you both, I'm checking both the cert chain and the sessionid now...

Stewart

unread,
Mar 5, 2021, 5:41:26 PM3/5/21
to CAS Community, Stewart, pascal...@univ-paris1.fr
Pascal,

That was it!  Thank you.  Apparently in the upgrade of PHP, session autostart got turned off.  Turning it back on resolved the issue.  Thanks to you and to everyone else who jumped in to help!
Reply all
Reply to author
Forward
0 new messages