Einschränkung des Domain-Zugriffs
Der Zugriff auf Anwendungen und Services kann auf Domain- oder auf Anwendungs- und Service-Ebene eingeschränkt werden. Dieser Leitfaden beschreibt die verfügbaren Methoden, um den öffentlichen Zugriff auf Workloads in Codesphere zu begrenzen.
Verwendung der plattforminternen Einschränkungen
Codesphere bietet integrierte Plattformfunktionen zur Zugriffskontrolle auf Infrastrukturebene, einschließlich teambasierter Authentifizierung, Privatsphäre für Dev-Domains und Zugriffskontrolle auf Port-Ebene.
Einschränkung von benutzerdefinierten Domains auf das Team
Die Funktion Restrict to Team erzwingt die Authentifizierung auf Domain-Ebene. 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 wird eine benutzerdefinierte Domain auf Teammitglieder eingeschränkt:
- Zum Tab Domains im Team Dashboard navigieren
- Die zu konfigurierende Domain oder Subdomain suchen
- Auf Settings (Zahnradsymbol) neben der Domain klicken
- Zum Tab Routing wechseln
- Den Schalter Domain Access auf Private stellen
- Auf Save changes klicken

So funktioniert es
Sobald diese Funktion aktiv ist, werden alle HTTP-Anfragen an die Domain abgefangen. Nicht authentifizierte Besucher werden zur Codesphere-Anmeldeseite weitergeleitet. Der Zugriff wird nur nach erfolgreicher Authentifizierung mit einem gültigen Teammitglied-Konto gewährt.
tipp
Weitere Informationen zum Hinzufügen und Konfigurieren benutzerdefinierter Domains finden sich im Leitfaden Benutzerdefinierte Domain verbinden.
Einschränkung von Dev-Domains
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 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 in ihrem Browser bei ihrem Codesphere-Konto anmelden. Nach erfolgreicher Authentifizierung haben sie Zugriff auf alle eingeschränkten Domains, die mit ihrem Team verknüpft sind.
Option 2: Authentifizierung per API-Key
Für programmatischen Zugriff oder Aufrufe der API einer Anwendung können sich Benutzer mit ihrem API-Key authentifizieren.
So wird die Authentifizierung per API-Key verwendet:
Den API-Key im Anfrage-Header angeben:
X-CS-Authorization: Bearer [YOUR-API-KEY]
Beispiel mit curl:
curl -H "X-CS-Authorization: Bearer YOUR-API-KEY" https://your-restricted-domain.com
API-Key abrufen
Der API-Key kann in den Codesphere-Benutzereinstellungen im Bereich API Keys erstellt und verwaltet werden.
Konfiguration des Zugriffs auf Port-Ebene
Standardmäßig geben Services ihre Ports nicht öffentlich frei. Services, die keinen öffentlichen Internetzugriff benötigen (z. B. Datenbanken, Worker-Knoten), können ausschließlich Internal Ports für die sichere Kommunikation innerhalb der Landscape nutzen. Der bevorzugte Weg, Services öffentlich verfügbar 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 (Zahnradsymbol) für den jeweiligen Service klicken
- Zum Abschnitt Ports & Routes navigieren
- Die Einstellung der Portverfügbarkeit von Internal auf Public ändern

Service Discovery
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 prüfen und Anfragen von nicht autorisierten IP-Adressen abzulehnen - Basic Auth: Eine Bibliothek verwenden (z. B.
express-basic-authfür Node.js), um einen Benutzernamen und ein Passwort zu verlangen, die innerhalb der Anwendungsumgebung definiert sind - Custom OAuth/SSO: Authentifizierungsanbieter von Drittanbietern für den Zugriff externer Benutzer integrieren
Granulare Kontrolle
Die Implementierung von Sicherheitsmaßnahmen auf Code-Ebene ermöglicht granulare Einschränkungen, etwa den Schutz bestimmter API-Routen, während statische Assets öffentlich bleiben.
Anwendungsfälle
Zugriffseinschrä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 – Anwendungen in Bearbeitung privat halten
- Datenbank-Services – Verwendung interner Ports, um direkten externen Zugriff zu verhindern
- Compliance-Anforderungen – Erfüllung von Sicherheitsrichtlinien, die eine Zugriffskontrolle vorschreiben