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

# SSO & SCIM einrichten

> Richten Sie SSO (Single Sign-On, Einmalanmeldung) und SCIM-Bereitstellung für Ihre Organisation mit Google Workspace, Microsoft Azure AD, Okta oder anderen SAML-Identitätsanbietern ein.

Diese Funktion ist nur für Benutzer von Teams und Enterprise verfügbar.

<Tabs>
  <Tab title="Google SSO">
    Windsurf unterstützt jetzt die Anmeldung per Single Sign-On (SSO) über SAML. Wenn Ihre Organisation Microsoft Entra, Okta, Google Workspace oder einen anderen Identitätsanbieter verwendet, der SAML unterstützt, können Sie SSO mit Windsurf nutzen.

    <Note>Windsurf unterstützt nur SP-initiiertes SSO; IdP-initiiertes SSO wird derzeit NICHT unterstützt.</Note>

    ### IdP-Anwendung konfigurieren

    Klicken Sie in der Google Admin-Konsole (admin.google.com) links auf **Apps -> Web- und mobile Apps**.

    <Frame>
      <img src="https://mintcdn.com/codeium/DnGnXhZxl1qb2EWt/assets/auth/sso-google.png?fit=max&auto=format&n=DnGnXhZxl1qb2EWt&q=85&s=9d300c86c609da6ee3fb630e91f4de3e" width="530" height="788" data-path="assets/auth/sso-google.png" />
    </Frame>

    Klicken Sie auf **App hinzufügen** und dann auf **Benutzerdefinierte SAML-App hinzufügen**.

    <Frame>
      <img src="https://mintcdn.com/codeium/DnGnXhZxl1qb2EWt/assets/auth/sso-google2.png?fit=max&auto=format&n=DnGnXhZxl1qb2EWt&q=85&s=44375b535f269f130aea8c5bd6e736be" width="514" height="534" data-path="assets/auth/sso-google2.png" />
    </Frame>

    Geben Sie bei **App-Name** `Windsurf` ein und klicken Sie auf **Weiter**.

    Der nächste Bildschirm (Google Identity Provider details) in der Google-Konsole enthält Daten, die Sie in die SSO-Einstellungen von Windsurf unter [https://windsurf.com/team/settings](https://windsurf.com/team/settings) kopieren müssen.

    * Kopieren Sie die **SSO URL** aus der Google-Konsole in die Windsurf-Einstellungen unter **SSO URL**
    * Kopieren Sie die **Entity ID** aus der Google-Konsole in die Windsurf-Einstellungen unter **IdP Entity ID**
    * Kopieren Sie das **Certificate** aus der Google-Konsole in die Windsurf-Einstellungen unter **X509 Certificate**
    * Klicken Sie in der Google-Konsole auf **Weiter**

    Der nächste Bildschirm in der Google-Konsole erfordert, dass Sie Daten von der Codeium-Einstellungsseite kopieren

    * Kopieren Sie die **Callback URL** von der Codeium-Einstellungsseite in die Google-Konsole unter **ACS URL**
    * Kopieren Sie die **SP Entity ID** von der Codeium-Einstellungsseite in die Google-Konsole unter **SP Entity ID**
    * Ändern Sie das **Name ID**-Format in **EMAIL**
    * Klicken Sie in der Google-Konsole auf **Weiter**

    Der nächste Bildschirm in der Google-Konsole erfordert einige Konfigurationen

    * Klicken Sie auf **Add Mapping**, wählen Sie **First name** und setzen Sie die **App attributes** auf **firstName**
    * Klicken Sie auf **Add Mapping**, wählen Sie **Last name** und setzen Sie die **App attributes** auf **lastName**
    * Klicken Sie auf **Finish**

    <Frame>
      <img src="https://mintcdn.com/codeium/DnGnXhZxl1qb2EWt/assets/auth/sso-google3.png?fit=max&auto=format&n=DnGnXhZxl1qb2EWt&q=85&s=c29f0ebf5a05dd5fae3a1127c4111d29" width="2078" height="862" data-path="assets/auth/sso-google3.png" />
    </Frame>

    Klicken Sie auf der Codeium-Einstellungsseite auf **Enable Login with SAML** und dann auf **Save**. Klicken Sie unbedingt auf **Test Login**, um zu überprüfen, dass die Anmeldung wie erwartet funktioniert. Für alle Benutzer wird nun die SSO-Anmeldung erzwungen.
  </Tab>

  <Tab title="Microsoft Entra ID">
    Windsurf Enterprise unterstützt jetzt die Anmeldung über Single Sign-On (SSO) per SAML. Wenn Ihre Organisation Microsoft Entra ID (ehemals Azure AD) verwendet, können Sie SSO mit Windsurf nutzen.

    <Note>Windsurf unterstützt nur SP-initiiertes SSO; IdP-initiiertes SSO wird derzeit NICHT unterstützt.</Note>

    ## Teil 1: Enterprise-Anwendung in Microsoft Entra ID erstellen

    <Note>Alle Schritte in diesem Abschnitt werden im **Microsoft Entra ID Admin Center** durchgeführt.</Note>

    1. Klicken Sie in Microsoft Entra ID auf **Add** und dann auf **Enterprise Application**.

    <Frame>
      <img src="https://mintcdn.com/codeium/DnGnXhZxl1qb2EWt/assets/auth/sso-azure.png?fit=max&auto=format&n=DnGnXhZxl1qb2EWt&q=85&s=70c1ef27e1870d1f95176d12cd7c9c47" width="854" height="384" data-path="assets/auth/sso-azure.png" />
    </Frame>

    2. Klicken Sie auf **Create your own application**.

    <Frame>
      <img src="https://mintcdn.com/codeium/DnGnXhZxl1qb2EWt/assets/auth/sso-azure2.png?fit=max&auto=format&n=DnGnXhZxl1qb2EWt&q=85&s=d8d3d2b159172edef9033487d1167b52" width="680" height="202" data-path="assets/auth/sso-azure2.png" />
    </Frame>

    3. Benennen Sie Ihre Anwendung **Windsurf**, wählen Sie *Integrate any other application you don't find in the gallery* und klicken Sie anschließend auf **Create**.

    <Frame>
      <img src="https://mintcdn.com/codeium/DnGnXhZxl1qb2EWt/assets/auth/sso-azure3.png?fit=max&auto=format&n=DnGnXhZxl1qb2EWt&q=85&s=38dd3186171705ca16387dfff4a5b24b" width="968" height="342" data-path="assets/auth/sso-azure3.png" />
    </Frame>

    ## Teil 2: SAML und Benutzerattribute in Microsoft Entra ID konfigurieren

    <Note>Alle Schritte in diesem Abschnitt werden im **Microsoft Entra ID Admin Center** durchgeführt.</Note>

    4. Klicken Sie in Ihrer neuen Windsurf-Anwendung auf **Set up single sign on** und dann auf **SAML**.

    5. Klicken Sie unter **Basic SAML Configuration** auf **Edit**.

    6. **Lassen Sie diesen Entra-ID-Tab geöffnet** und öffnen Sie einen neuen Tab, um zu den **Windsurf Teams SSO settings** unter [https://windsurf.com/team/settings](https://windsurf.com/team/settings) zu navigieren.

    7. Im SAML-Konfigurationsformular von **Microsoft Entra ID**:
       * **Identifier (Entity ID)**: Kopieren Sie den Wert **SP Entity ID** von der **Windsurf SSO settings page**
       * **Reply URL (Assertion Consumer Service URL)**: Kopieren Sie den Wert **Callback URL** von der **Windsurf SSO settings page**
       * Klicken Sie oben auf **Save**

    8. Konfigurieren Sie Benutzerattribute für die korrekte Namensanzeige. Klicken Sie in **Microsoft Entra ID** unter **Attributes & Claims** auf **Edit**.

    9. Erstellen Sie zwei neue Claims, indem Sie jeweils auf **Add new claim** klicken:
       * **Erster Claim**: Name = `firstName`, Source attribute = `user.givenname`
       * **Zweiter Claim**: Name = `lastName`, Source attribute = `user.surname`

    ## Teil 3: SSO-Einstellungen im Windsurf-Portal konfigurieren

    <Note>Schließen Sie die Konfiguration im **Windsurf-Portal** ([https://windsurf.com/team/settings](https://windsurf.com/team/settings)) ab.</Note>

    10. Auf der **Windsurf SSO settings page**:
        * **Pick your SSO ID**: Wählen Sie einen eindeutigen Bezeichner für das Anmeldeportal Ihres Teams (dies kann später nicht mehr geändert werden)
        * **IdP Entity ID**: Kopieren Sie den Wert aus **Microsoft Entra ID** unter **Set up Windsurf** → **Microsoft Entra Identifier**
        * **SSO URL**: Kopieren Sie den Wert **Login URL** aus **Microsoft Entra ID**
        * **X509 Certificate**: Laden Sie das **SAML certificate (Base64)** aus **Microsoft Entra ID** herunter, öffnen Sie die Datei und fügen Sie den Textinhalt hier ein

    11. Klicken Sie im **Windsurf-Portal** auf **Enable Login with SAML** und anschließend auf **Save**.

    12. **Testen Sie die Konfiguration**: Klicken Sie auf **Test Login**, um zu überprüfen, ob die SSO-Konfiguration wie erwartet funktioniert.

    <Note>**Wichtig**: Melden Sie sich nicht ab und schließen Sie die Windsurf-Einstellungsseite nicht, bis Sie die Anmeldung erfolgreich getestet haben. Wenn der Test fehlschlägt, müssen Sie möglicherweise Ihre Konfiguration überprüfen und beheben, bevor Sie fortfahren.</Note>
  </Tab>

  <Tab title="Okta SSO (Single Sign-On)">
    Windsurf Enterprise unterstützt jetzt die Anmeldung mit Single Sign-On (SSO) über SAML. Wenn Ihre Organisation Microsoft Entra, Okta, Google Workspaces oder einen anderen Identitätsanbieter verwendet, der SAML unterstützt, können Sie SSO mit Windsurf nutzen.

    <Note>Windsurf unterstützt nur vom SP initiertes SSO; vom IdP initiiertes SSO wird derzeit NICHT unterstützt.</Note>

    ### IdP-Anwendung konfigurieren

    Klicken Sie in der linken Seitenleiste auf Applications und dann auf Create App Integration.

    <Frame>
      <img src="https://mintcdn.com/codeium/DnGnXhZxl1qb2EWt/assets/auth/sso-okta1.png?fit=max&auto=format&n=DnGnXhZxl1qb2EWt&q=85&s=e3f879d2fa7faeba003aa04e2c5d3a4a" width="1248" height="962" data-path="assets/auth/sso-okta1.png" />
    </Frame>

    Wählen Sie SAML 2.0 als Anmeldemethode aus.

    <Frame>
      <img src="https://mintcdn.com/codeium/DnGnXhZxl1qb2EWt/assets/auth/sso-okta2.png?fit=max&auto=format&n=DnGnXhZxl1qb2EWt&q=85&s=df39e8a15a879d8f2798a4284087c567" width="1600" height="1023" data-path="assets/auth/sso-okta2.png" />
    </Frame>

    Legen Sie den App-Namen auf Windsurf (oder einen anderen Namen) fest und klicken Sie auf Next.

    Konfigurieren Sie die SAML-Einstellungen wie folgt:

    * Single sign-on URL auf [https://auth.windsurf.com/\&#95;\&#95;/auth/handler](https://auth.windsurf.com/\&#95;\&#95;/auth/handler)
    * Audience URI (SP Entity ID) auf [www.codeium.com](http://www.codeium.com)
    * NameID Format auf EmailAddress
    * Application username auf Email

    Konfigurieren Sie die Attributzuweisungen wie folgt und klicken Sie anschließend auf **Next**.

    <Frame>
      <img src="https://mintcdn.com/codeium/DnGnXhZxl1qb2EWt/assets/auth/sso-okta3.png?fit=max&auto=format&n=DnGnXhZxl1qb2EWt&q=85&s=0903972c21dd13147a1adfe8791f1679" width="1398" height="602" data-path="assets/auth/sso-okta3.png" />
    </Frame>

    Wählen Sie im Abschnitt Feedback „This is an internal app that we have created“ und klicken Sie auf **Finish**.

    ### Okta als SAML-Anbieter registrieren

    Sie sollten zur Registerkarte Sign on Ihrer benutzerdefinierten SAML-Anwendung weitergeleitet werden. Nehmen Sie nun die Informationen auf dieser Seite und tragen Sie sie in den SSO-Einstellungen von Windsurf ein.

    * Öffnen Sie [https://windsurf.com/team/settings](https://windsurf.com/team/settings) und klicken Sie auf Configure SAML
    * Kopieren Sie den Text nach ‚Issuer‘ auf der Okta-Anwendungsseite und fügen Sie ihn unter IdP Entity ID ein
    * Kopieren Sie den Text nach ‚Sign on URL‘ auf der Okta-Anwendungsseite und fügen Sie ihn unter SSO URL ein
    * Laden Sie das Signing Certificate herunter und fügen Sie es unter X509 certificate ein
    * Aktivieren Sie Enable Login with SAML und klicken Sie anschließend auf Save
    * Testen Sie die Anmeldung mit der Schaltfläche Test Login. Sie sollten eine Erfolgsmeldung sehen:

    <Frame>
      <img src="https://mintcdn.com/codeium/DnGnXhZxl1qb2EWt/assets/auth/sso-okta4.png?fit=max&auto=format&n=DnGnXhZxl1qb2EWt&q=85&s=574e091c869162bc41dc0aa36cd209fa" width="1046" height="270" data-path="assets/auth/sso-okta4.png" />
    </Frame>

    An diesem Punkt sollte alles konfiguriert sein, und Sie können jetzt Benutzer zur neuen Windsurf-Okta-Anwendung hinzufügen.

    Teilen Sie die benutzerdefinierte Login Portal URL Ihrer Organisation mit Ihren Nutzern und bitten Sie sie, sich über diesen Link anzumelden.

    <Frame>
      <img src="https://mintcdn.com/codeium/DnGnXhZxl1qb2EWt/assets/auth/sso-okta5.png?fit=max&auto=format&n=DnGnXhZxl1qb2EWt&q=85&s=f3ccced59b0cbc7d0f0b1b6b39f1ee1c" width="988" height="312" data-path="assets/auth/sso-okta5.png" />
    </Frame>

    Nutzer, die sich über SSO bei Windsurf anmelden, werden automatisch dem Team hinzugefügt.

    ### Einschränkungen

    Beachten Sie, dass Windsurf derzeit keine vom IdP initiierten Anmeldeflüsse unterstützt.

    Wir unterstützen außerdem noch kein OIDC.

    # Fehlerbehebung

    ### Login with SAML config failed: Firebase: Error (auth/operation-not-allowed)

    <Frame>
      <img src="https://mintcdn.com/codeium/DnGnXhZxl1qb2EWt/assets/auth/sso-okta6.png?fit=max&auto=format&n=DnGnXhZxl1qb2EWt&q=85&s=f65534799dfd8f941a68dc9fc72236d4" width="617" height="92" data-path="assets/auth/sso-okta6.png" />
    </Frame>

    Dies weist auf eine ungültige SSO-ID oder eine falsche SSO-URL hin. Stellen Sie sicher, dass sie alphanumerisch ist und keine zusätzlichen Leerzeichen oder ungültigen Zeichen enthält. Gehen Sie die Schritte in der Anleitung erneut durch und stellen Sie sicher, dass Sie die richtigen Werte verwenden.

    ### Login with SAML config failed: Firebase: SAML Response \<Issuer> mismatch. (auth/invalid-credential)

    <Frame>
      <img src="https://mintcdn.com/codeium/DnGnXhZxl1qb2EWt/assets/auth/sso-okta7.png?fit=max&auto=format&n=DnGnXhZxl1qb2EWt&q=85&s=446c8ad9510b7dcc8e744c7b80862c29" width="752" height="117" data-path="assets/auth/sso-okta7.png" />
    </Frame>

    Dies weist darauf hin, dass Ihre IdP Entity ID ungültig ist. Stellen Sie sicher, dass Sie sie korrekt aus dem Okta-Portal kopieren, ohne zusätzliche Zeichen oder Leerzeichen vor oder nach der Zeichenfolge.

    ### Failed to verify the signature in samlresponse

    Dies weist auf einen falschen Wert Ihres X509-Zertifikats hin. Stellen Sie sicher, dass Sie den richtigen Schlüssel kopieren und dass er wie folgt formatiert ist:

    ```
    -----BEGIN CERTIFICATE-----
    value
    ------END CERTIFICATE------
    ```
  </Tab>

  <Tab title="Azure SCIM (System für domänenübergreifendes Identitätsmanagement)">
    Windsurf unterstützt die SCIM-Synchronisierung für Benutzer und Gruppen mit Microsoft Entra ID / Azure AD. Es ist nicht erforderlich, SSO (Single Sign-On) einzurichten, um die SCIM-Synchronisierung zu nutzen, wird jedoch dringend empfohlen.

    Sie benötigen:

    * Administratorzugriff auf Microsoft Entra ID / Azure AD
    * Administratorzugriff auf Windsurf
    * Eine vorhandene Windsurf-Anwendung in Entra ID (normalerweise aus Ihrer bestehenden SSO-Anwendung)

    ## Schritt 1: Zur vorhandenen Windsurf-Anwendung navigieren

    Gehen Sie in Microsoft Entra ID auf Azure, klicken Sie in der linken Seitenleiste auf Enterprise applications und dann in der Liste auf die vorhandene Windsurf-Anwendung.

    <Frame>
      <img src="https://mintcdn.com/codeium/DnGnXhZxl1qb2EWt/assets/auth/scim-azure.png?fit=max&auto=format&n=DnGnXhZxl1qb2EWt&q=85&s=c2425d24cadc8997c694a4b8a950169a" width="1258" height="664" data-path="assets/auth/scim-azure.png" />
    </Frame>

    ## Schritt 2: SCIM-Bereitstellung einrichten

    Klicken Sie unter Provision User Accounts in der Mitte (Schritt 3) auf Get started und dann erneut auf Get started.

    <Frame>
      <img src="https://mintcdn.com/codeium/s3SYO8XdSvmrABvq/assets/auth/scim-azure2.png?fit=max&auto=format&n=s3SYO8XdSvmrABvq&q=85&s=1e9c8417da7568dc587941955f6d0ace" width="2582" height="1858" data-path="assets/auth/scim-azure2.png" />
    </Frame>

    Wählen Sie auf der Seite Provisioning setup die folgenden Optionen aus.

    Provisioning Mode: Automatic

    Admin Credentials > Tenant URL: [https://server.codeium.com/scim/v2](https://server.codeium.com/scim/v2)

    Lassen Sie die Azure-Bereitstellungsseite geöffnet, wechseln Sie nun zum Windsurf-Webportal und klicken Sie oben auf der Seite in der NavBar auf das Profilsymbol. Unter Team Settings wählen Sie Service Key und klicken auf Add Service Key. Geben Sie einen beliebigen Schlüsselnamen ein (z. B. „Azure Provisioning Key“) und klicken Sie auf Create Service Key. Kopieren Sie den erzeugten Schlüssel, gehen Sie zurück zur Azure-Seite und fügen Sie ihn bei Secret Token ein.

    <Frame>
      <img src="https://mintcdn.com/codeium/DnGnXhZxl1qb2EWt/assets/auth/scim-azure3.png?fit=max&auto=format&n=DnGnXhZxl1qb2EWt&q=85&s=80477c2c0d31631e38e217b22e9f42a3" width="1612" height="1013" data-path="assets/auth/scim-azure3.png" />
    </Frame>

    (Was Sie nach dem Erstellen des Schlüssels in Windsurf sehen sollten)

    Klicken Sie auf der Provisioning-Seite auf Test Connection; dadurch sollte die SCIM-Verbindung verifiziert werden.

    Klicken Sie nun oberhalb des Provisioning-Formulars auf Save.

    ## Schritt 3: SCIM-Bereitstellung konfigurieren

    Nach dem Klicken auf Save sollte auf der Provisioning-Seite eine neue Option Mappings erschienen sein. Erweitern Sie Mappings und klicken Sie auf Provision Microsoft Entra ID Users.

    <Frame>
      <img src="https://mintcdn.com/codeium/DnGnXhZxl1qb2EWt/assets/auth/scim-azure4.png?fit=max&auto=format&n=DnGnXhZxl1qb2EWt&q=85&s=276791b068bd34c2bcbe5321e95abfd6" width="666" height="438" data-path="assets/auth/scim-azure4.png" />
    </Frame>

    Löschen Sie unter Attribute Mappings alle Felder unter displayName, sodass nur die Felder userName, active und displayName übrig bleiben.

    <Frame>
      <img src="https://mintcdn.com/codeium/DnGnXhZxl1qb2EWt/assets/auth/scim-azure5.png?fit=max&auto=format&n=DnGnXhZxl1qb2EWt&q=85&s=ddb9440614a4bc04f7c561bbf64a2d5a" width="1260" height="190" data-path="assets/auth/scim-azure5.png" />
    </Frame>

    Klicken Sie für active nun auf Edit. Unter Expression ändern Sie das Feld zu

    ```
    NOT([IsSoftDeleted])
    ```

    Klicken Sie dann auf OK.

    Ihre Benutzerattribute sollten folgendermaßen aussehen:

    <Frame>
      <img src="https://mintcdn.com/codeium/DnGnXhZxl1qb2EWt/assets/auth/scim-azure6.png?fit=max&auto=format&n=DnGnXhZxl1qb2EWt&q=85&s=2beab12c979d3272d522293080634811" width="2826" height="490" data-path="assets/auth/scim-azure6.png" />
    </Frame>

    Klicken Sie auf der Seite „Attribute Mapping“ oben auf „Save“ und navigieren Sie zurück zur Seite „Provisioning“.

    Klicken Sie nun auf derselben Seite unter „Mappings“ auf „Provision Microsoft Entra ID Groups“. Löschen Sie anschließend nur „externalId“ (auf „delete“ klicken) und klicken Sie oben auf „Save“. Navigieren Sie zurück zur Seite „Provisioning“.

    <Frame>
      <img src="https://mintcdn.com/codeium/DnGnXhZxl1qb2EWt/assets/auth/scim-azure7.png?fit=max&auto=format&n=DnGnXhZxl1qb2EWt&q=85&s=11e89ce7d057c455ea00e0f469351b61" width="1258" height="203" data-path="assets/auth/scim-azure7.png" />
    </Frame>

    Unten auf der Seite „Provisioning“ gibt es außerdem einen Umschalter „Provisioning Status“. Stellen Sie diesen auf „On“, um die SCIM-Synchronisierung (SCIM – System für domänenübergreifendes Identitätsmanagement) zu aktivieren. Ab jetzt werden alle 40 Minuten die Benutzer und Gruppen der Entra-ID-Anwendung mit Windsurf synchronisiert.

    <Frame>
      <img src="https://mintcdn.com/codeium/DnGnXhZxl1qb2EWt/assets/auth/scim-azure8.png?fit=max&auto=format&n=DnGnXhZxl1qb2EWt&q=85&s=1214073ce82bd85a1c2a57834005608f" width="686" height="306" data-path="assets/auth/scim-azure8.png" />
    </Frame>

    Klicken Sie zum Abschluss auf „Save“. Sie haben nun die Synchronisierung von Benutzern und Gruppen über SCIM aktiviert. Es werden nur Benutzer und Gruppen synchronisiert, die der Anwendung zugewiesen sind und mit Windsurf. Beachten Sie, dass das Entfernen von Benutzern ihnen lediglich den Zugriff auf Windsurf entzieht (und verhindert, dass sie einen Platz belegen), anstatt Benutzer zu löschen. Dies liegt am SCIM-Design von Azure.
  </Tab>

  <Tab title="Okta SCIM (System für domänenübergreifendes Identitätsmanagement)">
    Windsurf unterstützt die SCIM-Synchronisierung für Benutzer und Gruppen mit Okta. Es ist nicht erforderlich, SSO einzurichten, um die SCIM-Synchronisierung zu verwenden, wird jedoch dringend empfohlen.

    Sie benötigen:

    * Administratorzugriff auf Okta
    * Administratorzugriff auf Windsurf
    * Eine vorhandene Windsurf-Anwendung in Okta (in der Regel aus Ihrer bestehenden SSO-Anwendung)

    ## Schritt 1: Zur vorhandenen Windsurf-Anwendung navigieren

    Gehen Sie zu Okta, klicken Sie in der linken Seitenleiste auf Applications, Applications, und klicken Sie dann in der Anwendungsliste auf die bestehende Windsurf-Anwendung.

    ## Schritt 2: SCIM-Provisioning aktivieren

    Unter dem Tab General, App Settings klicken Sie oben rechts auf Edit. Aktivieren Sie anschließend das Kontrollkästchen 'Enable SCIM Provisioning' und klicken Sie auf Save. Oben sollte ein neuer Provisioning-Tab erschienen sein.

    Gehen Sie nun zu Provisioning, klicken Sie auf Edit und geben Sie Folgendes in die Felder ein:

    SCIM connector base URL: [https://server.codeium.com/scim/v2](https://server.codeium.com/scim/v2)

    Unique identifier field for users: email

    Supported provisioning actions: Push New Users, Push Profile Updates, Push Groups

    Authentication Mode: HTTP Header

    Für HTTP Header - Authorization können Sie das Token generieren unter

    * [https://windsurf.com/team/settings](https://windsurf.com/team/settings), gehen Sie zu Other Settings und finden Sie Service Key Configuration
    * Klicken Sie auf Add Service Key und geben Sie Ihrem Schlüssel einen Namen
    * Kopieren Sie den API-Schlüssel, gehen Sie zurück zu Okta und fügen Sie ihn bei HTTP Header - Authorization ein

    Klicken Sie auf Save, nachdem Sie Provisioning Integration ausgefüllt haben.

    ## Schritt 3: Provisioning einrichten

    Unter dem Provisioning-Tab sollten sich links zwei neue Tabs befinden. Klicken Sie auf To App und Edit Provisioning to App. Aktivieren Sie die Kontrollkästchen für Create Users, Update User Attributes und Deactivate Users und klicken Sie auf Save.

    Nach diesem Schritt werden alle Benutzer, die der Gruppe zugewiesen sind, mit Windsurf synchronisiert.

    ## Schritt 4: Gruppen-Provisioning einrichten (optional)

    Um Gruppen mit Windsurf zu synchronisieren, müssen Sie angeben, welche Gruppen gepusht werden sollen. Klicken Sie unter der Anwendung oben auf den Tab Push Groups. Klicken Sie nun auf + Push Groups -> Find Groups by name. Filtern Sie nach der Gruppe, die Sie hinzufügen möchten, stellen Sie sicher, dass Push group memberships immediately aktiviert ist, und klicken Sie dann auf Save. Die Gruppe wird erstellt und Gruppenmitglieder werden mit Windsurf synchronisiert. Gruppen können anschließend verwendet werden, um Gruppen-Analytics auf der Analytics-Seite zu filtern.
  </Tab>

  <Tab title="SCIM-API (System für domänenübergreifendes Identitätsmanagement)">
    Diese Anleitung zeigt, wie Sie Gruppen in Windsurf mit der SCIM (System für domänenübergreifendes Identitätsmanagement)-API erstellen und verwalten.

    Es gibt Gründe, warum man Gruppen manuell bereitstellen möchte, anstatt über den Identity Provider (Azure/Okta). Unternehmen möchten möglicherweise Gruppen aus einer anderen internen Quelle (HR-Website, Quellcode-Management-Tool usw.) bereitstellen, auf die Windsurf keinen Zugriff hat, oder Unternehmen benötigen eine feinere Kontrolle über Gruppen, als ihr Identity Provider bietet. Gruppen können daher stattdessen über eine API per HTTP-Anfrage erstellt werden. Im Folgenden finden Sie Beispiele für die HTTP-Anfrage über CURL.

    Es gibt hier 5 Haupt-APIs: Gruppe erstellen, Gruppenmitglieder hinzufügen, Gruppenmitglieder ersetzen, Gruppe löschen und Benutzer in einer Gruppe auflisten.

    ### Gruppe erstellen

    ```
    curl -k -X POST https://server.codeium.com/scim/v2/Groups -d '{
    "displayName": "<Gruppenname>",
    "schemas": ["urn:ietf:params:scim:schemas:core:2.0:Group"]
    }' -H "Authorization: Bearer <API-Geheimschlüssel>" -H "Content-Type: application/scim+json"
    ```

    ### Gruppenmitglieder hinzufügen

    ```
    curl -X PATCH https://server.codeium.com/scim/v2/Groups/<Gruppenname> -d '{"schemas": ["urn:ietf:params:scim:api:messages:2.0:PatchOp"],
    "Operations":[
    {
    "op": "add",
    "path":"members",
    "value": [{"value": "<E-Mail 1>"}, {"value": "<E-Mail 2>"}]
    }]}' -H "Authorization: Bearer <API-Geheimschlüssel>" -H "Content-Type: application/scim+json"
    ```

    ### Gruppenmitglieder ersetzen

    ```
    curl -X PATCH https://server.codeium.com/scim/v2/Groups/<Gruppenname> -d '{"schemas": ["urn:ietf:params:scim:api:messages:2.0:PatchOp"],
    "Operations":[
    {
    "op": "replace",
    "path":"members",
    "value": [{"value": "<E-Mail 1>"}, {"value": "<E-Mail 2>"}]
    }]}' -H "Authorization: Bearer <API-Geheimschlüssel>" -H "Content-Type: application/scim+json"
    ```

    ### Gruppe löschen

    ```
    curl -X DELETE https://server.codeium.com/scim/v2/Groups/<Gruppenname> -H "Authorization: Bearer <API-Geheimschlüssel>" -H "Content-Type: application/scim+json"
    ```

    ### Listengruppe

    ```
    curl -X GET -H "Authorization: Bearer <API-Geheimschlüssel>" "https://server.codeium.com/scim/v2/Groups"
    ```

    ### Benutzer in einer Gruppe auflisten

    ```
    curl -X GET -H "Authorization: Bearer <API-Geheimschlüssel>" "https://server.codeium.com/scim/v2/Groups/<Gruppen-ID>"
    ```

    Sie müssen zunächst mindestens die Gruppe erstellen und dann die Gruppe ersetzen, um eine Gruppe mit Mitgliedern darin zu erstellen. Außerdem müssen Sie die Gruppennamen URL-kodieren, wenn Ihr Gruppenname Sonderzeichen wie Leerzeichen enthält. Ein Gruppenname wie 'Engineering Group' muss daher in der URL als 'Engineering%20Group' angegeben werden.

    Beachten Sie, dass Benutzer zunächst in Windsurf angelegt werden müssen (über SCIM (System für domänenübergreifendes Identitätsmanagement) oder durch manuelles Erstellen des Kontos), bevor sie einer Gruppe hinzugefügt werden können.

    ## Benutzer-APIs

    Es gibt auch APIs für Benutzer. Im Folgenden sind einige der gängigen SCIM (System für domänenübergreifendes Identitätsmanagement)-APIs aufgeführt, die Windsurf unterstützt.

    Benutzer deaktivieren (Zum Aktivieren false durch true ersetzen):

    ```
    curl -X PATCH \
      https://server.codeium.com/scim/v2/Users/<Benutzer-API-Schlüssel> \
      -H 'Content-Type: application/scim+json' \
      -H 'Authorization: Bearer <API-Geheimschlüssel>' \
      -d '{
        "schemas": ["urn:ietf:params:scim:api:messages:2.0:PatchOp"],
        "Operations": [
          {
            "op": "replace",
            "path": "active",
            "value": false
          }
        ]
      }'
    ```

    Benutzer erstellen:

    ```
    curl -X POST \
      https://server.codeium.com/scim/v2/Users \
      -H 'Content-Type: application/scim+json' \
      -H 'Authorization: Bearer <API-Geheimschlüssel>' \
      -d '{
        "schemas": ["urn:ietf:params:scim:schemas:core:2.0:User"],
        "userName": "<email>",
        "displayName": "<full name>",
        "active": true,
    }'
    ```

    Name aktualisieren:

    ```
    curl -X PATCH \
      'https://<enterprise portal url>/_route/api_server/scim/v2/Users/<user api key>' \
        -H 'Authorization: Bearer <service key>' \
        -H 'Content-Type: application/scim+json' \
        -d '{
          "schemas": ["urn:ietf:params:scim:api:messages:2.0:PatchOp"],
          "Operations": [
            {
              "op": "Replace",
              "path": "displayName",
              "value": "<new name>"
            }
          ]
       }'
    ```

    ## Erstellen eines API-Secret-Keys

    Gehen Sie zu [https://windsurf.com/team/settings](https://windsurf.com/team/settings). Klicken Sie unter Service-Schlüssel-Konfiguration auf Konfigurieren und dann auf Service-Schlüssel hinzufügen. Geben Sie einen beliebigen Schlüsselnamen ein (wie 'Azure Provisioning Key') und klicken Sie auf Service-Schlüssel erstellen. Kopieren Sie den generierten Schlüssel und speichern Sie ihn. Sie können den Schlüssel nun verwenden, um die oben genannten APIs zu autorisieren.
  </Tab>

  <Tab title="Duo">
    ## Voraussetzungen

    Diese Anleitung setzt voraus, dass Sie Duo konfiguriert haben und es als Ihren organisatorischen IdP fungiert oder dass ein externer IdP konfiguriert ist.

    Sie benötigen Administratorzugriff auf sowohl Duo- als auch Windsurf-Konten.

    ## Duo für Windsurf konfigurieren

    1. Navigieren Sie zu Applications und fügen Sie einen generischen SAML-Service Provider hinzu.

    <Frame>
      <img src="https://mintcdn.com/codeium/DnGnXhZxl1qb2EWt/assets/auth/duo-sso-1.png?fit=max&auto=format&n=DnGnXhZxl1qb2EWt&q=85&s=7e598d7e9a9ee2c3884caa1c60ba68ff" width="2230" height="920" data-path="assets/auth/duo-sso-1.png" />
    </Frame>

    2. Navigieren Sie zu SSO in den Team Settings.

    <Frame>
      <img src="https://mintcdn.com/codeium/DnGnXhZxl1qb2EWt/assets/auth/windsurf-sso-team-settings.png?fit=max&auto=format&n=DnGnXhZxl1qb2EWt&q=85&s=df8dde8b5b66a27532a3f42cdd803a17" width="1676" height="1444" data-path="assets/auth/windsurf-sso-team-settings.png" />
    </Frame>

    3. Wenn Sie SAML zum ersten Mal aktivieren, müssen Sie Ihre SSO-ID festlegen. **Sie können diese später nicht mehr ändern.**

       Es wird empfohlen, hierfür den Namen Ihrer Organisation oder Ihres Teams zu verwenden, ausschließlich mit alphanumerischen Zeichen.

    4. Kopieren Sie den Wert von `Entity ID` aus dem Duo-Portal und fügen Sie ihn in das Feld `IdP Entity ID` im Windsurf-Portal ein.

    5. Kopieren Sie den Wert von `Single Sign-On URL` aus dem Duo-Portal und fügen Sie ihn in das Feld `SSO URL` im Windsurf-Portal ein.

    6. Kopieren Sie den Zertifikatswert aus dem Duo-Portal und fügen Sie ihn in das Feld `X509 Certificate` im Windsurf-Portal ein.

    <Frame>
      <img src="https://mintcdn.com/codeium/DnGnXhZxl1qb2EWt/assets/auth/duo-sso-3.png?fit=max&auto=format&n=DnGnXhZxl1qb2EWt&q=85&s=a7594c846a32e958a1bacfc01c5d3ef3" width="1536" height="290" data-path="assets/auth/duo-sso-3.png" />
    </Frame>

    7. Kopieren Sie den Wert von `SP Identity ID` aus dem Windsurf-Portal und fügen Sie ihn in das Feld `Entity ID` im Duo-Portal ein.

    8. Kopieren Sie die `Callback URL (Assertion Consumer Service URL)` aus dem Windsurf-Portal und fügen Sie sie in das Feld `Assertion Consumer Service (ACS) URL` im Duo-Portal ein.

    9. Konfigurieren Sie im Duo-Portal die Attributaussagen wie folgt:

    <Frame>
      <img src="https://mintcdn.com/codeium/DnGnXhZxl1qb2EWt/assets/auth/duo-sso-4.png?fit=max&auto=format&n=DnGnXhZxl1qb2EWt&q=85&s=bb3b514b94a6b0ebba19aa492c8be4a2" width="1676" height="290" data-path="assets/auth/duo-sso-4.png" />
    </Frame>

    10. Aktivieren Sie die SAML-Anmeldung im Windsurf-Portal, damit Sie testen können.

    **HINWEIS: MELDEN SIE SICH AN DIESER STELLE NICHT AB UND SCHLIESSEN SIE NICHT DAS FENSTER.**

    Wenn ein Fehler auftritt oder ein Timeout erfolgt, beheben Sie Ihre Einstellungen, andernfalls müssen Sie Ihre SAML-Einstellungen im Windsurf-Portal deaktivieren.

    **Wenn Sie sich abmelden oder das Fenster schließen, ohne einen erfolgreichen Test zu bestätigen, könnten Sie ausgesperrt werden.**

    11. Sobald Ihr Test erfolgreich abgeschlossen wurde, können Sie sich abmelden. Sie können sich nun per SSO anmelden, wenn Sie zu Ihrer Team-/Organisationsseite mit der in Schritt 3 festgelegten SSO-ID navigieren.

    [https://www.codeium.com/yourssoid/login](https://www.codeium.com/yourssoid/login)
  </Tab>

  <Tab title="PingID">
    ## Voraussetzungen

    Dieser Leitfaden setzt voraus, dass Sie PingID konfiguriert haben und es als Ihren organisatorischen IdP verwendet wird oder dass ein externer IdP konfiguriert ist.

    Sie benötigen Administratorzugriff auf sowohl PingID- als auch Windsurf-Konten.

    ## PingID für Windsurf konfigurieren

    1. Navigieren Sie zu Applications und fügen Sie Windsurf als SAML Application hinzu.

    <Frame>
      <img src="https://mintcdn.com/codeium/DnGnXhZxl1qb2EWt/assets/auth/pingid-1.png?fit=max&auto=format&n=DnGnXhZxl1qb2EWt&q=85&s=f86f6145e0eac599178ca9d9ee66b776" width="2258" height="1068" data-path="assets/auth/pingid-1.png" />
    </Frame>

    2. Navigieren Sie zu SSO in den Team Settings.

    <Frame>
      <img src="https://mintcdn.com/codeium/DnGnXhZxl1qb2EWt/assets/auth/windsurf-sso-team-settings.png?fit=max&auto=format&n=DnGnXhZxl1qb2EWt&q=85&s=df8dde8b5b66a27532a3f42cdd803a17" width="1676" height="1444" data-path="assets/auth/windsurf-sso-team-settings.png" />
    </Frame>

    3. Wenn Sie SAML zum ersten Mal aktivieren, müssen Sie Ihre SSO-ID festlegen. **Sie können diese später nicht mehr ändern.**

    Es wird empfohlen, hierfür den Namen Ihrer Organisation oder Ihres Teams zu verwenden, ausschließlich mit alphanumerischen Zeichen.

    4. Wählen Sie in PingID die manuelle Konfiguration und füllen Sie die Felder mit den folgenden Werten aus:

    * ACS URLs – dies ist die `Callback URL (Assertion Consumer Service URL)` aus dem Windsurf-Portal.
    * Entity ID – dies ist die `SP Entity ID` aus dem Windsurf-Portal.

    <Frame>
      <img src="https://mintcdn.com/codeium/DnGnXhZxl1qb2EWt/assets/auth/pingid-3.png?fit=max&auto=format&n=DnGnXhZxl1qb2EWt&q=85&s=e33dc0b9d021309da0fcdb2ac4f08bbb" width="974" height="672" data-path="assets/auth/pingid-3.png" />
    </Frame>

    5. Kopieren Sie die `Issuer ID` aus PingID in den Wert `IdP Entity ID` im Windsurf-Portal.

    6. Kopieren Sie den Wert `Single Sign-On Service` aus PingID in den Wert `SSO URL` im Windsurf-Portal.

    7. Laden Sie das Signing Certificate aus PingID als X.509 PEM (.crt) herunter, öffnen Sie die Datei und kopieren Sie deren Inhalt in den Wert `X509 Certificate` im Windsurf-Portal.

    **Hinweis:** Stellen Sie sicher, dass die vollständigen BEGIN-/END-Zeilen mit 5 Bindestrichen (-) vorhanden sind und keine anderen Zeichen mitkopiert werden!

    8. Stellen Sie in den Attributzuordnungen sicher, dass Folgendes zugeordnet ist:

    * `saml_subject` – Email Address
    * `firstName` – Given Name
    * `lastName` – Family Name

    <Frame>
      <img src="https://mintcdn.com/codeium/DnGnXhZxl1qb2EWt/assets/auth/pingid-4.png?fit=max&auto=format&n=DnGnXhZxl1qb2EWt&q=85&s=4ff17f07bfb897072fb68e212ee2ac12" width="1398" height="780" data-path="assets/auth/pingid-4.png" />
    </Frame>

    9. Fügen Sie nach Bedarf weitere Richtlinien hinzu bzw. bearbeiten Sie diese sowie die Zugriffsregeln entsprechend Ihrer Umgebung/Organisation.

    10. Aktivieren Sie den SAML-Login im Windsurf-Portal, damit Sie ihn testen können.

    **HINWEIS: MELDEN SIE SICH AN DIESEM PUNKT NICHT AB UND SCHLIESSEN SIE DAS FENSTER NICHT.**

    Wenn ein Fehler auftritt oder ein Timeout erfolgt, beheben Sie Ihre Einstellungen; andernfalls müssen Sie Ihre SAML-Einstellungen im Windsurf-Portal deaktivieren.

    **Wenn Sie sich abmelden oder das Fenster schließen, ohne einen erfolgreichen Test zu bestätigen, könnten Sie ausgesperrt werden.**

    11. Sobald Ihr Test erfolgreich abgeschlossen wurde, können Sie sich abmelden. Sie können sich nun per SSO anmelden, wenn Sie zu Ihrer Team-/Organisationsseite mit der in Schritt 3 konfigurierten SSO-ID navigieren.

    [https://www.codeium.com/yourssoid/login](https://www.codeium.com/yourssoid/login)
  </Tab>
</Tabs>
