version 1.37, 2021/11/03 01:04:03
|
version 1.38, 2021/12/06 03:31:54
|
Line 57 sub handler {
|
Line 57 sub handler {
|
if ($alias) { |
if ($alias) { |
my $lonhost = $r->dir_config('lonHostID'); |
my $lonhost = $r->dir_config('lonHostID'); |
my $hostname = &Apache::lonnet::hostname($lonhost); |
my $hostname = &Apache::lonnet::hostname($lonhost); |
|
my $ssourl = '/adm/sso'; |
|
if ($r->dir_config('lonOtherAuthenUrl') ne '') { |
|
$ssourl = $r->dir_config('lonOtherAuthenUrl'); |
|
} |
if (($hdrhost eq $alias) || ($hdrhost eq $hostname)) { |
if (($hdrhost eq $alias) || ($hdrhost eq $hostname)) { |
my $proxyinfo = &Apache::lonnet::get_proxy_settings($r->dir_config('lonDefDomain')); |
my $proxyinfo = &Apache::lonnet::get_proxy_settings($r->dir_config('lonDefDomain')); |
my ($vpnint,$vpnext); |
my ($vpnint,$vpnext); |
Line 71 sub handler {
|
Line 75 sub handler {
|
($r->uri !~ m{^/adm/(lti|launch)/})) { |
($r->uri !~ m{^/adm/(lti|launch)/})) { |
$redirect = $hostname; |
$redirect = $hostname; |
} |
} |
if ($r->uri eq '/adm/sso') { |
if ($r->uri eq $ssourl) { |
if (&Apache::lonnet::alias_shibboleth($lonhost)) { |
if (&Apache::lonnet::alias_sso($lonhost)) { |
undef($redirect); |
undef($redirect); |
} else { |
} else { |
$redirect = $hostname; |
$redirect = $hostname; |
Line 93 sub handler {
|
Line 97 sub handler {
|
if (exists($iphost{$remote_ip})) { |
if (exists($iphost{$remote_ip})) { |
undef($redirect); |
undef($redirect); |
} |
} |
} elsif ($r->uri eq '/adm/sso') { |
} elsif ($r->uri eq $ssourl) { |
unless (&Apache::lonnet::alias_shibboleth($lonhost)) { |
unless (&Apache::lonnet::alias_sso($lonhost)) { |
undef($redirect); |
undef($redirect); |
} |
} |
} |
} |
Line 105 sub handler {
|
Line 109 sub handler {
|
if (($uri eq '/adm/switchserver') || ($uri =~ m{^/Shibboleth.sso/})) { |
if (($uri eq '/adm/switchserver') || ($uri =~ m{^/Shibboleth.sso/})) { |
return DECLINED; |
return DECLINED; |
} |
} |
unless (($uri eq '/adm/migrateuser') || ($uri eq '/adm/sso')) { |
unless (($uri eq '/adm/migrateuser') || ($uri eq $ssourl)) { |
my %user; |
my %user; |
my $handle = &Apache::lonnet::check_for_valid_session($r,undef,\%user); |
my $handle = &Apache::lonnet::check_for_valid_session($r,undef,\%user); |
if (($handle) && ($user{'name'} ne '') && ($user{'domain'} ne '')) { |
if (($handle) && ($user{'name'} ne '') && ($user{'domain'} ne '')) { |