Skip to content
Snippets Groups Projects
Verified Commit cd894a2e authored by Dominik František Bučík's avatar Dominik František Bučík
Browse files

fix: :bug: Fix disco to work with perun module

parent 7c54e883
No related branches found
No related tags found
1 merge request!30fix: 🐛 Fix disco to work with perun module
......@@ -4,7 +4,7 @@
"Read more about it at https://getcomposer.org/doc/01-basic-usage.md#installing-dependencies",
"This file is @generated automatically"
],
"content-hash": "97335458a79f24e0a78635ed85e3e3d4",
"content-hash": "da9c1551e9c77601b2b4f530a6718b67",
"packages": [
{
"name": "brick/math",
......@@ -66,21 +66,76 @@
],
"time": "2021-08-15T20:50:18+00:00"
},
{
"name": "cesnet/simplesamlphp-module-authswitcher",
"version": "v10.6.0",
"source": {
"type": "git",
"url": "https://github.com/CESNET/simplesamlphp-module-authswitcher.git",
"reference": "c46afd88c7b28b1af0b04cc28c01e589d2d1991f"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/CESNET/simplesamlphp-module-authswitcher/zipball/c46afd88c7b28b1af0b04cc28c01e589d2d1991f",
"reference": "c46afd88c7b28b1af0b04cc28c01e589d2d1991f",
"shasum": ""
},
"require": {
"ext-curl": "*",
"ext-json": "*",
"mobiledetect/mobiledetectlib": "^2.8",
"php": "^7.1 || ^8",
"simplesamlphp/composer-module-installer": "~1.0",
"simplesamlphp/saml2": "^4.1",
"simplesamlphp/simplesamlphp": "^1.19",
"web-token/jwt-easy": "^2.2"
},
"require-dev": {
"symplify/easy-coding-standard": "^11.0"
},
"suggest": {
"cesnet/simplesamlphp-module-totp": "TOTP 2FA",
"cesnet/simplesamlphp-module-webauthn": "WebAuthn 2FA",
"privacyidea/simplesamlphp-module-privacyidea": "privacyIDEA 2FA"
},
"type": "simplesamlphp-module",
"notification-url": "https://packagist.org/downloads/",
"license": [
"BSD-2-Clause"
],
"authors": [
{
"name": "Pavel Břoušek",
"email": "433364@muni.cz"
},
{
"name": "Jan Pavlíček",
"email": "469355@muni.cz"
}
],
"description": "A SimpleSAMLphp module for applying 2FA modules to specific users",
"support": {
"issues": "https://github.com/CESNET/simplesamlphp-module-authswitcher/issues",
"source": "https://github.com/CESNET/simplesamlphp-module-authswitcher/tree/v10.6.0"
},
"time": "2022-07-20T09:47:22+00:00"
},
{
"name": "cesnet/simplesamlphp-module-perun",
"version": "v7.11.2",
"version": "v9.0.1",
"source": {
"type": "git",
"url": "https://github.com/CESNET/perun-simplesamlphp-module.git",
"reference": "b9f2c93f2fbbdbf9e755200c29e44f219241587c"
"reference": "081ad75d2f077f30f3ede0a4e694d9a9bfea40fc"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/CESNET/perun-simplesamlphp-module/zipball/b9f2c93f2fbbdbf9e755200c29e44f219241587c",
"reference": "b9f2c93f2fbbdbf9e755200c29e44f219241587c",
"url": "https://api.github.com/repos/CESNET/perun-simplesamlphp-module/zipball/081ad75d2f077f30f3ede0a4e694d9a9bfea40fc",
"reference": "081ad75d2f077f30f3ede0a4e694d9a9bfea40fc",
"shasum": ""
},
"require": {
"cesnet/simplesamlphp-module-authswitcher": "^10.6",
"ext-curl": "*",
"ext-filter": "*",
"ext-hash": "*",
......@@ -103,7 +158,10 @@
"web-token/jwt-signature-algorithm-rsa": "^2.2"
},
"require-dev": {
"symplify/easy-coding-standard": "^10.0"
"symplify/easy-coding-standard": "^11.0"
},
"suggest": {
"cesnet/simplesamlphp-module-privacyidea": "included privacyIDEA template is for this module"
},
"type": "simplesamlphp-module",
"notification-url": "https://packagist.org/downloads/",
......@@ -143,22 +201,22 @@
],
"support": {
"issues": "https://github.com/CESNET/perun-simplesamlphp-module/issues",
"source": "https://github.com/CESNET/perun-simplesamlphp-module/tree/v7.11.2"
"source": "https://github.com/CESNET/perun-simplesamlphp-module/tree/v9.0.1"
},
"time": "2022-05-19T09:28:05+00:00"
"time": "2022-07-22T07:43:53+00:00"
},
{
"name": "cesnet/simplesamlphp-module-proxystatistics",
"version": "v7.0.2",
"version": "v8.0.0",
"source": {
"type": "git",
"url": "https://github.com/CESNET/proxystatistics-simplesamlphp-module.git",
"reference": "96021b5ca57d688b9c97d194256e6fa5e82fb933"
"reference": "e28d4acff4dd8f1aa8d07dfe86a5f02f9db764f4"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/CESNET/proxystatistics-simplesamlphp-module/zipball/96021b5ca57d688b9c97d194256e6fa5e82fb933",
"reference": "96021b5ca57d688b9c97d194256e6fa5e82fb933",
"url": "https://api.github.com/repos/CESNET/proxystatistics-simplesamlphp-module/zipball/e28d4acff4dd8f1aa8d07dfe86a5f02f9db764f4",
"reference": "e28d4acff4dd8f1aa8d07dfe86a5f02f9db764f4",
"shasum": ""
},
"require": {
......@@ -166,12 +224,12 @@
"ext-filter": "*",
"ext-json": "*",
"ext-pdo": "*",
"php": "^7.1 || ^8",
"php": "^7.3 || ^8",
"simplesamlphp/simplesamlphp": "^1.19.2"
},
"require-dev": {
"squizlabs/php_codesniffer": "*",
"symplify/easy-coding-standard": "^10.0"
"symplify/easy-coding-standard": "^11.0"
},
"suggest": {
"cesnet/simplesamlphp-module-perun": "for logging that a user accessed a service",
......@@ -200,9 +258,9 @@
],
"support": {
"issues": "https://github.com/CESNET/proxystatistics-simplesamlphp-module/issues",
"source": "https://github.com/CESNET/proxystatistics-simplesamlphp-module/tree/v7.0.2"
"source": "https://github.com/CESNET/proxystatistics-simplesamlphp-module/tree/v8.0.0"
},
"time": "2022-04-04T17:00:39+00:00"
"time": "2022-07-22T09:16:06+00:00"
},
{
"name": "fgrosse/phpasn1",
......@@ -434,6 +492,62 @@
],
"time": "2021-11-11T17:30:39+00:00"
},
{
"name": "mobiledetect/mobiledetectlib",
"version": "2.8.39",
"source": {
"type": "git",
"url": "https://github.com/serbanghita/Mobile-Detect.git",
"reference": "0fd6753003fc870f6e229bae869cc1337c99bc45"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/serbanghita/Mobile-Detect/zipball/0fd6753003fc870f6e229bae869cc1337c99bc45",
"reference": "0fd6753003fc870f6e229bae869cc1337c99bc45",
"shasum": ""
},
"require": {
"php": ">=5.0.0"
},
"require-dev": {
"phpunit/phpunit": "~4.8.35||~5.7"
},
"type": "library",
"autoload": {
"psr-0": {
"Detection": "namespaced/"
},
"classmap": [
"Mobile_Detect.php"
]
},
"notification-url": "https://packagist.org/downloads/",
"license": [
"MIT"
],
"authors": [
{
"name": "Serban Ghita",
"email": "serbanghita@gmail.com",
"homepage": "http://mobiledetect.net",
"role": "Developer"
}
],
"description": "Mobile_Detect is a lightweight PHP class for detecting mobile devices. It uses the User-Agent string combined with specific HTTP headers to detect the mobile environment.",
"homepage": "https://github.com/serbanghita/Mobile-Detect",
"keywords": [
"detect mobile devices",
"mobile",
"mobile detect",
"mobile detector",
"php mobile detect"
],
"support": {
"issues": "https://github.com/serbanghita/Mobile-Detect/issues",
"source": "https://github.com/serbanghita/Mobile-Detect/tree/2.8.39"
},
"time": "2022-02-17T19:24:25+00:00"
},
{
"name": "paragonie/constant_time_encoding",
"version": "v2.6.3",
......@@ -5706,6 +5820,171 @@
],
"time": "2021-03-17T14:55:52+00:00"
},
{
"name": "web-token/jwt-easy",
"version": "v2.2.11",
"source": {
"type": "git",
"url": "https://github.com/web-token/jwt-easy.git",
"reference": "01db23252bb53d4fd36975b55dd58466bab1bb30"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/web-token/jwt-easy/zipball/01db23252bb53d4fd36975b55dd58466bab1bb30",
"reference": "01db23252bb53d4fd36975b55dd58466bab1bb30",
"shasum": ""
},
"require": {
"web-token/jwt-checker": "^2.1",
"web-token/jwt-encryption": "^2.1",
"web-token/jwt-signature": "^2.1"
},
"suggest": {
"web-token/jwt-encryption-algorithm-aescbc": "Adds AES-CBC based encryption algorithms",
"web-token/jwt-encryption-algorithm-aesgcm": "Adds AES-GCM based encryption algorithms",
"web-token/jwt-encryption-algorithm-aesgcmkw": "Adds AES-GCM Key Wrapping based encryption algorithms",
"web-token/jwt-encryption-algorithm-aeskw": "Adds AES Key Wrapping based encryption algorithms",
"web-token/jwt-encryption-algorithm-dir": "Adds Direct encryption algorithm",
"web-token/jwt-encryption-algorithm-ecdh-es": "Adds ECDH-ES based encryption algorithms",
"web-token/jwt-encryption-algorithm-pbes2": "Adds PBES2 based encryption algorithms",
"web-token/jwt-encryption-algorithm-rsa": "Adds RSA based encryption algorithms",
"web-token/jwt-signature-algorithm-ecdsa": "Adds ECDSA based signature algorithms",
"web-token/jwt-signature-algorithm-eddsa": "Adds EdDSA based signature algorithms",
"web-token/jwt-signature-algorithm-hmac": "Adds HMAC based signature algorithms",
"web-token/jwt-signature-algorithm-none": "Adds none signature algorithms",
"web-token/jwt-signature-algorithm-rsa": "Adds RSA based signature algorithms"
},
"type": "library",
"autoload": {
"psr-4": {
"Jose\\Easy\\": ""
}
},
"notification-url": "https://packagist.org/downloads/",
"license": [
"MIT"
],
"authors": [
{
"name": "Florent Morselli",
"homepage": "https://github.com/Spomky"
},
{
"name": "All contributors",
"homepage": "https://github.com/web-token/jwt-framework/contributors"
}
],
"description": "Easy toolset to use the JWT Framework.",
"homepage": "https://github.com/web-token",
"keywords": [
"JOSE",
"JWE",
"JWK",
"JWKSet",
"JWS",
"Jot",
"RFC7515",
"RFC7516",
"RFC7517",
"RFC7518",
"RFC7519",
"RFC7520",
"bundle",
"jwa",
"jwt",
"symfony"
],
"support": {
"source": "https://github.com/web-token/jwt-easy/tree/v2.2.11"
},
"funding": [
{
"url": "https://www.patreon.com/FlorentMorselli",
"type": "patreon"
}
],
"abandoned": true,
"time": "2021-03-17T14:55:52+00:00"
},
{
"name": "web-token/jwt-encryption",
"version": "v2.2.11",
"source": {
"type": "git",
"url": "https://github.com/web-token/jwt-encryption.git",
"reference": "3b8d67d7c5c013750703e7c27f1001544407bbb2"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/web-token/jwt-encryption/zipball/3b8d67d7c5c013750703e7c27f1001544407bbb2",
"reference": "3b8d67d7c5c013750703e7c27f1001544407bbb2",
"shasum": ""
},
"require": {
"web-token/jwt-core": "^2.1"
},
"suggest": {
"web-token/jwt-encryption-algorithm-aescbc": "AES CBC Based Content Encryption Algorithms",
"web-token/jwt-encryption-algorithm-aesgcm": "AES GCM Based Content Encryption Algorithms",
"web-token/jwt-encryption-algorithm-aesgcmkw": "AES GCM Key Wrapping Based Key Encryption Algorithms",
"web-token/jwt-encryption-algorithm-aeskw": "AES Key Wrapping Based Key Encryption Algorithms",
"web-token/jwt-encryption-algorithm-dir": "Direct Key Encryption Algorithms",
"web-token/jwt-encryption-algorithm-ecdh-es": "ECDH-ES Based Key Encryption Algorithms",
"web-token/jwt-encryption-algorithm-experimental": "Experimental Key and Signature Algorithms",
"web-token/jwt-encryption-algorithm-pbes2": "PBES2 Based Key Encryption Algorithms",
"web-token/jwt-encryption-algorithm-rsa": "RSA Based Key Encryption Algorithms"
},
"type": "library",
"autoload": {
"psr-4": {
"Jose\\Component\\Encryption\\": ""
}
},
"notification-url": "https://packagist.org/downloads/",
"license": [
"MIT"
],
"authors": [
{
"name": "Florent Morselli",
"homepage": "https://github.com/Spomky"
},
{
"name": "All contributors",
"homepage": "https://github.com/web-token/jwt-encryption/contributors"
}
],
"description": "Encryption component of the JWT Framework.",
"homepage": "https://github.com/web-token",
"keywords": [
"JOSE",
"JWE",
"JWK",
"JWKSet",
"JWS",
"Jot",
"RFC7515",
"RFC7516",
"RFC7517",
"RFC7518",
"RFC7519",
"RFC7520",
"bundle",
"jwa",
"jwt",
"symfony"
],
"support": {
"source": "https://github.com/web-token/jwt-encryption/tree/v2.2.11"
},
"funding": [
{
"url": "https://www.patreon.com/FlorentMorselli",
"type": "patreon"
}
],
"time": "2021-03-17T14:55:52+00:00"
},
{
"name": "web-token/jwt-key-mgmt",
"version": "v2.2.11",
......
......@@ -7,6 +7,7 @@ namespace SimpleSAML\Module\elixir;
use SimpleSAML\Auth\State;
use SimpleSAML\Configuration;
use SimpleSAML\Logger;
use SimpleSAML\Module\authswitcher\DiscoUtils;
use SimpleSAML\Module\discopower\PowerIdPDisco;
use SimpleSAML\Module\perun\Auth\Process\MultifactorAcrs;
use SimpleSAML\Module\perun\model\WarningConfiguration;
......@@ -97,7 +98,7 @@ class Disco extends PowerIdPDisco
$this->originalAuthnContextClassRef = $state[self::SAML_REQUESTED_AUTHN_CONTEXT][self::AUTHN_CONTEXT_CLASS_REF];
$this->removeAuthContextClassRefWithPrefixes($state);
$this->prepareAcrsForMfa($state);
DiscoUtils::setUpstreamRequestedAuthnContext($state);
if (isset($state['IdPMetadata']['entityid'])) {
$this->proxyIdpEntityId = $state['IdPMetadata']['entityid'];
}
......@@ -216,10 +217,4 @@ class Disco extends PowerIdPDisco
$state[self::SAML_REQUESTED_AUTHN_CONTEXT][self::STATE_AUTHN_CONTEXT_CLASS_REF] = $filteredAcrs;
}
}
private function prepareAcrsForMfa(array &$state)
{
$contextsToAdd = $this->wayfConfiguration->getArray(self::ADD_AUTHN_CONTEXT_CLASSES_FOR_MFA, []);
MultifactorAcrs::addAndStoreAcrs($state, $contextsToAdd);
}
}
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment