---
title: 访问控制
description: "选择读者访问文档的方式：完全公开、密码保护、部分公开或私有，或使用 SSO。比较各选项，选择适合受众的方案。"
---

> **For AI agents:** the complete documentation index is at [llms.txt](/docs/llms.txt). Append `.md` to any page URL for its markdown version.

Jamdesk 提供四种方式来控制谁可以阅读你的文档。大多数团队会选择一种方式并长期使用，也有些团队会组合使用。

## 选择合适的方案

| 方案 | 适用场景 | 设置 |
|---|---|---|
| **完全公开** | 面向外部的产品文档、开源项目，以及任何希望被索引和分享的内容。 | 默认设置；无需配置。 |
| **全站密码保护** | 所有内容均为内部资料：工程运行手册、仅限合作伙伴查看的文档、尚未发布的产品。使用一个共享密码保护整个站点。 | 在 `docs.json` 中设置 `auth.password.enabled: true`，并在仪表板中设置密码。参阅[密码保护](/cn/setup/password-protection)。 |
| **混合模式（部分页面私有）** | 大多数文档公开，少数内容为内部资料（运行手册、Beta 功能、内部 API 参考）。 | 在内部页面的 frontmatter 中添加 `private: true`，或将其列在 `auth.password.private[]` 下。参阅[密码保护](/cn/setup/password-protection)。 |
| **SSO（企业版）** | 读者应使用现有身份提供商登录：无需共享密码、可保留审计记录，并可通过移除用户取消访问。 | 企业版计划。参阅[SSO](/cn/setup/sso)。 |

<Tip>
  你可以随时编辑 `docs.json` 并推送，以切换方案。从全站模式切换到混合模式（或反向切换）只需一次构建。
</Tip>

## 常见模式

### 在一个项目中同时提供内部和外部文档

大多数团队希望将大量内部文档置于登录保护之后，同时为客户提供规模较小的公开站点。你不需要创建两个项目。在单个 Jamdesk 项目中使用**混合模式**：

```yaml
---
title: Incident Runbook
private: true
---
```

设置 `private: true` 的页面会受到保护；其他页面保持公开。所有内容都位于同一个代码仓库中，使用一次构建和一个仪表板。只有当读者访问受保护的页面时，解锁页面才会显示。

对于较大的内部文档区域，与其标记每个文件，不如在 `docs.json` 中列出路径。注意：`auth.password.private[]` 会自动启用特定页面模式。不要同时添加 `enabled: true`（那是全站模式，与此处的需求相反）。

```json docs.json
{
  "auth": {
    "password": {
      "hint": "Ask the on-call engineer",
      "private": ["/internal/**", "/admin/runbook"]
    }
  }
}
```

### 两个独立项目

仅当不同受众需要完全不同的品牌、独立的自定义域名、独立的分析数据或不同的计划层级时，才使用两个项目。例如：位于 `docs.acme.com` 的公开文档站点，以及位于 `internal.acme.com` 的独立内部 Wiki。维护成本更高：需要两次构建、两个仪表板和两个域名。

### 文档站点使用 SSO

在企业版计划中，读者可以使用你的身份提供商（Okta、Google Workspace、Azure AD 等）登录，而不必输入共享密码。当你需要记录谁阅读了哪些内容，或用户离职后必须立即撤销其文档访问权限时，SSO 最为适合。参阅[SSO](/cn/setup/sso)了解概览信息，以及如何开始与销售团队沟通。

## 编辑者与读者

人们有时会混淆三种不同的访问概念：

| 角色 | 他们做什么 | 如何授予访问权限 |
|---|---|---|
| **编辑者** | 编写和更新 MDX 内容。 | 通过向已连接的 GitHub 代码仓库提交 MDX 来编辑文档，因此**你的 GitHub 代码仓库权限就是编辑权限**。Jamdesk 没有在此基础上叠加独立的编辑者角色：任何能够推送到文档分支的人都可以发布更改。 |
| **读者** | 查看已发布的文档站点。 | 所有人（公开模式）、知道密码的人员（密码模式），或通过 IdP 验证身份的人员（SSO）。 |
| **仪表板团队成员** | 在 Jamdesk 仪表板中管理构建、分析数据和项目设置。 | 通过仪表板中的 **Settings → Team** 邀请。他们不会直接编写内容。参阅[团队成员](/cn/help/projects/team-members)。 |

团队成员可以同时属于上述三种角色中的任意组合。这些角色彼此独立。

## 接下来做什么？

<Columns cols={2}>
  <Card title="密码保护" icon="lock" href="/cn/setup/password-protection">
    全站和单页面密码保护、提示信息、密码轮换及会话控制。
  </Card>
  <Card title="SSO（企业版）" icon="key" href="/cn/setup/sso">
    使用身份提供商登录仪表板和文档站点。
  </Card>
</Columns>