Обзор — что делает этот экран
Мой профиль (/me) показывает данные учётной записи, под которой вы сейчас работаете, и позволяет сменить собственный пароль в режиме самообслуживания. Открыть страницу можно в любой момент из выпадающего меню пользователя в правом верхнем углу шапки. Она доступна каждому аутентифицированному пользователю — дополнительного ограничения по уровню нет.
Единственное, что вы можете изменить здесь, — это пароль. Ваш уровень (user_level), роль и команду назначает администратор в разделе Пользователи и команды; здесь они показаны как значки только для чтения.
Проверка и смена пароля безопасно сохраняются с текущим стандартным хешем — см. Вход и аутентификация.
Когда использовать
- Чтобы периодически менять пароль или сменить его немедленно, если вы подозреваете утечку.
- Чтобы убедиться в своём уровне · роли · команде и посмотреть время последнего входа.
- Чтобы проверить свой логин, адрес электронной почты и телефон, прежде чем обращаться к администратору.
Устройство экрана
Страница состоит из двух карточек.
1) Карточка с данными учётной записи (только чтение)
Сверху расположены аватар (инициалы имени и постоянный цвет, выведенный из имени), имя и логин, а ниже — строка значков.
| Поле | Значение | Источник |
|---|---|---|
| Имя / Логин | Отображаемое имя и @login_id |
users.name · users.login_id |
| Значок уровня | Демо / Сотрудник / Администратор (числовой уровень тоже показан) | users.user_level |
| Значок роли | Информационная подпись роли (только если задана) | users.role_id → infr_role |
| Значок команды | Принадлежность к команде (только если задана) | users.team_id → infr_team |
| Эл. почта | Почта учётной записи | users.email |
| Телефон | Стационарный / мобильный | users.hp |
| Последний вход | YYYY-MM-DD HH:MM |
users.last_log |
Цветовой тон значка уровня выбирается автоматически по вашему уровню.
| Уровень (значение) | Подпись | Тон значка |
|---|---|---|
| 1 | Демо | muted (серый) |
| 5 | Сотрудник | accent (акцент) |
| 10 | Администратор | crit (красный) |
Инициалы и цвет аватара вычисляются из имени. Корейские и другие CJK-имена берут первый символ, остальные имена составляются из начальных букв, а оттенок закреплён как
crc32(name) % 360— поэтому одно и то же имя везде показывается одним и тем же цветом.
2) Карточка смены пароля
Три поля ввода и кнопка Сменить пароль:
- Текущий пароль — чтобы подтвердить, что это вы.
- Новый пароль — не менее 4 символов.
- Подтвердите новый пароль — должен совпадать с полем выше.
Как сказано в подсказке, смена пароля сохраняет вашу сессию — вас не разлогинивают и заново входить не нужно.
Как пользоваться
Смена собственного пароля
- Откройте выпадающее меню пользователя в правом верхнем углу → Мой профиль (см. Навигация).
- Введите текущий пароль.
- Введите новый пароль (от 4 символов) и подтверждение — совершенно одинаково.
- Нажмите Сменить пароль. При успехе поля очищаются и появляется уведомление «Пароль изменён.».
Под капотом браузер отправляет:
POST /me/password
Content-Type: application/json
X-CSRF-TOKEN: <session token>
{ "current": "OLD_PASSWORD", "password": "NEW_PASSWORD", "password_confirmation": "NEW_PASSWORD" }
Успешный ответ — { "ok": true }; при неудаче { "ok": false, "errors": { ... } } несёт ошибки по каждому полю.
Правила проверки на сервере
| Правило | Условие | При нарушении |
|---|---|---|
current |
обязательно | 422 |
password |
обязательно · мин. 4 · макс. 120 · confirmed (совпадает с подтверждением) |
422 |
| Совпадение текущего пароля | сверяется с сохранённым хешем через Hash::check |
422 «Текущий пароль не совпадает.» |
Несовпадение нового пароля и его подтверждения перехватывается сначала в браузере и показывается сразу («Новые пароли не совпадают.»), ещё до того как что-либо уйдёт на сервер.
Источники данных
- Данные учётной записи читаются из унаследованной таблицы
users(login_id · name · email · hp · lang · user_level · role_id · team_id · last_log) и ограничены вашей собственной записью черезinfr_user_idиз сессии. - Отображаемые подписи, инициалы и цвета берутся из
App\Support\RolePolicy(уровень→подпись/тон, подпись роли, инициалы/оттенок аватара). - Подпись роли приходит из
infr_role, а название команды — изinfr_team. - Смена пароля обновляет
users.passwordтекущим стандартным хешем и записывает одну строку в журнал аудитаinfr_audit_logсaction = profile.passwordиtarget_type = user(см. Журнал аудита).
Доступ
- Просмотр
/me· смена через/me/password: любой вошедший пользователь (Демо 1 · Сотрудник 5 · Администратор 10 одинаково). Поскольку эта страница всегда работает только с вашей собственной учётной записью, отдельного ограничения по уровню нет. - Если сессия отсутствует или истекла, представление перенаправляет на
/login, а запрос на смену возвращает 401. - Уровень · роль · команду здесь изменить нельзя. Создание других учётных записей и изменение уровней выполняет администратор (уровень 10) в разделе Пользователи и команды.
Устранение неполадок и FAQ
В. Появляется «Текущий пароль не совпадает.» Ещё раз проверьте, что вы ввели текущий пароль в точности, и используйте тот же пароль, с которым вы входите.
В. Какова минимальная длина? Сервер принимает от 4 до 120 символов. Политикой рекомендуется более стойкий пароль.
В. Нужно ли входить заново после смены? Нет. Ваша сессия сохраняется, поэтому вас не разлогинивают.
В. Я хочу изменить свою почту, телефон или имя. Здесь их изменить нельзя. Попросите администратора отредактировать их в разделе Пользователи и команды.
В. Как изменить язык интерфейса? Язык переключается в переключателе языка в шапке — см. Локализация и язык.
Смежные темы
- Вход и аутентификация — узнать больше об аутентификации в консоли и политике сеансов.
- Уровни и права — что означают Демо 1 · Сотрудник 5 · Администратор 10.
- Пользователи и команды — где администратор назначает уровень · роль · команду.
- Навигация — как попасть на эту страницу из выпадающего меню пользователя в шапке.
- Журнал аудита — смена пароля записывается как
profile.password.
