# 安全

> 你的代码在哪里运行、凭据如何保存，以及如何报告问题。

本页介绍 Skynet 如何保护你的账户、你的密钥和你的数据，以及如何报告安全问题。

## 报告漏洞

请私下报告安全问题。不要公开提交 issue。

- 在 GitHub 上打开 Skynet 仓库，进入 **Security** > **Report a vulnerability**。
- 或者发送电子邮件到 `security@skynetml.com`。

团队的目标是在五个工作日内确认每份报告。

## 你的账户

### 登录方式

你可以通过以下方式登录：

- 电子邮件地址和密码。
- **使用 Google 继续** 或 **使用 GitHub 继续**。
- **使用通行密钥登录**。通行密钥使用 Face ID、Touch ID 或硬件密钥。

你可以在 **已关联账号** 下管理你使用的登录提供方。

### 密码规则

密码必须：

- 至少包含 8 个字符。
- 最多包含 128 个字符。
- 不包含你的电子邮件地址。

新账户必须用验证码验证其电子邮件地址。重置密码也使用 Skynet 通过电子邮件发送的验证码。

对于同一个电子邮件地址，多次登录失败后，Skynet 会锁定登录一段时间。

### 两步验证

开启两步验证可以获得更多保护。选择一种方式：

| 方式                 | 工作方式                                              |
| -------------------- | ----------------------------------------------------- |
| **身份验证器应用**   | 输入身份验证器应用中的 6 位验证码。                   |
| **邮件验证码**       | 输入 Skynet 在每次登录时发送的 6 位验证码。           |

Skynet 还会为你提供恢复码。请把它们保存在安全的地方。如果你无法使用你的验证方式，可以使用其中一个。

> [!NOTE]
> 如果你通过 Google 或 GitHub 登录，两步验证由该提供方管理。

## 你的代码在哪里运行

用户工作负载在隔离的沙箱中运行。在托管产品中，Vercel Sandbox 是执行边界。这涵盖设置检查、优化运行、恢复以及对已完成运行的操作。

Skynet 的 worker 不运行你的代码。它们是控制平面。它们启动作业、预留和结算预算、向沙箱提供限定范围的凭据，并保存检查点。

在 Skynet 开始付费工作之前，它会在你的钱包和运行预算中预留余量。请参阅[计费](/docs/zh-Hans/concepts/billing)。

在 [Mac 应用](/docs/zh-Hans/guides/mac-app)中，作业在本地 Docker 容器中运行。所有本地服务只监听 `127.0.0.1`。

## 提供商密钥（BYOK）

你可以添加自己的模型提供商密钥。

- Skynet 会对每个密钥进行静态加密。
- Skynet 永远不会通过 API 返回完整的密钥。
- Skynet 只保留最后四个字符和一个状态：未验证、已验证或无效。
- 当你输入密钥时，Skynet 会发送一个小的测试请求来检查它。

当你使用自己的密钥时，提供商会直接从你的密钥收费。Skynet 仍会从你的余额中收取平台费和沙箱用量。

Skynet 还会从日志和错误消息中移除机密信息，并用 `[REDACTED]` 替换它们。

## API 令牌

API 令牌让脚本和工具能够调用 Skynet API。

- 每个用户最多只有一个有效令牌。当你生成新令牌时，旧令牌会失效。
- 令牌以 `skyd_` 开头。
- Skynet 只存储令牌的哈希值。
- Skynet 只显示一次完整令牌。请立即复制并保存令牌。
- 此后，Skynet 只显示遮盖后的形式：`skyd_…` 加最后四个字符。

在 `Authorization` 请求头中发送令牌：

```http
Authorization: Bearer skyd_...
```

要使令牌失效，请点击 **吊销令牌**。完整的 API 说明请阅读 [API](/docs/zh-Hans/api)。

> [!WARNING]
> 像对待密码一样对待令牌。任何拥有该令牌的人都可以通过 API 以你的身份操作。不要把它提交到仓库中。

## 模型数据隐私

**模型数据隐私** 设置控制模型提供商可以如何处理你的数据。它适用于 Skynet 从你的余额中计费的优化。

| 选项         | 效果                                                                   |
| ------------ | ---------------------------------------------------------------------- |
| **全部允许** | 任何提供商，包括可能使用或存储你的提示词进行训练的提供商。             |
| **禁止训练** | 只使用不以你的提示词训练、也不保留它们的提供商。这是默认选项。         |
| **零保留**   | 只使用签有零数据保留协议的端点。部分模型可能不可用。                   |

> [!NOTE]
> 使用你自己密钥的优化遵循你的 OpenRouter 账户的隐私设置。

## 运行的可见性

> [!WARNING]
> 新运行默认是 **公开** 的。公开的运行会出现在公开搜索中。任何人都可以找到它并浏览其结果。

要让运行不出现在公开搜索中，请在提交时把 **可见性** 设为 **私有**。你之后可以在分享对话框中更改可见性。请参阅[分享](/docs/zh-Hans/guides/sharing)。

新数据集是 **受限** 的。在你更改链接访问权限之前，只有你和你邀请的人可以打开它们。请参阅[准备数据集](/docs/zh-Hans/guides/datasets)。

## 你的数据

在 **设置** 中打开 **隐私与数据** 标签页来管理你的数据。

### 导出你的数据

在 **导出我的数据** 下点击 **导出**。导出内容包含你账户中的所有数据。选择一种格式：JSON、CSV、Excel、Pickle、Parquet 或 Feather。

### 删除你的账户

点击 **删除账号**。输入你当前的密码，并输入你的电子邮件地址以确认。

> [!WARNING]
> 这会永久删除你的账户及其所有数据。此操作无法撤销。

### 使用分析

**发送匿名使用分析** 设置用于开启或关闭匿名产品分析。

## 后续步骤

- 阅读[限制](/docs/zh-Hans/limits)。
- 阅读[常见问题](/docs/zh-Hans/faq)。

---

Source: https://staging.skynetml.com/docs/zh-Hans/security
