Filtrer les erreurs CAS INVALID_TICKET
Ce mail d'erreur reviens souvent :
Une erreur est survenue sur https://uga.labnbook.fr : `CAS URL: https://cas-simsu.grenet.fr/serviceValidate?service=https%3A%2F%2Fuga.labnbook.fr%2Fauth%2Fcas%2Flogin&ticket=ST-179692-idrSkrb27TtonrmWvnw9-cas-simsu.grenet.frAuthentication failure: Ticket not validated Reason: [INVALID_TICKET] CAS error: Ticket 'ST-179692-idrSkrb27TtonrmWvnw9-cas-simsu.grenet.fr' not recognized CAS response:
<cas:serviceResponse xmlns:cas='http://www.yale.edu/tp/cas'> <cas:authenticationFailure code='INVALID_TICKET'> Ticket 'ST-179692-idrSkrb27TtonrmWvnw9-cas-simsu.grenet.fr' not recognized </cas:authenticationFailure> </cas:serviceResponse> ` Contexte
- Message : `CAS URL: https://cas-simsu.grenet.fr/serviceValidate?service=https%3A%2F%2Fuga.labnbook.fr%2Fauth%2Fcas%2Flogin&ticket=ST-179692-idrSkrb27TtonrmWvnw9-cas-simsu.grenet.frAuthentication failure: Ticket not validated Reason: [INVALID_TICKET] CAS error: Ticket 'ST-179692-idrSkrb27TtonrmWvnw9-cas-simsu.grenet.fr' not recognized CAS response:
<cas:serviceResponse xmlns:cas='http://www.yale.edu/tp/cas'> <cas:authenticationFailure code='INVALID_TICKET'> Ticket 'ST-179692-idrSkrb27TtonrmWvnw9-cas-simsu.grenet.fr' not recognized </cas:authenticationFailure> </cas:serviceResponse> `
- Url : https://uga.labnbook.fr/auth/cas/login
- Classe : CAS_AuthenticationException
- Code : 0
- Id Utilisateur : ``
Trace :
#0 /var/www/labnbook/vendor/jasig/phpcas/source/CAS/Client.php(1637): CAS_Client->validateCAS20()
#1 /var/www/labnbook/vendor/jasig/phpcas/source/CAS/Client.php(1470): CAS_Client->isAuthenticated()
#2 /var/www/labnbook/vendor/jasig/phpcas/source/CAS.php(1143): CAS_Client->forceAuthentication()
#3 /var/www/labnbook/vendor/subfission/cas/src/Subfission/Cas/CasManager.php(204): phpCAS::forceAuthentication()
#4 /var/www/labnbook/app/Http/Controllers/Auth/CasController.php(234): Subfission\Cas\CasManager->authenticate()
#5 /var/www/labnbook/app/Http/Controllers/Auth/CasController.php(80): App\Http\Controllers\Auth\CasController->authenticateCasAndgetLdapUser()
#6 /var/www/labnbook/vendor/laravel/framework/src/Illuminate/Routing/Controller.php(54): App\Http\Controllers\Auth\CasController->login()
#7 /var/www/labnbook/vendor/laravel/framework/src/Illuminate/Routing/ControllerDispatcher.php(45): Illuminate\Routing\Controller->callAction()
#8 /var/www/labnbook/vendor/laravel/framework/src/Illuminate/Routing/Route.php(261): Illuminate\Routing\ControllerDispatcher->dispatch()
#9 /var/www/labnbook/vendor/laravel/framework/src/Illuminate/Routing/Route.php(204): Illuminate\Routing\Route->runController()
#10 /var/www/labnbook/vendor/laravel/framework/src/Illuminate/Routing/Router.php(725): Illuminate\Routing\Route->run()
#11 /var/www/labnbook/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(141): Illuminate\Routing\Router->Illuminate\Routing\{closure}()
#12 /var/www/labnbook/vendor/laravel/framework/src/Illuminate/Routing/Middleware/SubstituteBindings.php(50): Illuminate\Pipeline\Pipeline->Illuminate\Pipeline\{closure}()
#13 /var/www/labnbook/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate\Routing\Middleware\SubstituteBindings->handle()
#14 /var/www/labnbook/app/Http/Middleware/Language.php(19): Illuminate\Pipeline\Pipeline->Illuminate\Pipeline\{closure}()
#15 /var/www/labnbook/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): App\Http\Middleware\Language->handle()
#16 /var/www/labnbook/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/VerifyCsrfToken.php(78): Illuminate\Pipeline\Pipeline->Illuminate\Pipeline\{closure}()
#17 /var/www/labnbook/app/Http/Middleware/VerifyCsrfToken.php(41): Illuminate\Foundation\Http\Middleware\VerifyCsrfToken->handle()
#18 /var/www/labnbook/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): App\Http\Middleware\VerifyCsrfToken->handle()
#19 /var/www/labnbook/vendor/laravel/framework/src/Illuminate/View/Middleware/ShareErrorsFromSession.php(49): Illuminate\Pipeline\Pipeline->Illuminate\Pipeline\{closure}()
#20 /var/www/labnbook/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate\View\Middleware\ShareErrorsFromSession->handle()
#21 /var/www/labnbook/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(121): Illuminate\Pipeline\Pipeline->Illuminate\Pipeline\{closure}()
#22 /var/www/labnbook/vendor/laravel/framework/src/Illuminate/Session/Middleware/StartSession.php(64): Illuminate\Session\Middleware\StartSession->handleStatefulRequest()
#23 /var/www/labnbook/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate\Session\Middleware\StartSession->handle()
#24 /var/www/labnbook/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/AddQueuedCookiesToResponse.php(37): Illuminate\Pipeline\Pipeline->Illuminate\Pipeline\{closure}()
#25 /var/www/labnbook/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate\Cookie\Middleware\AddQueuedCookiesToResponse->handle()
#26 /var/www/labnbook/vendor/laravel/framework/src/Illuminate/Cookie/Middleware/EncryptCookies.php(67): Illuminate\Pipeline\Pipeline->Illuminate\Pipeline\{closure}()
#27 /var/www/labnbook/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate\Cookie\Middleware\EncryptCookies->handle()
#28 /var/www/labnbook/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(116): Illuminate\Pipeline\Pipeline->Illuminate\Pipeline\{closure}()
#29 /var/www/labnbook/vendor/laravel/framework/src/Illuminate/Routing/Router.php(726): Illuminate\Pipeline\Pipeline->then()
#30 /var/www/labnbook/vendor/laravel/framework/src/Illuminate/Routing/Router.php(703): Illuminate\Routing\Router->runRouteWithinStack()
#31 /var/www/labnbook/vendor/laravel/framework/src/Illuminate/Routing/Router.php(667): Illuminate\Routing\Router->runRoute()
#32 /var/www/labnbook/vendor/laravel/framework/src/Illuminate/Routing/Router.php(656): Illuminate\Routing\Router->dispatchToRoute()
#33 /var/www/labnbook/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(167): Illuminate\Routing\Router->dispatch()
#34 /var/www/labnbook/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(141): Illuminate\Foundation\Http\Kernel->Illuminate\Foundation\Http\{closure}()
#35 /var/www/labnbook/vendor/fruitcake/laravel-cors/src/HandleCors.php(38): Illuminate\Pipeline\Pipeline->Illuminate\Pipeline\{closure}()
#36 /var/www/labnbook/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Fruitcake\Cors\HandleCors->handle()
#37 /var/www/labnbook/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate\Pipeline\Pipeline->Illuminate\Pipeline\{closure}()
#38 /var/www/labnbook/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull.php(31): Illuminate\Foundation\Http\Middleware\TransformsRequest->handle()
#39 /var/www/labnbook/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate\Foundation\Http\Middleware\ConvertEmptyStringsToNull->handle()
#40 /var/www/labnbook/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate\Pipeline\Pipeline->Illuminate\Pipeline\{closure}()
#41 /var/www/labnbook/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TrimStrings.php(40): Illuminate\Foundation\Http\Middleware\TransformsRequest->handle()
#42 /var/www/labnbook/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate\Foundation\Http\Middleware\TrimStrings->handle()
#43 /var/www/labnbook/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/ValidatePostSize.php(27): Illuminate\Pipeline\Pipeline->Illuminate\Pipeline\{closure}()
#44 /var/www/labnbook/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate\Foundation\Http\Middleware\ValidatePostSize->handle()
#45 /var/www/labnbook/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance.php(86): Illuminate\Pipeline\Pipeline->Illuminate\Pipeline\{closure}()
#46 /var/www/labnbook/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate\Foundation\Http\Middleware\PreventRequestsDuringMaintenance->handle()
#47 /var/www/labnbook/vendor/laravel/framework/src/Illuminate/Http/Middleware/TrustProxies.php(39): Illuminate\Pipeline\Pipeline->Illuminate\Pipeline\{closure}()
#48 /var/www/labnbook/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate\Http\Middleware\TrustProxies->handle()
#49 /var/www/labnbook/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(116): Illuminate\Pipeline\Pipeline->Illuminate\Pipeline\{closure}()
#50 /var/www/labnbook/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(142): Illuminate\Pipeline\Pipeline->then()
#51 /var/www/labnbook/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(111): Illuminate\Foundation\Http\Kernel->sendRequestThroughRouter()
#52 /var/www/labnbook/public/index.php(55): Illuminate\Foundation\Http\Kernel->handle()
Il faudrait faire un wrapper sur cas()->authenticate()
qui récupère les CAS_AuthenticationException
et parse le message d'erreur à la recherche de cas:authenticationFailure code='INVALID_TICKET'
en cas d'INVALID_TICKET
on ignore tout autre code on re throw