> ## Documentation Index
> Fetch the complete documentation index at: https://docs.devin.ai/llms.txt
> Use this file to discover all available pages before exploring further.

# Leitfaden für das SSO-Onboarding

> Umfassender Leitfaden zum Einrichten von SSO, zu SCIM-Besonderheiten und zur Konfiguration von IDP-Gruppen mit Devin Enterprise.

Dieser Leitfaden führt Enterprise-Administratoren durch den gesamten SSO-Lifecycle mit Devin — von der Ersteinrichtung bis zur Konfiguration von IDP-Gruppen — und erläutert, wie Devin die Nutzerbereitstellung ohne SCIM handhabt.

Anbieterspezifische Anleitungen zur Einrichtung finden Sie unter [Okta](/de/enterprise/security-access/sso/okta), [Microsoft Entra ID](/de/enterprise/security-access/sso/azure), [SAML](/de/enterprise/security-access/sso/saml) oder [Generic OIDC](/de/enterprise/security-access/sso/oidc).

***

<div id="1-setting-up-sso">
  ## 1. SSO (Single Sign-On) einrichten
</div>

<div id="creating-your-sso-application">
  ### Erstellen Ihrer SSO-Anwendung
</div>

Erstellen Sie eine Anwendung in Ihrem Identity Provider (Okta, Microsoft Entra ID oder einem beliebigen SAML-/OIDC-kompatiblen IdP) und teilen Sie Ihrem Cognition-Team die folgenden Anmeldedaten mit:

| Verbindungstyp         | Protokoll                      | Bereitzustellende Angaben                                 |
| :--------------------- | :----------------------------- | :-------------------------------------------------------- |
| **Okta**               | OIDC (Okta Workforce Identity) | Okta-Domain, Client ID, Client Secret, Geltungsbereiche   |
| **Microsoft Entra ID** | OIDC (Microsoft Entra ID)      | Microsoft Entra ID-Domain, Client ID, Client Secret       |
| **SAML**               | SAML 2.0 (beliebiger IdP)      | Anmelde-URL, X.509-Signaturzertifikat                     |
| **Generic OIDC**       | OIDC                           | Discovery-URL, Client ID, Client Secret, Geltungsbereiche |

<Note>
  Geben Sie außerdem Ihre verifizierten E-Mail-Domänen an, damit Devin weiß, welchen E-Mail-Adressen aus Ihrem IdP vertraut werden kann.
</Note>

<div id="what-happens-after-setup">
  ### Was nach der Einrichtung passiert
</div>

Sobald Ihr Cognition-Team über die Zugangsdaten verfügt, konfiguriert es die SSO-Verbindung. Nachdem die Einrichtung abgeschlossen ist:

1. Die SSO-Verbindung wird mit Ihrem Devin Enterprise verknüpft
2. **Automatische Mitgliedschaft bei der Anmeldung** ist aktiviert — jeder Nutzer, der sich über SSO authentifiziert, wird automatisch zu Ihrem Enterprise hinzugefügt
3. Ihre E-Mail-Domain(s) werden als vertrauenswürdig registriert — nur E-Mail-Adressen aus diesen Domains werden akzeptiert
4. **Gruppenbasierte Rollenzuweisung (RBAC)** ist aktiviert — IdP-Gruppen, die bei der Anmeldung übermittelt werden, können Devin-Rollen zugeordnet werden
5. Standardmäßige Social Logins (Google, GitHub) sind deaktiviert — SSO wird zur verpflichtenden Authentifizierungsmethode

<div id="the-user-login-experience">
  ### Das Anmeldeerlebnis für Nutzer
</div>

1. Der Nutzer ruft Ihre Devin-URL auf
2. Wird an den konfigurierten IdP (Okta, Microsoft Entra ID usw.) weitergeleitet
3. Der Nutzer authentifiziert sich wie gewohnt
4. Der IdP sendet Nutzerinformationen und Gruppenzugehörigkeiten an Devin
5. Devin übernimmt automatisch Folgendes:
   * Erstellt das Konto des Nutzers, wenn es sich um die erste Anmeldung handelt (Just-in-Time-Provisionierung)
   * Weist ihm die Standardrolle „Enterprise Member“ zu
   * Synchronisiert die IdP-Gruppenzugehörigkeiten — fügt neue Gruppen hinzu und entfernt veraltete Gruppen
   * Protokolliert die Anmeldung im Enterprise-Audit-Log

