INNER CODE UNIT · Python

assert_no_provider_secrets_in_environ

ArcReel/ArcReel · server/app.py:85

def assert_no_provider_secrets_in_environ() -> None:
    """父进程禁止持有任何 provider 密钥;违反即 fail-fast。

    Bash 沙箱子进程通过 fork 继承父 env,父进程必须把 provider secrets
    全部下线到 DB,由 SDK options.env 显式注入子进程。
    """
    leaked = sorted(k for k in PROVIDER_SECRET_KEYS if os.environ.get(k))
    if leaked:
        raise RuntimeError(
            f"SECURITY: 父进程 os.environ 含 provider 密钥: {leaked}. "
            "请到 WebUI 系统配置页填写,并从 env / .env 中移除对应条目。"
        )


_APPARMOR_USERNS_SYSCTL = Path("/proc/sys/kernel/apparmor_restrict_unprivileged_userns")
_UNPRIV_USERNS_SYSCTL = Path("/proc/sys/kernel/unprivileged_userns_clone")
_MAX_USER_NS_SYSCTL = Path("/proc/sys/user/max_user_namespaces")

View source record →

📰 Research Paper
Loading…
⏳ Fetching content…