# Otp

URL: https://chugunov.pro/api-bitrix/security/mfa/otp/
Проверено на 1С-Битрикс 25.x, обновлено 03.08.2026.
Источник: независимый русскоязычный справочник chugunov.pro. Не является официальной документацией 1С-Битрикс.

Класс `\Bitrix\Security\Mfa\Otp`
Модуль: Security.

Исходный файл: `source/security/lib/mfa/otp.php:20`

## Константы (9)

- `REJECT_BY_CODE`
- `REJECT_BY_MANDATORY`
- `REJECTED_KEY`
- `SECRET_LENGTH`
- `SKIP_COOKIE`
- `TAGGED_CACHE_TEMPLATE`
- `TYPE_DEFAULT`
- `TYPE_HOTP`
- `TYPE_TOTP`

## Методы (65)

- [`__construct()`](https://chugunov.pro/api-bitrix/security/mfa/otp/__construct/)
- [`activate()`](https://chugunov.pro/api-bitrix/security/mfa/otp/activate/) — Активирует OTP пользователя.
- [`canSkipMandatory()`](https://chugunov.pro/api-bitrix/security/mfa/otp/canskipmandatory/) — Проверяет, может ли текущий пользователь пропустить обязательное использование OTP.
- [`canSkipMandatoryByRights()`](https://chugunov.pro/api-bitrix/security/mfa/otp/canskipmandatorybyrights/) — Проверяет, что текущий пользователь не включён в обязательные права
- [`deactivate()`](https://chugunov.pro/api-bitrix/security/mfa/otp/deactivate/) — Отключает OTP пользователя на необходимое количество дней или навсегда
- [`defer()`](https://chugunov.pro/api-bitrix/security/mfa/otp/defer/) — Откладывает обязательное использование OTP пользователем на необходимое количество дней или навсегда
- [`delete()`](https://chugunov.pro/api-bitrix/security/mfa/otp/delete/) — Удаляет запись OTP из БД
- [`getAlgorithm()`](https://chugunov.pro/api-bitrix/security/mfa/otp/getalgorithm/) — Возвращает экземпляр используемого OtpAlgorithm
- [`getAppSecret()`](https://chugunov.pro/api-bitrix/security/mfa/otp/getappsecret/) — Возвращает secret мобильного приложения, используемый для ручной инициализации устройства
- [`getAttempts()`](https://chugunov.pro/api-bitrix/security/mfa/otp/getattempts/) — Возвращает количество попыток проверки
- [`static getAvailableTypes()`](https://chugunov.pro/api-bitrix/security/mfa/otp/getavailabletypes/) — Возвращает доступные типы OtpAlgorithm
- [`static getByType()`](https://chugunov.pro/api-bitrix/security/mfa/otp/getbytype/) — Возвращает новый экземпляр с требуемым типом OtpAlgorithm
- [`static getByUser()`](https://chugunov.pro/api-bitrix/security/mfa/otp/getbyuser/) — Возвращает новый экземпляр для пользователя, заданного по user ID
- [`getContext()`](https://chugunov.pro/api-bitrix/security/mfa/otp/getcontext/) — Возвращает контекст текущего запроса.
- [`getDeactivateUntil()`](https://chugunov.pro/api-bitrix/security/mfa/otp/getdeactivateuntil/)
- [`static getDefaultType()`](https://chugunov.pro/api-bitrix/security/mfa/otp/getdefaulttype/) — Возвращает тип OtpAlgorithm по умолчанию
- [`static getDeferredParams()`](https://chugunov.pro/api-bitrix/security/mfa/otp/getdeferredparams/) — Возвращает отложенные параметры (см. verifyUser)
- [`getHexSecret()`](https://chugunov.pro/api-bitrix/security/mfa/otp/gethexsecret/) — Возвращает secret в шестнадцатеричном представлении
- [`getInitialDate()`](https://chugunov.pro/api-bitrix/security/mfa/otp/getinitialdate/) — Возвращает дату инициализации OTP
- [`getInitParams()`](https://chugunov.pro/api-bitrix/security/mfa/otp/getinitparams/) — Возвращает параметры инициализации для алгоритмов.
- [`getIssuer()`](https://chugunov.pro/api-bitrix/security/mfa/otp/getissuer/) — Возвращает issuer.
- [`getLabel()`](https://chugunov.pro/api-bitrix/security/mfa/otp/getlabel/) — Возвращает метку для issuer (если задана). Если пользовательская метка недоступна — генерирует значение по умолчанию (см. generateLabel)
- [`static getMandatoryRights()`](https://chugunov.pro/api-bitrix/security/mfa/otp/getmandatoryrights/) — Возвращает права пользователей, которые обязаны использовать OTP
- [`getParams()`](https://chugunov.pro/api-bitrix/security/mfa/otp/getparams/) — Возвращает параметры пользователя (например, counter для HotpAlgorithm)
- [`getProvisioningUri()`](https://chugunov.pro/api-bitrix/security/mfa/otp/getprovisioninguri/) — Возвращает Provision URI в соответствии с KeyUriFormat
- [`getSecret()`](https://chugunov.pro/api-bitrix/security/mfa/otp/getsecret/) — Возвращает бинарный secret
- [`static getSkipMandatoryDays()`](https://chugunov.pro/api-bitrix/security/mfa/otp/getskipmandatorydays/) — Возвращает окно инициализации (в днях) для проверки обязательного использования
- [`getSyncParameters()`](https://chugunov.pro/api-bitrix/security/mfa/otp/getsyncparameters/) — Возвращает синхронизированные параметры пользователя для переданных входных данных
- [`getType()`](https://chugunov.pro/api-bitrix/security/mfa/otp/gettype/) — Возвращает используемый тип OtpAlgorithm
- [`static getTypesDescription()`](https://chugunov.pro/api-bitrix/security/mfa/otp/gettypesdescription/) — Возвращает описание доступных типов OtpAlgorithm
- [`getUserId()`](https://chugunov.pro/api-bitrix/security/mfa/otp/getuserid/) — Возвращает используемый User ID
- [`getUserLogin()`](https://chugunov.pro/api-bitrix/security/mfa/otp/getuserlogin/) — Возвращает логин пользователя. Если пользовательский логин недоступен, он будет получен из БД
- [`isActivated()`](https://chugunov.pro/api-bitrix/security/mfa/otp/isactivated/) — Возвращает, активирован ли OTP
- [`isAttemptsReached()`](https://chugunov.pro/api-bitrix/security/mfa/otp/isattemptsreached/) — Проверяет, достигнуто ли количество попыток проверки согласно групповой политике безопасности. Может использоваться для показа Captcha или чего угодно
- [`static isCaptchaRequired()`](https://chugunov.pro/api-bitrix/security/mfa/otp/iscaptcharequired/) — Возвращает, должен ли пользователь ввести код captcha перед проверкой пароля OTP
- [`isInitialized()`](https://chugunov.pro/api-bitrix/security/mfa/otp/isinitialized/)
- [`isMandatorySkipped()`](https://chugunov.pro/api-bitrix/security/mfa/otp/ismandatoryskipped/) — Возвращает true, если пользователь может пропустить обязательное использование
- [`static isMandatoryUsing()`](https://chugunov.pro/api-bitrix/security/mfa/otp/ismandatoryusing/) — Возвращает, активировано ли обязательное использование OTP
- [`static isOtpEnabled()`](https://chugunov.pro/api-bitrix/security/mfa/otp/isotpenabled/) — Возвращает, включён ли OTP
- [`static isOtpRequired()`](https://chugunov.pro/api-bitrix/security/mfa/otp/isotprequired/) — Возвращает true, если пользователь должен ввести пароль с устройства
- [`static isOtpRequiredByMandatory()`](https://chugunov.pro/api-bitrix/security/mfa/otp/isotprequiredbymandatory/) — Возвращает true, если пользователь не использует OTP, но он обязателен и льготный период заканчивается
- [`static isRecoveryCodesEnabled()`](https://chugunov.pro/api-bitrix/security/mfa/otp/isrecoverycodesenabled/) — Возвращает, включены ли «Коды восстановления»
- [`isUserActive()`](https://chugunov.pro/api-bitrix/security/mfa/otp/isuseractive/)
- [`regenerate()`](https://chugunov.pro/api-bitrix/security/mfa/otp/regenerate/) — Повторно инициализирует OTP (генерирует новый secret, устанавливает алгоритм по умолчанию и т.д.), должен вызываться перед подключением нового устройства
- [`save()`](https://chugunov.pro/api-bitrix/security/mfa/otp/save/) — Сохраняет все данные OTP в БД
- [`setActive()`](https://chugunov.pro/api-bitrix/security/mfa/otp/setactive/) — Устанавливает новое состояние активации
- [`setAppSecret()`](https://chugunov.pro/api-bitrix/security/mfa/otp/setappsecret/) — Устанавливает новый secret мобильного приложения
- [`setContext()`](https://chugunov.pro/api-bitrix/security/mfa/otp/setcontext/) — Устанавливает контекст текущего запроса.
- [`static setDefaultType()`](https://chugunov.pro/api-bitrix/security/mfa/otp/setdefaulttype/) — Устанавливает тип OtpAlgorithm по умолчанию
- [`static setDeferredParams()`](https://chugunov.pro/api-bitrix/security/mfa/otp/setdeferredparams/) — Устанавливает или удаляет отложенные параметры (см. verifyUser)
- [`setHexSecret()`](https://chugunov.pro/api-bitrix/security/mfa/otp/sethexsecret/) — Устанавливает новый secret в шестнадцатеричном представлении
- [`setInitParams()`](https://chugunov.pro/api-bitrix/security/mfa/otp/setinitparams/) — Устанавливает параметры инициализации для алгоритмов.
- [`setIssuer()`](https://chugunov.pro/api-bitrix/security/mfa/otp/setissuer/) — Устанавливает пользовательский issuer
- [`setLabel()`](https://chugunov.pro/api-bitrix/security/mfa/otp/setlabel/) — Устанавливает пользовательскую метку
- [`static setMandatoryRights()`](https://chugunov.pro/api-bitrix/security/mfa/otp/setmandatoryrights/) — Устанавливает права пользователей, которые обязаны использовать OTP
- [`static setMandatoryUsing()`](https://chugunov.pro/api-bitrix/security/mfa/otp/setmandatoryusing/) — Включает или отключает обязательное использование OTP
- [`setSecret()`](https://chugunov.pro/api-bitrix/security/mfa/otp/setsecret/) — Устанавливает новый secret
- [`static setSkipMandatoryDays()`](https://chugunov.pro/api-bitrix/security/mfa/otp/setskipmandatorydays/) — Устанавливает окно инициализации (в днях) для проверки обязательного использования
- [`setType()`](https://chugunov.pro/api-bitrix/security/mfa/otp/settype/) — Устанавливает новый тип OtpAlgorithm
- [`setUserActive()`](https://chugunov.pro/api-bitrix/security/mfa/otp/setuseractive/)
- [`setUserInfo()`](https://chugunov.pro/api-bitrix/security/mfa/otp/setuserinfo/) — Устанавливает новую информацию о пользователе. В основном используется для инициализации из БД. Сейчас поддерживается: - ACTIVE: bool, состояние активации (см. setActive) - USER_ID: integer, User ID (см. setUserId) - ATTEMPTS: integer, счётчик попыток (см. setAttempts) - SECRET: binary, secret пользователя (см. setSecret) - PARAMS: string, параметры пользователя (см. setParams и getSyncParameters) - INITIAL_DATE: Type\Date, начальная дата OTP (см. setInitialDate)
- [`setUserLogin()`](https://chugunov.pro/api-bitrix/security/mfa/otp/setuserlogin/) — Устанавливает пользовательский логин
- [`syncParameters()`](https://chugunov.pro/api-bitrix/security/mfa/otp/syncparameters/) — Синхронизирует параметры пользователя для переданных входных данных. Должен вызываться после регенерации и перед сохранением! Если что-то пошло не так — выбрасывает OtpException с корректным описанием в сообщении
- [`verify()`](https://chugunov.pro/api-bitrix/security/mfa/otp/verify/) — Проверяет переданный ввод
- [`static verifyUser()`](https://chugunov.pro/api-bitrix/security/mfa/otp/verifyuser/) — Самый сложный метод, может проверить всё :-) ToDo: описать после рефакторинга

Оригинал в официальной документации: https://docs.1c-bitrix.ru/api/classes/Bitrix-Security-Mfa-Otp.html
