Domänenzugriff einschränken
Der Zugriff auf Anwendungen und Services kann auf Domänen- oder auf Anwendungs- und Serviceebene eingeschränkt werden. Dieser Leitfaden beschreibt die verfügbaren Methoden, um den öffentlichen Zugriff auf Workloads in Codesphere zu begrenzen.
Verwendung der integrierten Plattform-Einschränkungen
Codesphere bietet integrierte Plattformfunktionen zur Zugriffskontrolle auf Infrastrukturebene, darunter teambasierte Authentifizierung, Datenschutz für Dev-Domains und Zugriffskontrolle auf Port-Ebene.
Benutzerdefinierte Domains auf Team beschränken
Die Funktion Restrict to Team erzwingt eine Authentifizierung auf Domänenebene. Wenn diese aktiviert ist, können nur Benutzer, die bei Codesphere angemeldet und Mitglieder des zugehörigen Teams sind, auf die Anwendungs-URL zugreifen.
So beschränkt man eine benutzerdefinierte Domain auf Teammitglieder:
- Im Team Dashboard zum Tab Domains navigieren
- Die zu konfigurierende Domain oder Subdomain suchen
- Auf Settings (Zahnrad-Symbol) neben der Domain klicken
- Zum Tab Routing wechseln
- Den Schalter Domain Access auf Private umstellen
- Auf Save changes klicken

Wenn diese Option aktiv ist, werden alle HTTP-Anfragen an die Domain abgefangen. Nicht authentifizierte Besucher werden zur Codesphere-Anmeldeseite umgeleitet. Der Zugriff wird erst nach erfolgreicher Authentifizierung mit einem gültigen Teammitglieder-Konto gewährt.
Mehr über das Hinzufügen und Konfigurieren von benutzerdefinierten Domains erfährt man im Leitfaden Benutzerdefinierte Domain verbinden.
Dev-Domains einschränken
Dev-Domains sind automatisch generierte URLs, die Codesphere jedem Workspace zuweist. Sie folgen dem Format <workspace-id>.<data-center>.<your-codesphere-instance-domain> (z. B. 4220.1.codesphere.corp42.net).
So wird der Zugriff auf eine Dev-Domain eingeschränkt:
- Zu den Workspace-Einstellungen navigieren
- Den Dialog Edit Workspace öffnen
- Die Sichtbarkeit des Workspace auf Private setzen
Sobald die Domain privat ist, ist die Dev-Domain nur noch für Teammitglieder zugänglich, die in ihrem Codesphere-Konto angemeldet sind.
Zugriff auf eingeschränkte Domains
Wenn eine Domain auf eingeschränkt (privat) gesetzt ist, können nur Mitglieder des eigenen Teams auf die dort gehosteten Inhalte zugreifen. Benutzern stehen zwei Authentifizierungsoptionen zur Verfügung:
Option 1: Anmeldung im Browser
Teammitglieder können auf eingeschränkte Domains zugreifen, indem sie sich im Browser bei ihrem Codesphere-Konto anmelden. Nach der Authentifizierung haben sie Zugriff auf alle eingeschränkten Domains, die ihrem Team zugeordnet sind.
Option 2: Authentifizierung per API-Schlüssel
Für programmatischen Zugriff oder Aufrufe der Anwendungs-API können Benutzer sich mit ihrem API-Schlüssel authentifizieren.
So wird die Authentifizierung per API-Schlüssel verwendet:
Der API-Schlüssel muss im Request-Header enthalten sein:
X-CS-Authorization: Bearer [YOUR-API-KEY]
Beispiel mit curl:
curl -H "X-CS-Authorization: Bearer YOUR-API-KEY" https://your-restricted-domain.com
Der eigene API-Schlüssel kann in den Codesphere-Benutzereinstellungen im Bereich API Keys erstellt und verwaltet werden.
Zugriffskontrolle auf Port-Ebene konfigurieren
Standardmäßig geben Services keine Ports öffentlich frei. Services, die keinen öffentlichen Internetzugriff benötigen (z. B. Datenbanken, Worker-Knoten), können ausschließlich Internal Ports für eine sichere Kommunikation innerhalb der Landscape nutzen. Der bevorzugte Weg, Services öffentlich zugänglich zu machen, ist die Verknüpfung eines internen Ports mit dem Path Router. Die Möglichkeit, öffentliche Workspace-Subdomains direkt für Ports freizugeben, dient der Kompatibilität mit eher traditionellen Frameworks.
So wird der Portzugriff konfiguriert:
- Den Landscape Config Editor über die Seitenleiste öffnen
- Auf Settings (Zahnrad-Symbol) für den jeweiligen Service klicken
- Zum Abschnitt Ports & Routes navigieren
- Die Einstellung der Portverfügbarkeit von Internal auf Public ändern

Interne Ports verzichten auf eine öffentliche URL. Der Service bleibt für andere Services innerhalb desselben Workspace über den internen Hostnamen erreichbar: http://ws-server-<ws-id>-<service-name>:<port>.
Einschränkungen auf Anwendungsebene
Für Anforderungen an die Zugriffskontrolle, die nicht durch Plattformeinstellungen abgedeckt werden — etwa IP-Whitelisting oder benutzerdefinierte Authentifizierung für Nicht-Codesphere-Benutzer — müssen Einschränkungen über Anwendungs-Middleware implementiert werden.
Gängige Muster auf Anwendungsebene
- IP-Whitelisting: Middleware implementieren (z. B.
express-ipfilterfür Node.js), um den HeaderX-Forwarded-Forzu validieren und Anfragen von nicht autorisierten IP-Adressen abzulehnen - Basic Auth: Eine Bibliothek verwenden (z. B.
express-basic-authfür Node.js), um Benutzername und Passwort abzufragen, die in der Anwendungsumgebung definiert sind - Benutzerdefiniertes OAuth/SSO: Drittanbieter-Authentifizierungsdienste für den Zugriff externer Benutzer integrieren
Die Implementierung von Sicherheit auf Code-Ebene ermöglicht granulare Einschränkungen, etwa den Schutz bestimmter API-Routen bei gleichzeitig öffentlich zugänglichen statischen Assets.
Anwendungsfälle
Zugriffsbeschränkungen sind besonders nützlich für:
- Staging-Umgebungen – Verhindern des öffentlichen Zugriffs auf Test- und QA-Umgebungen
- Interne Tools – Einschränkung des Zugriffs auf Admin-Panels und interne Dashboards
- Entwicklungs-Workspaces – Geheimhaltung von Anwendungen, die sich noch in Bearbeitung befinden
- Datenbank-Services – Nutzung interner Ports, um direkten externen Zugriff zu verhindern
- Compliance-Anforderungen – Erfüllung von Sicherheitsrichtlinien, die eine Zugriffskontrolle vorschreiben