Восстановление доступа к администраторской панели Битрикс24 (коробка) и 1С-Битрикс
29 мая 2024
BXmeta
Многие пользователи коробочных решений 1С-Битрикс и Битрикс24 забывают о стандартном функционале восстановления пароля. Казалось бы, очевидное решение, но им часто пренебрегают.
Если вы забыли пароль и не можете войти в администраторскую панель, начните с проверки стандартного функционала восстановления пароля, расположенного на странице авторизации: ваш_сайт/bitrix/admin/index.php#forgot_password
.
Если это не помогает, не стоит паниковать! В нашей статье мы предложим альтернативное решение — специальный скрипт, который позволит вам авторизоваться под администратором. После этого вы сможете легко сменить пароль для нужной учетной записи и вернуть полный контроль над вашим сайтом.
Решение
C помощью ftp клиента или панели управления хостингом создаем файл в корне сайта с именем a.php и содержимым:Для 1С-Битрикс
<?php
require($_SERVER["DOCUMENT_ROOT"]."/bitrix/modules/main/include/prolog_before.php");
global $USER;
//получаем первого активного админа и авторизовываемся под его учеткой
$rs = $USER->GetList(($by="ID"), ($order="DESC"), ["GROUPS_ID" => [1], 'ACTIVE' => 'Y']);
if($arUser = $rs->Fetch()) {
$USER->Authorize($arUser['ID']);
@unlink(__FILE__);
LocalRedirect('/bitrix/');
}
Для Битрикс24 коробочная версия
<?php
// Переопределяем права доступа
$accessFile = '.access.php';
if (file_exists($accessFile)) {
$originalAccessFileData = file_get_contents($accessFile);
if ($originalAccessFileData === false) {
die("Ошибка чтения файла прав доступа.");
}
$newAccessFileData = str_replace('"D";', '"R";', $originalAccessFileData);
if (file_put_contents($accessFile, $newAccessFileData) === false) {
die("Ошибка записи в файл прав доступа.");
}
} else {
die("Файл прав доступа не найден.");
}
require($_SERVER["DOCUMENT_ROOT"]."/bitrix/modules/main/include/prolog_before.php");
if (file_put_contents($accessFile, $originalAccessFileData) === false) {
die("Ошибка восстановления файла прав доступа.");
}
global $USER;
$rs = $USER->GetList(($by = "ID"), ($order = "DESC"), ["GROUPS_ID" => [1], 'ACTIVE' => 'Y']);
if ($arUser = $rs->Fetch()) {
$USER->Authorize($arUser['ID']);
@unlink(__FILE__);
LocalRedirect('/bitrix/');
} else {
die("Не найден активный администратор.");
}
Переходим по адресу ваш_сайт/a.php
Теперь вы авторизованы под администратором сайта и можете установить свой пароль для учетной записи.