SandboxBuilder::proxy(). Proxy protocols are mutually exclusive.
See Proxy for routing behavior, security considerations, and limits.
Outbound proxies are local-only. Cloud sandbox creation rejects this setting.
Typical flow
SandboxBuilder
proxy()
OutboundProxyBuilder and must return one protocol-specific builder.
Invalid proxy configuration is retained by the sandbox builder and returned from build() or create() as MicrosandboxError::NetworkBuilder(BuildError::InvalidOutboundProxy).
OutboundProxyBuilder
Protocol selector passed toSandboxBuilder::proxy().
socks4()
IP:port. The returned builder can optionally set a user ID.
socks5()
IP:port. The parent sandbox builder validates and materializes the returned Socks5ProxyBuilder.
Socks4ProxyBuilder
Protocol-specific builder returned byOutboundProxyBuilder::socks4().
user_id()
Socks5ProxyBuilder
Protocol-specific builder returned byOutboundProxyBuilder::socks5(). It carries the proxy address and is finalized when returned from the .proxy() callback.
credentials()
SecretSource::env("SOCKS5_PASSWORD") as password; store-backed sources are not supported for proxy credentials. The username and resolved password must each contain 1–255 bytes.
The host environment variable is read once each time the sandbox starts. Changing it affects the next start, not a sandbox that is already running. config_json() and the database contain the source reference but never the resolved password.
SecretSource
env()
SecretSource from microsandbox.
OutboundProxy
Declarative outbound proxy configuration stored in the sandbox’s durable network specification.Socks5Credentials contains a password source, not the resolved password.