主题
安全与治理
RLark 可以运行用户提供的镜像和脚本、挂载节点路径与设备,并通过 WebTerminal 或 SSH 进入任务 Pod。这些操作等同于远程执行工作负载,只有获得组织明确授权后才能使用。
确认控制台和接口已经受保护
用户端和管理端登录只用于进入浏览器界面。登录结果保存在浏览器会话中,不会签发可用于 API 自动化的 Bearer token;资源、存储、终端和管理接口也不会把这次浏览器登录作为服务端身份和权限校验。
为接口和远程入口配置独立保护
共享或生产环境应把 RLark API、SSH 和数据面入口放在受信网络之后,并接入组织批准的身份认证、授权和审计。完成独立安全评审前,不要把这些入口暴露给不受信用户或互联网。
页面中的 user、admin、可见按钮和登录成功信息,不能替代 RBAC、租户隔离或最小权限配置。
使用高权限功能前确认影响
| 功能 | 会发生什么 | 使用前必须完成 |
|---|---|---|
| 镜像和脚本 | Job 可以运行用户提供的镜像、准备脚本和 Head 运行脚本 | 使用经过复核的不可变镜像;脚本纳入版本控制,并说明会修改哪些文件或外部资源。 |
| 环境变量 | 值写入 Job/Pod 模板并出现在 YAML 预览中 | 不要填写密码、令牌、私钥或存储凭据。 |
hostPath、/dev、/sys | 可能把节点文件或设备暴露给容器 | 由管理员逐路径、逐设备审批;影响不清楚时停止。 |
| WebTerminal | 对运行中的主容器执行 Kubernetes exec | 只用于获授权的诊断;不要输出凭据,也不要进行无法审计的配置修改。 |
| SSH 堡垒机 | 可以连接任务 Pod;目标列表和拨号路径不会按调用者过滤 Pod | 在外部入口限制用户与目标。发现无关 Pod 可见或可达时,立即退出并报告。 |
| Pod SSH 公钥 | 同一公钥会写入 Job,并追加到所有角色 Pod 的 authorized_keys;不会自动安装或启动 sshd | 只登记公钥;确认所有者、有效期、容器用户、SSH 服务、撤销方式和已有 Pod 的清理计划。 |
| Domain 跨集群 SSH | Agent 使用配置的 Server 主机公钥校验通道;公钥为空或无法解析时可能不校验主机密钥 | 生产环境必须固定并验证正确的 Server SSH 主机公钥。 |
| 对象存储 | RLark 会在关联集群中创建访问 Secret 和 StorageClass | 使用专用的最小权限凭据,并在存储提供方侧完成轮换、审计和版本控制。 |
为共享或生产环境补齐治理措施
使用共享或生产环境前,请从平台负责人和安全负责人处取得并确认以下信息:
- 项目或租户级资源隔离;
- 用户和角色对 Job、Pod、SSH、WebTerminal 及存储的授权;
- 操作、命令和训练产物访问审计;
- 日志与 YAML 中敏感值的脱敏;
- CPU、GPU、存储配额、预算和成本规则;
- 密钥轮换和短期凭据流程;
- 环境版本、维护窗口、故障恢复和支持方式。
其中任一项是组织要求但尚未落实时,应先通过受信入口、Kubernetes、存储提供方或其他组织平台补齐,再开放相应功能。不要用一次 HTTP 200/403、登录页可见或 Kubernetes 内部 RBAC 来代替端到端授权测试。
管理员开放平台前检查
- 限制 Gateway、Server SSH 和数据面 Agent 的网络暴露范围。
- 在受信入口配置组织身份认证、会话管理、角色授权、速率限制和审计。
- 把用户、环境和数据分区映射到明确的集群、节点、存储和凭据范围。
- 为镜像仓库、脚本、
hostPath、设备资源、WebTerminal 和 SSH 建立审批与撤销流程。 - 检查日志、Job YAML、错误响应和截图不会泄露凭据。
- 定期验证越权阻断、权限撤销、人员离职、凭据轮换和故障恢复。