Skip to content

Команды управления пользователями

Команды для работы с пользователями: просмотр списка, создание новых пользователей и смена паролей.

user:list

Выводит список пользователей системы с возможностью фильтрации.

Синтаксис

bash
php bitrix.php user:list [опции]

Опции

  • --limit=N - ограничить количество выводимых пользователей (по умолчанию: все)
  • --active - показать только активных пользователей
  • --admin - показать только администраторов
  • -v, -vv - подробный вывод

Примеры использования

bash
# Список всех пользователей
php bitrix.php user:list

# Только первые 50 пользователей
php bitrix.php user:list --limit=50

# Только активные пользователи
php bitrix.php user:list --active

# Только администраторы
php bitrix.php user:list --admin

# Активные администраторы, не более 10
php bitrix.php user:list --active --admin --limit=10

# С подробной информацией
php bitrix.php user:list -v

Вывод команды

Команда выводит таблицу со следующей информацией:

  • ID - идентификатор пользователя
  • Логин - логин пользователя
  • Email - электронная почта
  • Имя - имя и фамилия
  • Активен - статус активности
  • Группы - группы пользователя (в подробном режиме)
  • Дата регистрации - дата создания учетной записи (в подробном режиме)
  • Последний визит - дата последней авторизации (в подробном режиме)

user:create

Создает нового пользователя в системе.

Синтаксис

bash
php bitrix.php user:create [опции]

Опции

  • --login=<login> - логин пользователя (обязательный)
  • --email=<email> - email пользователя (обязательный)
  • --password=<password> - пароль пользователя (обязательный)
  • --name=<name> - имя пользователя
  • --last-name=<lastname> - фамилия пользователя
  • --second-name=<secondname> - отчество пользователя
  • --active - создать активного пользователя (по умолчанию: да)
  • --inactive - создать неактивного пользователя
  • --admin - добавить пользователя в группу администраторов
  • --groups=<ids> - список ID групп через запятую

Примеры использования

bash
# Базовое создание пользователя
php bitrix.php user:create \
  --login=john \
  --email=john@example.com \
  --password=SecurePass123

# Создание с полными данными
php bitrix.php user:create \
  --login=john \
  --email=john@example.com \
  --password=SecurePass123 \
  --name=John \
  --last-name=Doe \
  --second-name=Smith

# Создание администратора
php bitrix.php user:create \
  --login=admin2 \
  --email=admin2@example.com \
  --password=AdminPass123 \
  --name=Admin \
  --admin

# Создание с назначением групп
php bitrix.php user:create \
  --login=manager \
  --email=manager@example.com \
  --password=ManagerPass123 \
  --groups=1,5,7

# Создание неактивного пользователя
php bitrix.php user:create \
  --login=temp \
  --email=temp@example.com \
  --password=TempPass123 \
  --inactive

Интерактивный режим

Если не указать обязательные параметры, команда запросит их в интерактивном режиме:

bash
php bitrix.php user:create
# Будут запрошены: логин, email, пароль, имя, фамилия

Требования к паролю

⚠️ Важно: Убедитесь, что пароль соответствует политике безопасности:

  • Минимальная длина (обычно 6-8 символов)
  • Сложность (буквы, цифры, спецсимволы)
  • Настройки могут отличаться в зависимости от конфигурации сайта

user:password

Изменяет пароль существующего пользователя.

Синтаксис

bash
php bitrix.php user:password <login_or_email> [опции]

Аргументы

  • login_or_email - логин или email пользователя

Опции

  • --password=<password> - новый пароль

Примеры использования

bash
# Смена пароля по логину
php bitrix.php user:password admin --password=NewPassword123

# Смена пароля по email
php bitrix.php user:password user@example.com --password=NewPassword123

# Интерактивный режим (запросит новый пароль)
php bitrix.php user:password admin

Интерактивный режим

Если не указать пароль через опцию --password, команда запросит его в интерактивном режиме:

bash
php bitrix.php user:password admin
# Введите новый пароль: _______
# Подтвердите пароль: _______