***

<div id="self-service-administration">
  ## Self-Service-Administration
</div>

Die folgenden Funktionen stehen Unternehmensadministratoren direkt in der Devin-Webapp zur Verfügung.

<div id="idp-group-management">
  ### Verwaltung von IdP-Gruppen
</div>

**Settings → Enterprise → Identity Provider Groups**

* Alle Gruppen anzeigen, die über Nutzeranmeldungen synchronisiert wurden
* Einer Gruppe eine Rolle auf Enterprise-Ebene zuweisen (z. B. „Jeder in `Engineering-Admins` erhält die Rolle Enterprise Admin“)
* Einer Gruppe bestimmte Orgs mit bestimmten Rollen zuweisen (z. B. „`Team-Backend` erhält Member-Zugriff in der Backend-Org“)
* Gruppen org-übergreifend in mehreren Orgs gesammelt hinzufügen/entfernen
* Anzeigen, wie vielen Orgs jede Gruppe zugewiesen ist

<div id="member-management">
  ### Mitgliederverwaltung
</div>

**Settings → Enterprise → Mitglieder**

* Alle Enterprise-Mitglieder anzeigen, einschließlich ihrer IdP-Gruppenzugehörigkeiten
* Neue Mitglieder per E-Mail einladen
* Rollen von Mitgliedern aktualisieren
* Mitglieder entfernen

<div id="custom-roles">
  ### Benutzerdefinierte Rollen
</div>

**Settings → Enterprise → Rollen**

* Erstellen Sie benutzerdefinierte Rollen mit feingranularen Berechtigungen
* Weisen Sie benutzerdefinierte Rollen einzelnen Nutzern oder IDP-Gruppen zu

Weitere Informationen finden Sie unter [Custom Roles & RBAC](/de/enterprise/security-access/custom-roles).

<div id="api-for-automation">
  ### API zur Automatisierung
</div>

Devin stellt eine V2-API bereit, mit der Sie die Mitgliederverwaltung automatisieren können:

| Aktion                                             | API-Endpunkt                                 |
| :------------------------------------------------- | :------------------------------------------- |
| Alle Mitglieder auflisten                          | `GET /v2/enterprise/members`                 |
| Nutzer per E-Mail gesammelt einladen               | `POST /v2/enterprise/members/invite`         |
| Ein Mitglied entfernen                             | `DELETE /v2/enterprise/members/{user_id}`    |
| Rollen mehrerer Mitglieder gesammelt aktualisieren | `PATCH /v2/enterprise/members/roles`         |
| Mitglieder zwischen Rollen migrieren               | `PATCH /v2/enterprise/members/migrate-roles` |
| Alle Rollen auflisten                              | `GET /v2/enterprise/roles`                   |
| Alle IdP-Gruppen auflisten                         | `GET /v2/enterprise/groups`                  |
| IdP-Gruppen vorab erstellen                        | `PUT /v2/enterprise/groups`                  |
| Org-Zuweisungen einer Gruppe abrufen               | `GET /v2/enterprise/groups/{group_name}`     |

***

<div id="2-understanding-devin-without-scim">
  ## 2. Devin ohne SCIM
</div>

Devin unterstützt das SCIM-Protokoll derzeit nicht. Die gesamte Nutzer- und Gruppenverwaltung erfolgt über SSO-Anmeldungen sowie über die Devin-UI/API. Das bedeutet in der Praxis Folgendes.

<div id="user-provisioning-login-triggered-only">
  ### Nutzerbereitstellung: Nur beim Login ausgelöst
</div>

|                                | Mit SCIM                                                                            | Devin (ohne SCIM)                                                                                                              |
| :----------------------------- | :---------------------------------------------------------------------------------- | :----------------------------------------------------------------------------------------------------------------------------- |
| **Wie Nutzer angelegt werden** | Der IdP legt den Nutzer in der App sofort an, sobald er ihm zugewiesen wird         | Der Nutzer existiert in Devin erst nach seiner ersten SSO-Anmeldung — oder nach einer manuellen Einladung über die UI oder API |
| **Wann es passiert**           | Admin weist dem Nutzer die App zu → der Nutzer erscheint innerhalb weniger Sekunden | Admin weist dem Nutzer die App zu → in Devin passiert nichts, bis er sich anmeldet                                             |
| **Vorabbereitstellung**        | Das Nutzerkonto ist bereit, bevor der Nutzer die App überhaupt besucht              | Keine Vorabbereitstellung, es sei denn, der Admin lädt den Nutzer ausdrücklich über die Devin UI oder API ein                  |

