File: as_login.php

package info (click to toggle)
simplesamlphp 1.19.7-2
  • links: PTS, VCS
  • area: main
  • in suites: sid
  • size: 42,920 kB
  • sloc: php: 202,044; javascript: 14,867; xml: 2,700; sh: 225; perl: 82; makefile: 70; python: 5
file content (35 lines) | stat: -rw-r--r-- 871 bytes parent folder | download | duplicates (3)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
<?php

/**
 * Endpoint for logging in with an authentication source.
 *
 * @package SimpleSAMLphp
 */

if (!isset($_REQUEST['ReturnTo'])) {
    throw new \SimpleSAML\Error\BadRequest('Missing ReturnTo parameter.');
}

if (!isset($_REQUEST['AuthId'])) {
    throw new \SimpleSAML\Error\BadRequest('Missing AuthId parameter.');
}

/*
 * Setting up the options for the requireAuth() call later..
 */
$options = [
    'ReturnTo' => \SimpleSAML\Utils\HTTP::checkURLAllowed($_REQUEST['ReturnTo']),
];

/*
 * Allows a saml:idp query string parameter specify the IdP entity ID to be used
 * as used by the DiscoJuice embedded client.
 */
if (!empty($_REQUEST['saml:idp'])) {
    $options['saml:idp'] = $_REQUEST['saml:idp'];
}

$as = new \SimpleSAML\Auth\Simple($_REQUEST['AuthId']);
$as->requireAuth($options);

\SimpleSAML\Utils\HTTP::redirectTrustedURL($options['ReturnTo']);