> ## Documentation Index
> Fetch the complete documentation index at: https://ayakaleaf-pro.mintlify.site/llms.txt
> Use this file to discover all available pages before exploring further.

# Миграция имён пользователей

## Миграция имён пользователей

С точки зрения входа в систему основным идентификатором пользователя является его адрес электронной почты. Если вы переходите с локальной аутентификации на SSO или с одного IdP на другой, может потребоваться обновить адреса электронной почты пользователей.

Для этого предусмотрен скрипт, который переносит адреса электронной почты пользователей с помощью CSV-файла следующего формата:

`oldEmail,newEmail`

После выполнения ряда проверок скрипт пройдёт по CSV-файлу и обновит адреса электронной почты пользователей с `oldEmail` на `newEmail`.

### **Проверка**

Перед запуском миграции `<csv_file>` проверяется на то, что:

* В каждой строке и `oldEmail`, и `newEmail` являются допустимыми адресами электронной почты
* Нет повторяющихся записей, например вы не пытаетесь присвоить разным пользователям один и тот же новый адрес электронной почты или присвоить учётной записи пользователя уже используемый адрес электронной почты

### **Использование**

```bash wrap theme={null}
docker cp <csv_file> sharelatex:/overleaf/services/web/<csv_file> docker exec sharelatex /bin/bash -c "cd /overleaf/services/web;node ./modules/server-ce-scripts/scripts/migrate-user-emails.js [--commit] [--continue|--ignore-missing] [--admin-id=ADMIN_USER_ID] <csv_file>"
```

### **Флаги**

| Имя | Описание |
| - | - |
| `--commit` | <p>Флаг `--commit` фактически выполняет миграцию. Если он не указан, миграция выполняется в пробном режиме (dry run): изменения не вносятся, но проверка всё равно выполняется.<br /><br /><strong>По умолчанию</strong>:`false`</p> |
| `--continue` | Флаг `--continue` продолжает процесс миграции, если адрес электронной почты учётной записи пользователя уже был обновлён |
| `--ignore-missing` | Флаг `--ignore-missing` продолжает процесс миграции, если учётная запись пользователя не найдена |
| `--admin-id` | В `--admin-id` следует указать идентификатор администратора, выполняющего миграцию; он будет использоваться в записях журнала аудита. Чтобы узнать свой user-id, перейдите в **Admin** > **Manage Users**, найдите свой адрес электронной почты и нажмите на первый результат. |
| `<csv_file>` | `<csv_file>` — файл со старыми и новыми адресами электронной почты |

### **Завершение**

Во время выполнения скрипта миграции от выбранных флагов зависит, будет ли ошибка выведена в консоль с продолжением работы или выведена в консоль с завершением работы. Если скрипт преждевременно завершается из-за ошибки, он возвращает код выхода 1, указывающий на неудачу.

По завершении миграции скрипт выводит в консоль количество успешных, неудачных и пропущенных обновлений. Если миграция завершилась успешно, скрипт возвращает код выхода 0.


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.