CSecurityUser::setActive($_POST["otp_active"] === "Y"); } $hotp_user_window = intval($_POST["window_size"]); if ($hotp_user_window <= 0) { $hotp_user_window = 10; } COption::SetOptionString("security", "hotp_user_window", $hotp_user_window); COption::SetOptionString("security", "otp_allow_remember", $_POST["otp_allow_remember"] === "Y" ? "Y" : "N"); COption::SetOptionString("security", "otp_allow_recovery_codes", $_POST["otp_allow_recovery_codes"] === "Y" ? "Y" : "N"); if ($_POST['otp_default_type']) { Bitrix\Security\Mfa\Otp::setDefaultType($_POST['otp_default_type']); } if (is_numeric($_POST['otp_mandatory_skip_days'])) { Bitrix\Security\Mfa\Otp::setSkipMandatoryDays($_POST['otp_mandatory_skip_days']); } Bitrix\Security\Mfa\Otp::setMandatoryUsing($_POST['otp_mandatory_using'] === 'Y'); if (is_array($_POST['otp_mandatory_rights'])) { Bitrix\Security\Mfa\Otp::setMandatoryRights($_POST['otp_mandatory_rights']); } if ($_REQUEST["save"] != "" && $_GET["return_url"] != "") { LocalRedirect($_GET["return_url"]); } else { LocalRedirect("/bitrix/admin/security_otp.php?lang=" . LANGUAGE_ID . $returnUrl . "&" . $tabControl->ActiveTabParam()); } } $availableTypes = \Bitrix\Security\Mfa\Otp::getAvailableTypes(); $availableTypesDescription = \Bitrix\Security\Mfa\Otp::getTypesDescription(); $defaultType = \Bitrix\Security\Mfa\Otp::getDefaultType(); $targetRights = \Bitrix\Security\Mfa\Otp::getMandatoryRights(); $access = new CAccess(); $targetRightsNames = $access->GetNames($targetRights);