Fix Kerberos session upgrade/renew (#2615)

This commit is contained in:
Maxime Besson 2022-06-15 15:48:30 +02:00
parent c4837f82fd
commit 67ee7b21ba
5 changed files with 10 additions and 16 deletions

View File

@ -153,7 +153,7 @@ sub confirm {
else {
# Go to portal
$self->logger->debug("Upgrade session failed -> Go to Portal");
$self->logger->debug("Upgrade session did not trigger -> Go to Portal");
$req->mustRedirect(1);
return $self->p->do( $req, [ sub { PE_OK } ] );
}

View File

@ -1,20 +1,17 @@
# Launch Kerberos request
$(document).ready ->
$.ajax (if window.location.href.match /\/upgradesession/ then window.location.href else portal )+ '?kerberos=1',
$.ajax (if window.location.href.match /\/(upgrade|renew)session/ then window.location.href else portal )+ '?kerberos=1',
dataType: 'json'
# Called if browser can't find Kerberos ticket, will display
# PE_BADCREDENTIALS
statusCode:
401: () ->
$('#lform').submit()
# If request succeed cookie is set, posting form to get redirection
# or menu
# Remove upgrading flag, if set
success: (data) ->
if window.location.href.match /\/upgradesession/
document.location = portal
else
$('#lform').submit()
$('input[name="upgrading"]').remove()
$('#lform').submit()
# Case else, will display PE_BADCREDENTIALS or fallback to next auth
# backend
error: () ->

View File

@ -1,7 +1,7 @@
// Generated by CoffeeScript 1.12.8
(function() {
$(document).ready(function() {
return $.ajax((window.location.href.match(/\/upgradesession/) ? window.location.href : portal) + '?kerberos=1', {
return $.ajax((window.location.href.match(/\/(upgrade|renew)session/) ? window.location.href : portal) + '?kerberos=1', {
dataType: 'json',
statusCode: {
401: function() {
@ -9,11 +9,8 @@
}
},
success: function(data) {
if (window.location.href.match(/\/upgradesession/)) {
return document.location = portal;
} else {
return $('#lform').submit();
}
$('input[name="upgrading"]').remove();
return $('#lform').submit();
},
error: function() {
return $('#lform').submit();

View File

@ -1 +1 @@
(function(){$(document).ready(function(){return $.ajax((window.location.href.match(/\/upgradesession/)?window.location.href:portal)+"?kerberos=1",{dataType:"json",statusCode:{401:function(){return $("#lform").submit()}},success:function(o){return window.location.href.match(/\/upgradesession/)?document.location=portal:$("#lform").submit()},error:function(){return $("#lform").submit()}})})}).call(this);
!function(){$(document).ready(function(){return $.ajax((window.location.href.match(/\/(upgrade|renew)session/)?window.location.href:portal)+"?kerberos=1",{dataType:"json",statusCode:{401:function(){return $("#lform").submit()}},success:function(n){return $('input[name="upgrading"]').remove(),$("#lform").submit()},error:function(){return $("#lform").submit()}})})}.call(this);

View File

@ -1 +1 @@
{"version":3,"sources":["kerberos.js"],"names":["$","document","ready","ajax","window","location","href","match","portal","dataType","statusCode","401","submit","success","data","error","call","this"],"mappings":"CACA,WACEA,EAAEC,UAAUC,MAAM,WAChB,OAAOF,EAAEG,MAAMC,OAAOC,SAASC,KAAKC,MAAM,oBAAsBH,OAAOC,SAASC,KAAOE,QAAU,cAAe,CAC9GC,SAAU,OACVC,WAAY,CACVC,IAAK,WACH,OAAOX,EAAE,UAAUY,WAGvBC,QAAS,SAASC,GAChB,OAAIV,OAAOC,SAASC,KAAKC,MAAM,oBACtBN,SAASI,SAAWG,OAEpBR,EAAE,UAAUY,UAGvBG,MAAO,WACL,OAAOf,EAAE,UAAUY,gBAKxBI,KAAKC"}
{"version":3,"sources":["kerberos.js"],"names":["$","document","ready","ajax","window","location","href","match","portal","dataType","statusCode","401","submit","success","data","remove","error","call","this"],"mappings":"CACA,WACEA,EAAEC,UAAUC,MAAM,WAChB,OAAOF,EAAEG,MAAMC,OAAOC,SAASC,KAAKC,MAAM,4BAA8BH,OAAOC,SAASC,KAAOE,QAAU,cAAe,CACtHC,SAAU,OACVC,WAAY,CACVC,IAAK,WACH,OAAOX,EAAE,UAAUY,WAGvBC,QAAS,SAASC,GAEhB,OADAd,EAAE,2BAA2Be,SACtBf,EAAE,UAAUY,UAErBI,MAAO,WACL,OAAOhB,EAAE,UAAUY,eAKxBK,KAAKC"}