Beim Onboarding neuer Mitarbeiter kann der Admin sie entweder im Voraus einladen (**Settings → Enterprise → Members → Invite** oder über die API) oder sie einfach bei der ersten Anmeldung automatisch anlegen lassen.

<div id="user-deprovisioning-manual-only">
  ### Benutzer-Deprovisionierung: nur manuell
</div>

|                                | Mit SCIM                                                                     | Devin (ohne SCIM)                                                                                                     |
| :----------------------------- | :--------------------------------------------------------------------------- | :-------------------------------------------------------------------------------------------------------------------- |
| **Wie Nutzer entfernt werden** | IdP deaktiviert/entfernt Nutzer → die App deaktiviert den Nutzer sofort      | Das Deaktivieren/Entfernen eines Nutzers im IdP hat in Devin keine Wirkung                                            |
| **Offboarding**                | Ausgeschiedene Mitarbeitende verlieren innerhalb weniger Minuten den Zugriff | Ausgeschiedene Mitarbeitende behalten den Zugriff, bis sie manuell aus Devin entfernt werden und ihre Sitzung abläuft |
| **Compliance**                 | Automatisierte Compliance — keine verwaisten Konten                          | Risiko verwaister Konten, wenn der Admin nicht beide Systeme pflegt                                                   |

<Warning>
  Dies ist die größte operative Lücke. Beim Offboarding eines Mitarbeitenden muss der Admin die Person zusätzlich aus Devin entfernen (**Settings → Enterprise → Members → Remove** oder über die API). Aktive Sitzungen laufen weiter, bis sie von selbst ablaufen — es gibt keinen sofortigen Sitzungsentzug, der durch den IdP ausgelöst wird.
</Warning>

<div id="group-sync-login-time-only-not-real-time">
  ### Gruppensynchronisierung: Nur bei der Anmeldung, nicht in Echtzeit
</div>

|                                    | Mit SCIM (Group Push)                                                   | Devin (ohne SCIM)                                                                                                    |
| :--------------------------------- | :---------------------------------------------------------------------- | :------------------------------------------------------------------------------------------------------------------- |
| **Zeitpunkt der Synchronisierung** | Der IdP überträgt Änderungen an Gruppenmitgliedschaften in Echtzeit     | Gruppen werden nur synchronisiert, wenn sich der Nutzer anmeldet                                                     |
| **Zu einer Gruppe hinzufügen**     | Admin fügt Nutzer zu einer Gruppe hinzu → die App übernimmt dies sofort | Admin fügt Nutzer zu einer Gruppe hinzu → Devin erkennt dies erst bei der nächsten Anmeldung des Nutzers             |
| **Aus einer Gruppe entfernen**     | Admin entfernt Nutzer aus einer Gruppe → die App übernimmt dies sofort  | Admin entfernt Nutzer aus einer Gruppe → Devin zeigt bis zur nächsten Anmeldung weiterhin die alte Mitgliedschaft an |
| **Maßgebliche Quelle**             | Der IdP ist immer die maßgebliche Quelle                                | Der IdP ist nur bei der Anmeldung die maßgebliche Quelle — zwischen Anmeldungen können Abweichungen entstehen        |

Wenn ein Admin die IDP-Gruppe einer Person ändert (z. B. indem sie von Engineering zu Sales verschoben wird), übernimmt Devin diese Änderung erst, wenn sich der Nutzer erneut anmeldet. Bis dahin behält der Nutzer seine bisherigen gruppenbasierten Rollen und den Org-Zugriff.

<div id="built-in-alternatives-to-scim">
  ### Integrierte Alternativen zu SCIM
</div>

Devin bietet mehrere Funktionen, die gängige SCIM-Anwendungsfälle abdecken:

