Skip to content
Snippets Groups Projects
Commit 8b444dc4 authored by Guillaume Heurtier's avatar Guillaume Heurtier
Browse files

FEAT #14563 TIME 0:20 do not ignore invalid signature modes in user...

FEAT #14563 TIME 0:20 do not ignore invalid signature modes in user create/update + put signature modes in auth info
parent 9e2b3728
No related branches found
No related tags found
No related merge requests found
......@@ -233,13 +233,6 @@ class SignatureController
return $response->withStatus(204);
}
public function getSignatureModes(Request $request, Response $response)
{
$modes = CoreConfigModel::getSignatureModes();
return $response->withJson($modes);
}
public static function isValidSignatureMode(array $args)
{
ValidatorModel::stringType($args, ['mode']);
......
......@@ -139,13 +139,11 @@ class UserController
if (!Validator::arrayType()->validate($body['signatureModes'])) {
return $response->withStatus(400)->withJson(['errors' => 'Body signatureModes is not an array']);
} else {
$modes = [];
foreach ($body['signatureModes'] as $signatureMode) {
if (SignatureController::isValidSignatureMode(['mode' => $signatureMode])) {
$modes[] = $signatureMode;
foreach ($body['signatureModes'] as $key => $signatureMode) {
if (!SignatureController::isValidSignatureMode(['mode' => $signatureMode])) {
return $response->withStatus(400)->withJson(['errors' => "Body signatureModes[{$key}] is not a valid signature mode"]);
}
}
$body['signatureModes'] = $modes;
}
} else {
$body['signatureModes'] = [];
......@@ -199,13 +197,12 @@ class UserController
if (!empty($body['signatureModes']) && !Validator::arrayType()->validate($body['signatureModes'])) {
return $response->withStatus(400)->withJson(['errors' => 'Body signatureModes is not an array']);
} else {
$modes = [];
foreach ($body['signatureModes'] as $signatureMode) {
if (SignatureController::isValidSignatureMode(['mode' => $signatureMode])) {
$modes[] = $signatureMode;
foreach ($body['signatureModes'] as $key => $signatureMode) {
if (!SignatureController::isValidSignatureMode(['mode' => $signatureMode])) {
return $response->withStatus(400)->withJson(['errors' => "Body signatureModes[{$key}] is not a valid signature mode"]);
}
}
$set['signature_modes'] = $modes;
$set['signature_modes'] = $body['signatureModes'];
}
}
$set['signature_modes'] = json_encode($set['signature_modes']);
......
......@@ -42,9 +42,14 @@ class AuthenticationController
$encryptKey = CoreConfigModel::getEncryptKey();
$path = CoreConfigModel::getConfigPath();
$hashedPath = md5($path);
$signatureModes = CoreConfigModel::getSignatureModes();
return $response->withJson(['connection' => $connection, 'changeKey' => $encryptKey == 'Security Key Maarch Parapheur #2008', 'instanceId' => $hashedPath]);
return $response->withJson([
'connection' => $connection,
'changeKey' => $encryptKey == 'Security Key Maarch Parapheur #2008',
'instanceId' => $hashedPath,
'signatureModes' => $signatureModes
]);
}
public static function authentication($authorizationHeaders = [])
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment