Skip to main content
Internetconnectiviteit is beschikbaar in elke sandbox, en externe toegang wordt geboden via een openbare URL.

Internettoegang in- en uitschakelen

Wanneer je een sandbox maakt, kun je de parameter allowInternetAccess / allow_internet_access gebruiken om internetconnectiviteit te configureren. Internettoegang is standaard ingeschakeld, maar kan worden uitgeschakeld voor workloads met strengere beveiligingseisen.
Als internettoegang is uitgeschakeld, wordt voorkomen dat de sandbox uitgaande netwerkverzoeken initieert. Dit helpt een extra beschermingslaag toe te voegen bij het uitvoeren van gevoelige code.
Het doorgeven van een falsy-waarde aan allowInternetAccess / allow_internet_access heeft hetzelfde effect als het toevoegen van ['0.0.0.0/0'] aan network.denyOut / network.deny_out, wat elke bestemming blokkeert.

Fijnmazige netwerkcontrole

Netwerkconfiguratie biedt fijnmazigere controle over uitgaand verkeer door je allowlists en denylists te laten definiëren.

Allow- en deny-lijsten

IP-adressen, CIDR-blokken of domeinnamen waartoe de sandbox toegang mag hebben, kunnen worden opgegeven.
De CIDR '0.0.0.0/0' / "0.0.0.0/0" is een verkorte notatie voor “elke bestemming”. Een geëxporteerde constante ALL_TRAFFIC wordt herleid tot dezelfde waarde 0.0.0.0/0 als je een benoemd alternatief voor de letterlijke waarde prefereert.

Filteren op basis van domein

Je kunt hostnamen opgeven in allowOut / allow_out om uitgaand verkeer naar geselecteerde domeinen toe te staan. Wanneer filteren op basis van domein is ingeschakeld, moet al het overige verkeer worden geblokkeerd via denyOut / deny_out. Domeinvermeldingen worden alleen ondersteund in allow-lijsten en kunnen niet worden gebruikt in deny-lijsten.
Wanneer er een domein in de configuratie voorkomt, wordt de standaardnameserver 8.8.8.8 automatisch toegestaan, zodat DNS-resolutie blijft werken.
Je kunt ook elk subdomein van een domein matchen met een wildcard:
Domeinen, IP-adressen en CIDR-bereiken kunnen allemaal samen in dezelfde lijst worden opgenomen:
Filteren op domein is alleen van toepassing op HTTP via poort 80 (geïnspecteerd via de Host-header) en TLS via poort 443 (geïnspecteerd via SNI). Elke andere poort valt terug op matching op basis van CIDR, en UDP-protocollen zoals QUIC/HTTP3 kunnen niet op domein worden gefilterd.

Hoe geblokkeerde TCP-verbindingen zich gedragen

Vanwege de firewallarchitectuur kan een geblokkeerde uitgaande verbinding er vanuit de sandbox nog steeds succesvol uitzien. De firewall moet eerst de TCP-verbinding accepteren voordat kan worden beoordeeld of de doelbestemming is toegestaan. Daardoor kan code die binnen de sandbox draait zien dat de verbinding slaagt en de socket wordt geopend, zelfs als de bestemming is geblokkeerd. In dat geval wordt er in werkelijkheid geen verkeer afgeleverd bij het externe endpoint. Om te bevestigen dat de bestemming bereikbaar is, valideer je een respons op applicatieniveau in plaats van alleen te vertrouwen op het slagen van de TCP-verbinding. Controleer bijvoorbeeld op een HTTP-statuscode, een voltooide TLS-handshake of de verwachte responsbytes van het protocol. Dit gedrag is een huidige beperking van de manier waarop uitgaand sandboxverkeer via onze firewall wordt gerouteerd en kan in de toekomst worden bijgewerkt.

Prioriteitsregels

Als zowel allow- als deny-regels zijn geconfigureerd, hebben de allow-regels prioriteit. Daarom blijft elk IP-adres dat in beide lijsten voorkomt toegestaan.
De instellingen network worden alleen van kracht wanneer de sandbox wordt gemaakt — geef ze door aan Sandbox.create. Zodra de sandbox bestaat, staan ze vast en kunnen ze niet worden gewijzigd.

Openbare URL van de sandbox

Services in een sandbox zijn toegankelijk via de openbare URL van de sandbox.
De uitvoer ziet er als volgt uit:
Het meest linkse segment van de hostnaam is exact het poortnummer dat je aan de methode hebt doorgegeven.

Verbinding maken met een server die in de sandbox draait

Je kunt verbinding maken met een server die in de sandbox draait met de eerder beschreven methode; start bijvoorbeeld een lichtgewicht HTTP-server op poort 3000 om bestanden vanuit de startdirectory te serveren.
Deze uitvoer is als volgt:

Host-headers van aanvragen maskeren

Je kunt de optie maskRequestHost / mask_request_host gebruiken om de Host-header aan te passen die naar services wordt verzonden die in de sandbox draaien. Dit is handig wanneer je applicatie verwacht dat aanvragen een specifieke hostindeling volgen.
Op het moment van de aanvraag wordt ${PORT} in het masker vervangen door het echte poortnummer van de service die wordt aangesproken.
Laatst gewijzigd op 10 augustus 2026