1. **Just-in-Time-Provisionierung** — Nutzer werden bei der ersten SSO-Anmeldung automatisch mit der Standard-Enterprise-Rolle erstellt
2. **Vollständige Gruppensynchronisierung bei jeder Anmeldung** — bei jeder Anmeldung führt Devin einen vollständigen Abgleich der IdP-Gruppen eines Nutzers durch: neue Gruppen werden hinzugefügt, alte entfernt
3. **Gruppenbasiertes RBAC** — Sie können IdP-Gruppen in den Devin Settings Enterprise-Rollen und dem Org-Zugriff zuordnen; wirksam ab der nächsten Anmeldung
4. **V2-API für Automatisierung** — Einladungen, Entfernungen und Rollenänderungen in großem Umfang lassen sich skripten, um die Lücke bei der Provisionierung und Deprovisionierung zu schließen
5. **Audit-Logs** — jede Anmeldung wird protokolliert, sodass nachvollziehbar ist, wer auf Devin zugegriffen hat

***

<div id="3-configuring-idp-managed-groups">
  ## 3. Konfiguration von durch den IdP verwalteten Gruppen
</div>

Wenn Sie SCIM mit anderen Anwendungen (z. B. Slack, Box) verwenden, wird in diesem Abschnitt erläutert, wie das Gruppenmodell von Devin funktioniert und wie Sie Ihren IdP korrekt konfigurieren.

<div id="context-scim-groups-vs-idp-groups">
  ### Kontext: SCIM-Gruppen vs. IdP-Gruppen
</div>

* **SCIM-Gruppen:** Die nachgelagerte Anwendung teilt dem IdP mit, welche Gruppen es gibt (der IdP „importiert“ sie). Die Anwendung ist die maßgebliche Quelle für die Gruppenstruktur. Der IdP synchronisiert Nutzer in diese von der Anwendung definierten Gruppen.
* **IdP-Gruppen (wie von Devin verwendet):** Der IdP ist die maßgebliche Quelle. Gruppen werden im Verzeichnis des IdP definiert, und Gruppenmitgliedschaften werden beim Anmelden über SAML/OIDC-Claims an Devin übermittelt.

Da Devin SCIM nicht verwendet, arbeiten Sie bereits im Modus „IdP-Gruppen“. Entscheidend ist, dass die richtigen Gruppen von Ihrem IdP gesendet und in Devin korrekt zugeordnet werden.

<div id="step-1-define-groups-in-the-idp">
  ### Schritt 1: Groups im IdP definieren
</div>

In der Admin-Konsole Ihres IdP (in den folgenden Beispielen wird Okta verwendet):

1. Gehen Sie zu **Directory → Groups**
2. Erstellen Sie Gruppen, die den Devin-Zugriffsstufen entsprechen (z. B. `Devin-Engineering`, `Devin-Admins`, `Devin-DataScience`)
3. Weisen Sie Nutzer diesen Gruppen zu

Dies sind nativ im IdP verwaltete Gruppen — Ihr IdP ist die maßgebliche Quelle dafür, wer welcher Gruppe angehört.

<div id="step-2-configure-group-claims-in-the-idp-app">
  ### Schritt 2: Gruppen-Claims in der IdP-App konfigurieren
</div>

Die Gruppen müssen in der Authentifizierungsantwort enthalten sein, damit Devin sie lesen kann.

<div id="for-saml-connections">
  #### Für SAML-Verbindungen
</div>

1. Gehen Sie zu **Applications → \[Devin App] → SAML Settings → Edit**
2. Fügen Sie unter **Group Attribute Statements** Folgendes hinzu:
   * **Name:** `groups`
   * **Filter:** „Beginnt mit“ → `Devin-` (oder verwenden Sie „Entspricht Regex“ für komplexere Muster)
3. Damit wird der IdP angewiesen, passende Gruppennamen in die SAML-Assertion aufzunehmen

<div id="for-oidc-connections">
  #### Für OIDC-Verbindungen
</div>

1. Gehen Sie zu **Applications → \[Devin App] → Sign On → Edit**
2. Wählen Sie unter **OpenID Connect ID Token → Groups claim type** „Filter“ aus
3. Stellen Sie den Filter so ein, dass Devin-Gruppen erfasst werden (z. B. „Starts with“ → `Devin-`)

