> For the complete documentation index, see [llms.txt](https://docs.chamilo.org/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.chamilo.org/2.x/el/odigos-diaxeirisis/admin-guide/authentication/scim.md).

# SCIM

**SCIM** (System for Cross-domain Identity Management) αυτοματοποιεί την προμήθεια χρηστών — δημιουργία, ενημέρωση και απενεργοποίηση λογαριασμών Chamilo βάσει αλλαγών στον πάροχο ταυτότητας σας. Σε αντίθεση με το OAuth2 ή το LDAP, το SCIM χειρίζεται την προμήθεια, όχι την είσοδο.

| Σενάριο                                   | Δράση SCIM                                       |
| ----------------------------------------- | ------------------------------------------------ |
| Ένας νέος υπάλληλος προσλαμβάνεται        | Δημιουργεί λογαριασμό Chamilo                    |
| Το όνομα ή ο ρόλος ενός υπαλλήλου αλλάζει | Ενημερώνει τον λογαριασμό Chamilo                |
| Ένας υπάλληλος φεύγει                     | Απενεργοποιεί ή διαγράφει τον λογαριασμό Chamilo |

## Ρύθμιση

### 1. Ορισμός του διακριτικού SCIM

Στο αρχείο `.env` (ή `.env.local`) σας, ορίστε ένα ασφαλές τυχαίο διακριτικό:

```
SCIM_TOKEN=your-secure-random-token
```

Αυτό το διακριτικό χρησιμοποιείται από τον πάροχο ταυτότητας σας για την ταυτοποίηση των αιτημάτων του στους τερματικούς σημείους SCIM του Chamilo.

### 2. Ενεργοποίηση SCIM στο authentication.yaml

```yaml
authentication:
  1:
    scim:
      main:
        enabled: true
        auth_source: platform
```

Καθαρίστε και θερμάνετε την προσωρινή μνήμη μετά την επεξεργασία:

```bash
php bin/console cache:clear && php bin/console cache:warmup
```

### 3. Ρύθμιση του παρόχου ταυτότητας σας

Στον πάροχο ταυτότητας σας (Azure AD, Okta κ.λπ.):

1. Προσθέστε το Chamilo ως εφαρμογή SCIM
2. Ορίστε το βασικό URL SCIM σε `https://your-chamilo-url/scim/v2/`
3. Εισαγάγετε το διακριτικό από το βήμα 1 ως bearer token
4. Χαρτογραφήστε τα χαρακτηριστικά του παρόχου στα τυπικά πεδία SCIM (userName, name.givenName, name.familyName, emails)
5. Ενεργοποιήστε την αυτόματη προμήθεια

## Τερματικοί σημείοι SCIM

Το Chamilo υλοποιεί το SCIM 2.0:

| Τερματικός σημείος    | Μέθοδος | Δράση                |
| --------------------- | ------- | -------------------- |
| `/scim/v2/Users`      | GET     | Λίστα χρηστών        |
| `/scim/v2/Users`      | POST    | Δημιουργία χρήστη    |
| `/scim/v2/Users/{id}` | GET     | Λήψη χρήστη          |
| `/scim/v2/Users/{id}` | PUT     | Αντικατάσταση χρήστη |
| `/scim/v2/Users/{id}` | PATCH   | Ενημέρωση χρήστη     |
| `/scim/v2/Users/{id}` | DELETE  | Αφαίρεση χρήστη      |

## Συμβουλές

* **Ξεκινήστε με ομάδα δοκιμών** — προμηθεύστε ένα μικρό σύνολο χρηστών πριν ενεργοποιήσετε το SCIM για ολόκληρη την οργάνωση.
* **Συνδυάστε με OAuth2** — μια συνηθισμένη ρύθμιση χρησιμοποιεί Azure AD OAuth2 για είσοδο και Azure AD SCIM για προμήθεια.
* **Παρακολουθήστε τα αρχεία καταγραφής** — ελέγξτε τόσο τα αρχεία καταγραφής του Chamilo (`var/log/`) όσο και τα αρχεία καταγραφής προμήθειας του παρόχου ταυτότητας σας για σφάλματα.
