From 18072723de135d9699f4bc88c3edfd055a292e1d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Cl=C3=A9ment=20Oudot?= Date: Thu, 11 Dec 2014 17:05:33 +0000 Subject: [PATCH] Compatibility with AuthChoice (#183) --- .../lib/Lemonldap/NG/Portal/AuthOpenIDConnect.pm | 2 -- .../lib/Lemonldap/NG/Portal/_OpenIDConnect.pm | 7 +++++++ 2 files changed, 7 insertions(+), 2 deletions(-) diff --git a/lemonldap-ng-portal/lib/Lemonldap/NG/Portal/AuthOpenIDConnect.pm b/lemonldap-ng-portal/lib/Lemonldap/NG/Portal/AuthOpenIDConnect.pm index e3902897b..bc4bad4e1 100644 --- a/lemonldap-ng-portal/lib/Lemonldap/NG/Portal/AuthOpenIDConnect.pm +++ b/lemonldap-ng-portal/lib/Lemonldap/NG/Portal/AuthOpenIDConnect.pm @@ -215,8 +215,6 @@ sub extractFormInfo { my $stateSession = $self->storeState(); - # TODO Use AuthChoiceParam in redirect URL - # Authorization Code Flow $self->{urldc} = $self->buildAuthorizationCodeAuthnRequest( $op, $state ); diff --git a/lemonldap-ng-portal/lib/Lemonldap/NG/Portal/_OpenIDConnect.pm b/lemonldap-ng-portal/lib/Lemonldap/NG/Portal/_OpenIDConnect.pm index dfbdfb8a2..28eca2f8e 100644 --- a/lemonldap-ng-portal/lib/Lemonldap/NG/Portal/_OpenIDConnect.pm +++ b/lemonldap-ng-portal/lib/Lemonldap/NG/Portal/_OpenIDConnect.pm @@ -148,6 +148,13 @@ sub getCallbackUri { ? '&' . $callback_get_param . '=1' : '?' . $callback_get_param . '=1'; + # Use authChoiceParam in redirect URL + if ( $self->param( $self->{authChoiceParam} ) ) { + $callback_uri .= '&' + . $self->{authChoiceParam} . '=' + . uri_escape( $self->param( $self->{authChoiceParam} ) ); + } + $self->lmLog( "OpenIDConnect Callback URI: $callback_uri", 'debug' ); return $callback_uri;