@@ -66,13 +66,73 @@ public function unableToReceiveMessageAction()
6666 #[Route(
6767 path: '/authentication/feedback/unsolicited-response ' ,
6868 name: 'authentication_feedback_unsolicited_response ' ,
69+ defaults: [
70+ 'pageIdentifier ' => 'unsolicited-response ' ,
71+ 'statusCode ' => 400
72+ ],
6973 methods: ['GET ' ]
7074 )]
71- public function unsolicitedResponseAction (): Response
75+ #[Route(
76+ path: '/authentication/feedback/session-lost ' ,
77+ name: 'authentication_feedback_session_lost ' ,
78+ defaults: [
79+ 'pageIdentifier ' => 'session-lost ' ,
80+ 'statusCode ' => 400
81+ ],
82+ methods: ['GET ' ]
83+ )]
84+ #[Route(
85+ path: '/authentication/feedback/session-not-started ' ,
86+ name: 'authentication_feedback_session_not_started ' ,
87+ defaults: [
88+ 'pageIdentifier ' => 'session-not-started ' ,
89+ 'statusCode ' => 400
90+ ],
91+ methods: ['GET ' ]
92+ )]
93+ #[Route(
94+ path: '/authentication/feedback/invalid-acs-binding ' ,
95+ name: 'authentication_feedback_invalid_acs_binding ' ,
96+ defaults: [
97+ 'pageIdentifier ' => 'invalid-acs-binding ' ,
98+ 'statusCode ' => 400
99+ ],
100+ methods: ['GET ' ]
101+ )]
102+ #[Route(
103+ path: '/authentication/feedback/received-error-status-code ' ,
104+ name: 'authentication_feedback_received_error_status_code ' ,
105+ defaults: [
106+ 'pageIdentifier ' => 'received-error-status-code ' ,
107+ 'statusCode ' => 400
108+ ],
109+ methods: ['GET ' ]
110+ )]
111+ #[Route(
112+ path: '/authentication/feedback/unknown_requesterid_in_authnrequest ' ,
113+ name: 'authentication_feedback_unknown_requesterid_in_authnrequest ' ,
114+ defaults: [
115+ 'pageIdentifier ' => 'unknown-requesterid-in-authnrequest ' ,
116+ 'statusCode ' => 400
117+ ],
118+ methods: ['GET ' ]
119+ )]
120+ #[Route(
121+ path: '/authentication/feedback/authentication-limit-exceeded ' ,
122+ name: 'authentication_feedback_authentication_limit_exceeded ' ,
123+ defaults: [
124+ 'pageIdentifier ' => 'authentication-limit-exceeded ' ,
125+ 'statusCode ' => 429
126+ ],
127+ methods: ['GET ' ]
128+ )]
129+ public function feedbackAction (string $ pageIdentifier , int $ statusCode ): Response
72130 {
73131 return new Response (
74- $ this ->twig ->render ('@theme/Authentication/View/Feedback/unsolicited-response.html.twig ' ),
75- 400
132+ $ this ->twig ->render ('@theme/Authentication/View/Feedback/generic-error.html.twig ' , [
133+ 'pageIdentifier ' => $ pageIdentifier ,
134+ ]),
135+ $ statusCode
76136 );
77137 }
78138
@@ -85,19 +145,6 @@ public function unknownErrorAction()
85145 );
86146 }
87147
88-
89- #[Route(path: '/authentication/feedback/session-lost ' , name: 'authentication_feedback_session_lost ' , methods: ['GET ' ])]
90- public function sessionLostAction ()
91- {
92- return new Response ($ this ->twig ->render ('@theme/Authentication/View/Feedback/session-lost.html.twig ' ), 400 );
93- }
94-
95- #[Route(path: '/authentication/feedback/session-not-started ' , name: 'authentication_feedback_session_not_started ' , methods: ['GET ' ])]
96- public function sessionNotStartedAction ()
97- {
98- return new Response ($ this ->twig ->render ('@theme/Authentication/View/Feedback/session-not-started.html.twig ' ), 400 );
99- }
100-
101148 #[Route(path: '/authentication/feedback/no-idps ' , name: 'authentication_feedback_no_idps ' , methods: ['GET ' ])]
102149 public function noIdpsAction ()
103150 {
@@ -310,26 +357,6 @@ public function customAction(Request $request)
310357 );
311358 }
312359
313- #[Route(path: '/authentication/feedback/invalid-acs-binding ' , name: 'authentication_feedback_invalid_acs_binding ' , methods: ['GET ' ])]
314- public function invalidAcsBindingAction ()
315- {
316- // @todo Send 4xx or 5xx header depending on invalid binding came from request or configured metadata
317- return new Response ($ this ->twig ->render ('@theme/Authentication/View/Feedback/invalid-acs-binding.html.twig ' ));
318- }
319-
320- #[Route(
321- path: '/authentication/feedback/received-error-status-code ' ,
322- name: 'authentication_feedback_received_error_status_code ' ,
323- methods: ['GET ' ]
324- )]
325- public function receivedErrorStatusCodeAction ()
326- {
327- // @todo Send 4xx or 5xx header?
328- return new Response (
329- $ this ->twig ->render ('@theme/Authentication/View/Feedback/received-error-status-code.html.twig ' )
330- );
331- }
332-
333360 #[Route(
334361 path: '/authentication/feedback/received-invalid-signed-response ' ,
335362 name: 'authentication_feedback_signature_verification_failed ' ,
@@ -352,20 +379,6 @@ public function receivedInvalidResponseAction()
352379 );
353380 }
354381
355- #[Route(
356- path: '/authentication/feedback/unknown_requesterid_in_authnrequest ' ,
357- name: 'authentication_feedback_unknown_requesterid_in_authnrequest ' ,
358- methods: ['GET ' ]
359- )]
360- public function unknownRequesterIdInAuthnRequestAction ()
361- {
362- return new Response (
363- $ this ->twig ->render ('@theme/Authentication/View/Feedback/unknown-requesterid-in-authnrequest.html.twig ' ),
364- 400
365- );
366- }
367-
368-
369382 #[Route(path: '/authentication/feedback/authorization-policy-violation ' , name: 'authentication_feedback_pep_violation ' , methods: ['GET ' ])]
370383 public function authorizationPolicyViolationAction (Request $ request )
371384 {
@@ -442,19 +455,6 @@ public function stuckInAuthenticationLoopAction()
442455 );
443456 }
444457
445- #[Route(
446- path: '/authentication/feedback/authentication-limit-exceeded ' ,
447- name: 'authentication_feedback_authentication_limit_exceeded ' ,
448- methods: ['GET ' ]
449- )]
450- public function authenticationLimitExceededAction ()
451- {
452- return new Response (
453- $ this ->twig ->render ('@theme/Authentication/View/Feedback/authentication-limit-exceeded.html.twig ' ),
454- 429
455- );
456- }
457-
458458 #[Route(
459459 path: '/authentication/feedback/invalid-request-method-on-sso ' ,
460460 name: 'authentication_feedback_no_authentication_request_received ' ,
0 commit comments