<Tip>
  Verwenden Sie ein Filterpräfix wie `Devin-`, damit nur relevante Gruppen gesendet werden. Es ist nicht erforderlich, jede IDP-Gruppe in der Organisation zu senden.
</Tip>

<div id="step-3-map-groups-to-roles-and-orgs-in-devin">
  ### Schritt 3: Gruppen in Devin Rollen und Orgs zuordnen
</div>

Sobald die Gruppen bei der Anmeldung übermittelt werden, ordnen Sie sie in Devin Rollen und Orgs zu.

<div id="in-the-devin-ui">
  #### In der Devin-UI
</div>

1. **Settings → Enterprise → Identity Provider Groups**
2. Gruppen werden automatisch angezeigt, sobald sich ein Mitglied dieser Gruppe anmeldet
3. Klicken Sie auf eine Gruppe → weisen Sie ihr eine Rolle auf Enterprise-Ebene zu (z. B. Enterprise Admin oder eine benutzerdefinierte Rolle)
4. Klicken Sie auf eine Gruppe → weisen Sie sie bestimmten Orgs mit bestimmten Rollen auf Org-Ebene zu

<div id="via-the-api-for-pre-setup-or-automation">
  #### Über die API (für die Vorab-Einrichtung oder Automatisierung)
</div>

* Gruppen vorab erstellen, bevor sich jemand anmeldet: `PUT /v2/enterprise/groups`
* Gruppen und ihre Org-Zuweisungen auflisten: `GET /v2/enterprise/groups`

<div id="step-4-if-migrating-from-scim-groups-in-other-apps">
  ### Schritt 4: Wenn Sie von SCIM-Gruppen in anderen Apps migrieren
</div>

Wenn Sie Ihre allgemeine IdP-Strategie in Ihrer gesamten Tool-Landschaft von SCIM-verwalteten Gruppen auf IdP-verwaltete Gruppen umstellen (nicht nur in Devin):

1. **SCIM-Gruppenimport** in den anderen Apps beenden:
   * Im IdP: Wechseln Sie zur Registerkarte **Provisioning → Integration** der App → deaktivieren Sie „Import Groups“
   * Dadurch ist die nachgelagerte App nicht länger die maßgebliche Quelle für Gruppen
2. **Entsprechende Gruppen** im IdP-Verzeichnis erstellen:
   * Gehen Sie zu **Directory → Groups** und erstellen Sie Gruppen, die den bereits in der nachgelagerten App vorhandenen Gruppen entsprechen
   * Weisen Sie Nutzer diesen IdP-eigenen Gruppen zu
3. **Group Push konfigurieren** (für Apps, die dies unterstützen):
   * In der IdP-Konfiguration der App: Registerkarte **Push Groups** → Gruppen nach Namen suchen → mit vorhandenen nachgelagerten Gruppen verknüpfen
   * Dadurch überschreibt der IdP die app-interne Mitgliedschaft — der IdP wird zur einzigen maßgeblichen Quelle
   * Devin benötigt keinen Group Push, da es Gruppen direkt aus der Anmelde-Assertion ausliest
4. **SCIM-Gruppensynchronisierung** in den anderen Apps deaktivieren:
   * Stellen Sie sicher, dass „Import Groups“ deaktiviert bleibt, damit die nachgelagerte App nicht erneut beansprucht, die maßgebliche Quelle zu sein

Für Devin selbst ist keine Migration erforderlich. Stellen Sie einfach sicher, dass die Schritte 1–3 oben durchgeführt wurden (Gruppen in Ihrem IdP definiert, Claims konfiguriert, Zuordnungen in Devin festgelegt).

***

<div id="key-considerations">
  ## Wichtige Hinweise
</div>