Безопасность

🔒 Безопасность:

  • Пароль не отображается при вводе в интерактивном режиме
  • Старый пароль не требуется (команда запускается от имени системы)
  • Смена пароля логируется в системе
  • Пользователь не получает уведомление о смене пароля (если не настроено отдельно)

Использование в автоматизации

Массовое создание пользователей

bash
#!/bin/bash
# Создание пользователей из CSV файла

# Формат CSV: login,email,name,lastname
while IFS=, read -r login email name lastname; do
    echo "Создание пользователя: $login"
    php bitrix.php user:create \
        --login="$login" \
        --email="$email" \
        --password="DefaultPass123" \
        --name="$name" \
        --last-name="$lastname"
done < users.csv

Сброс паролей администраторов

bash
#!/bin/bash
# Экстренный сброс паролей всех администраторов

ADMINS=("admin" "admin2" "superadmin")
NEW_PASSWORD="Emergency$(date +%s)"

for admin in "${ADMINS[@]}"; do
    echo "Сброс пароля для: $admin"
    php bitrix.php user:password "$admin" --password="$NEW_PASSWORD"
done

echo "Новый пароль для всех администраторов: $NEW_PASSWORD"
echo "$NEW_PASSWORD" > /secure/admin_emergency_password.txt

Аудит пользователей

bash
#!/bin/bash
# Создание отчета по пользователям

cd /var/www/bitrix

# Все пользователи
echo "=== Все пользователи ===" > /tmp/users_report.txt
php bitrix.php user:list >> /tmp/users_report.txt

# Администраторы
echo -e "\n=== Администраторы ===" >> /tmp/users_report.txt
php bitrix.php user:list --admin >> /tmp/users_report.txt

# Неактивные пользователи
echo -e "\n=== Неактивные пользователи ===" >> /tmp/users_report.txt
php bitrix.php user:list | grep "Нет" >> /tmp/users_report.txt

cat /tmp/users_report.txt

Создание тестовых пользователей

bash
#!/bin/bash
# Создание тестовых пользователей для разработки

for i in {1..10}; do
    php bitrix.php user:create \
        --login="testuser$i" \
        --email="testuser$i@test.local" \
        --password="Test123456" \
        --name="Test" \
        --last-name="User$i"
done

echo "Создано 10 тестовых пользователей"

Troubleshooting

Пользователь не создается

Проблема: Ошибка при создании пользователя

Решения:

  1. Проверьте, что логин уникален
  2. Проверьте, что email уникален
  3. Убедитесь, что пароль соответствует политике безопасности
  4. Проверьте права доступа к базе данных
  5. Проверьте логи Битрикс

Ошибка "Пользователь не найден"

Проблема: При смене пароля выдается ошибка о том, что пользователь не найден

Решения:

  1. Проверьте правильность написания логина/email
  2. Убедитесь, что пользователь существует: php bitrix.php user:list
  3. Попробуйте найти пользователя по ID

Пароль не соответствует требованиям

Проблема: Ошибка "Пароль не соответствует требованиям безопасности"

Решения:

  1. Используйте более сложный пароль (буквы, цифры, спецсимволы)
  2. Увеличьте длину пароля (минимум 8 символов)
  3. Проверьте настройки политики паролей в админ-панели
  4. Временно измените требования к паролям (для разработки)

Email уже используется

Проблема: Ошибка "Email уже зарегистрирован"

Решения:

  1. Используйте уникальный email
  2. Найдите существующего пользователя: php bitrix.php user:list
  3. Удалите старого пользователя, если он больше не нужен

Полезные советы

💡 Используйте сильные пароли - особенно для администраторов

💡 Документируйте создание - сохраняйте информацию о созданных пользователях

💡 Автоматизируйте аудит - регулярно проверяйте список пользователей и администраторов

💡 Тестируйте безопасно - используйте отдельные email-домены для тестовых пользователей

💡 Очищайте тестовые данные - удаляйте тестовых пользователей перед продакшеном


Смотрите также

Документация BXMax CLI