@@ -100,7 +100,7 @@ try {
|
|||||||
|
|
||||||
// Handle different functions
|
// Handle different functions
|
||||||
if ($fn === 'getCreateArgs') {
|
if ($fn === 'getCreateArgs') {
|
||||||
check_rate_limit($conn, 'passkey_register_args', 10, 60 * 60, $userName);
|
check_rate_limit($conn, 'passkey_register_args', 10, 60, $userName);
|
||||||
$createArgs = $WebAuthn->getCreateArgs(\hex2bin($userId), $userName, $userDisplayName, 60*4, $requireResidentKey, $userVerification, $crossPlatformAttachment);
|
$createArgs = $WebAuthn->getCreateArgs(\hex2bin($userId), $userName, $userDisplayName, 60*4, $requireResidentKey, $userVerification, $crossPlatformAttachment);
|
||||||
|
|
||||||
header('Content-Type: application/json');
|
header('Content-Type: application/json');
|
||||||
@@ -143,7 +143,7 @@ try {
|
|||||||
// save challange to session. you have to deliver it to processGet later.
|
// save challange to session. you have to deliver it to processGet later.
|
||||||
$_SESSION['challenge'] = $WebAuthn->getChallenge();
|
$_SESSION['challenge'] = $WebAuthn->getChallenge();
|
||||||
} else if ($fn === 'processCreate') {
|
} else if ($fn === 'processCreate') {
|
||||||
check_rate_limit($conn, 'passkey_register_process', 5, 60 * 60, $userName);
|
check_rate_limit($conn, 'passkey_register_process', 5, 60, $userName);
|
||||||
if (empty($_SESSION['challenge']) || ($_SESSION['passkey_register_username'] ?? '') !== $userName) {
|
if (empty($_SESSION['challenge']) || ($_SESSION['passkey_register_username'] ?? '') !== $userName) {
|
||||||
throw new Exception('Invalid passkey session.');
|
throw new Exception('Invalid passkey session.');
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user