<AccordionGroup>
  <Accordion title="Gruppenumbenennungen im IdP">
    Wenn eine Gruppe umbenannt wird, behandelt Devin sie als neue Gruppe. Die Rollenzuordnungen der alten Gruppe werden nicht automatisch übernommen — Sie müssen den neuen Gruppennamen in den Settings von Devin erneut konfigurieren.
  </Accordion>

  <Accordion title="Das Hinzufügen zu einer Gruppe gewährt nicht sofort Zugriff auf Devin">
    Ein Nutzer, der zu einer Devin-zugeordneten IDP-Gruppe hinzugefügt wird, erhält diesen Zugriff erst nach der Anmeldung.
  </Accordion>

  <Accordion title="Das Entfernen aus einer Gruppe entfernt Nutzer nicht sofort aus Devin">
    Wenn ein Nutzer aus einer IDP-Gruppe entfernt wird, wird sein Zugriff auf Devin nicht sofort entzogen. Bei der nächsten Anmeldung synchronisiert Devin die Änderungen und entfernt die veraltete Gruppenzugehörigkeit. Eine direkte Mitgliedschaft (die außerhalb von Gruppen zugewiesen wurde) bleibt davon unberührt.
  </Accordion>

  <Accordion title="Gruppennamen müssen exakt übereinstimmen">
    Der Gruppenname im IdP muss exakt mit dem übereinstimmen, was Devin sieht. Groß- und Kleinschreibung werden beachtet.
  </Accordion>

  <Accordion title="Keine verschachtelten Gruppen">
    Devin unterstützt keine verschachtelten bzw. hierarchischen Gruppen. Wenn der IdP eine übergeordnete Gruppe sendet, werden Mitglieder untergeordneter Gruppen nicht automatisch einbezogen. Jede Gruppe muss ausdrücklich zugewiesen werden.
  </Accordion>
</AccordionGroup>

***

<div id="recommended-setup-for-scim-like-behavior">
  ## Empfohlenes Setup für „SCIM-ähnliches“ Verhalten
</div>

Für die engstmögliche Kontrolle ohne SCIM folgen Sie diesem Ansatz:

<Steps>
  <Step title="Konfigurieren Sie Ihren Identity Provider (maßgebliche Quelle)">
    1. Definieren Sie Gruppen: `Devin-Admins`, `Devin-Backend`, `Devin-Frontend` usw.
    2. Weisen Sie Nutzer Gruppen zu
    3. Konfigurieren Sie SAML-/OIDC-Gruppen-Claims, gefiltert nach „Beginnt mit: `Devin-`“
  </Step>

  <Step title="Devin synchronisiert bei jeder Anmeldung">
    Wenn sich ein Nutzer per SSO anmeldet, tut Devin automatisch Folgendes:

    * Erstellt den Nutzer automatisch, wenn er neu ist
    * Führt eine vollständige Gruppensynchronisierung durch (fügt neue Gruppen hinzu und entfernt veraltete)
    * Wendet Gruppen-zu-Rollen- und Gruppen-zu-Org-Zuordnungen sofort an
  </Step>

  <Step title="Optional: Mit der V2-API automatisieren">
    Richten Sie einen geplanten Job ein, um SCIM-Lücken zu schließen:

    1. Rufen Sie aktive Nutzer über Ihre IdP-API ab
    2. Rufen Sie Devin-Mitglieder über `GET /v2/enterprise/members` ab
    3. Laden Sie neue Mitarbeiter über `POST /v2/enterprise/members/invite` ein
    4. Entfernen Sie ausgeschiedene Mitarbeiter über `DELETE /v2/enterprise/members/{user_id}`

    So erhalten Sie eine Push-basierte Provisionierung und Deprovisionierung ohne SCIM.
  </Step>
</Steps>

<div id="what-this-gives-you">
  ### Was Ihnen das bietet
</div>

* Ihr IdP als maßgebliche Quelle für Gruppenstruktur und Mitgliedschaften
* Automatischer gruppenbasierter Zugriff bei jeder Anmeldung
* API-gesteuerte Bereitstellung/Deprovisionierung, um die Lücke zu schließen, die SCIM normalerweise abdecken würde
* Vollständiger Audit-Trail für alle Anmeldungen und Änderungen an Mitgliedschaften

<div id="current-limitations">
  ### Aktuelle Einschränkungen
</div>

* **Echtzeit-Synchronisierung von Gruppen zwischen Anmeldungen** — Gruppen werden nur aktualisiert, wenn Nutzer sich anmelden
* **Sofortige Sitzungsbeendigung bei der Deprovisionierung** — Sitzungen bleiben aktiv, bis sie ablaufen
* **Vom IdP ausgelöste Lifecycle-Ereignisse** wie Suspend/Reactivate werden nicht unterstützt
