> For the complete documentation index, see [llms.txt](https://ayakaleaf-pro.ayaka.space/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://ayakaleaf-pro.ayaka.space/on-premises/el/diaxeirisi-xriston-kai-ergon/user-management/username-migration.md).

# Μετεγκατάσταση ονόματος χρήστη

## Μετανάστευση ονομάτων χρήστη

Από την οπτική γωνία της σύνδεσης, το κύριο αναγνωριστικό για έναν χρήστη είναι η διεύθυνση email του. Εάν μεταβαίνετε από τοπική πιστοποίηση ταυτότητας σε SSO ή εάν μεταβαίνετε από έναν IdP σε έναν άλλο, ενδέχεται να απαιτηθεί να ενημερώσετε τις διευθύνσεις email των χρηστών.

Για να βοηθήσει σε αυτό, παρέχεται ένα script που θα μεταφέρει τα email των χρηστών χρησιμοποιώντας ένα αρχείο CSV με την ακόλουθη μορφή:

`oldEmail,newEmail`

Αφού πραγματοποιήσει κάποιους ελέγχους επικύρωσης, το script θα διατρέξει το αρχείο CSV και θα ενημερώσει τις διευθύνσεις email των χρηστών από `oldEmail` σε `newEmail`.

### **Επικύρωση**

Πριν εκτελέσετε τη μετανάστευση το `<csv_file>` θα ελεγχθεί για να διασφαλιστεί ότι:

* Για κάθε γραμμή, τόσο το `oldEmail` και το `newEmail` είναι έγκυρες διευθύνσεις email
* Δεν υπάρχουν διπλότυπες εγγραφές, για παράδειγμα, δεν επιχειρείτε να ενημερώσετε διαφορετικούς χρήστες στην ίδια νέα διεύθυνση email ή επιχειρείτε να ενημερώσετε τον ίδιο λογαριασμό χρήστη με μια διεύθυνση email που έχει ήδη χρησιμοποιηθεί

### **Χρήση** <a href="#usage" id="usage"></a>

{% code overflow="wrap" %}

```bash
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>"
```

{% endcode %}

### **Επιλογές** <a href="#flags" id="flags"></a>

| Όνομα              | Περιγραφή                                                                                                                                                                                                                                                                                                                     |
| ------------------ | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `--commit`         | <p>Η συμπερίληψη της σημαίας <code>--commit</code> θα εκτελέσει πραγματικά τη μετανάστευση. Όταν παραλείπεται, η μετανάστευση θα γίνει σε λειτουργία δοκιμαστικής εκτέλεσης, όπου δεν γίνονται αλλαγές, αλλά η επικύρωση εξακολουθεί να εκτελείται.<br><br><strong>Προεπιλογή</strong>:<code>false</code></p>                 |
| `--continue`       | Το `--continue` η σημαία θα συνεχίσει τη διαδικασία μετανάστευσης εάν ένας λογαριασμός χρήστη έχει ήδη ενημερωθεί η διεύθυνση email του λογαριασμού                                                                                                                                                                           |
| `--ignore-missing` | Το `--ignore-missing` η σημαία θα συνεχίσει τη διαδικασία μετανάστευσης εάν δεν βρέθηκε λογαριασμός χρήστη                                                                                                                                                                                                                    |
| `--admin-id`       | Το `--admin-id` θα πρέπει να οριστεί στο ID του Διαχειριστή που εκτελεί τη μετανάστευση και θα χρησιμοποιηθεί για καταχωρήσεις στο αρχείο καταγραφής ελέγχου. Μεταβείτε στο **Διαχειριστής** > **Διαχείριση χρηστών** και αναζητήστε τη διεύθυνση email σας και κάντε κλικ στο πρώτο αποτέλεσμα για να βρείτε το user-id σας. |
| `<csv_file>`       | Το `<csv_file>` είναι το αρχείο με τις παλιές και νέες διευθύνσεις email σε                                                                                                                                                                                                                                                   |

### **Ολοκλήρωση** <a href="#completion" id="completion"></a>

Κατά την εκτέλεση του script μετανάστευσης, ανάλογα με τις σημαίες που έχετε επιλέξει, θα καθοριστεί αν θα καταγραφεί ένα σφάλμα στην κονσόλα και θα συνεχίσει, ή αν θα καταγραφεί στην κονσόλα και θα τερματίσει. Εάν το script τερματιστεί πρόωρα λόγω σφάλματος, θα επιστρέψει με κωδικό 1 για να δηλώσει ότι δεν ήταν επιτυχές.

Με την ολοκλήρωση της μετανάστευσης, το script θα καταγράψει στην κονσόλα τον αριθμό των επιτυχημένων, αποτυχημένων και παραλειφθέντων ενημερώσεων. Εάν η μετανάστευση ολοκληρωθεί με επιτυχία, θα επιστρέψει με κωδικό 0.


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter, and the optional `goal` query parameter:

```
GET https://ayakaleaf-pro.ayaka.space/on-premises/el/diaxeirisi-xriston-kai-ergon/user-management/username-migration.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
