# 权限与继承

GitBook 具有灵活的权限模型，让你能够根据需要对权限拥有尽可能多或尽可能少的控制权。GitBook 中的权限模型是一个 [**基于角色的**](https://gitbook-v2-3sscp147r-gitbook.vercel.app/url/gitbook.com/docs/documentation/zh/collaboration/roles#roles-in-gitbook)**、级联式** 模型。这意味着你可以设置默认值，然后在内容的任意层级决定是否继承这些默认值。

你可以在四个层级设置权限： **组织**, **站点**, **集合**、以及 **空间**.

### 组织默认角色

当你向组织中添加成员时，你会设置 [他们的默认角色](https://gitbook-v2-3sscp147r-gitbook.vercel.app/url/gitbook.com/docs/documentation/zh/collaboration/member-management/roles)。该角色适用于任何从组织默认值继承权限的内容。

### 权限如何级联

GitBook 中的权限会自上而下贯穿四个层级：

* **组织** ——为每个成员设置的默认角色
* **站点** ——在文档站点上设置的权限，适用于继承模式下所有关联的空间
* **集合** ——在集合上设置的权限，适用于其中的所有空间
* **空间** ——基础层级，可直接在此设置权限

当一个空间处于继承模式时，每个成员都会被分配其在所有适用层级中所拥有的 **最高角色** 。例如，如果某成员在组织层级是创建者，但在站点层级是评论者，那么他们在该空间中仍保留创建者权限。

以下是这在实际中如何运作的两个示例：

<details>

<summary><strong>示例 1</strong></summary>

某成员在组织层级拥有创建者角色。一个空间处于继承模式，并且有人将站点权限设置为评论者。该创建者在该空间中仍保留其创建者权限，因为创建者高于评论者。组织中的其他人也会保留其现有角色——除了阅读者，他们会被提升为评论者，因为评论者高于阅读者。

</details>

<details>

<summary><strong>示例 2</strong></summary>

某集合的权限为阅读者，其中有五名成员被明确设置为创建者。该集合中的一个空间处于继承模式，并且有人将站点权限设置为评论者。组织中的每个人在该空间中都会升级为评论者，因为评论者高于该集合的阅读者权限。那五名被指定的创建者会保留其创建者权限，因为创建者高于评论者。

</details>

{% hint style="info" %}
**注意：** 站点权限仅适用于处于继承模式的空间。如果某个空间配置了自己的权限——也就是说它不处于继承模式——那么这些权限将优先，站点级权限不会影响它。
{% endhint %}

### 管理继承

每次你创建集合或空间时，都可以设置所需的继承类型。在为某个内容项设置继承时，你有三种大致选择：

### 继承

将继承设置为 **继承** 会使该空间或集合继承 **父级内容**中分配的角色。对于顶级空间或集合，这个父级是组织，因此它们会继承组织默认角色。对于集合中的空间或子集合，父级将是该内容所在的集合。

当一个空间链接到站点时，站点权限也会计入继承角色。每个成员都会获得其在组织角色、站点权限以及任何集合级权限中所拥有的最高角色。

### 特定角色访问

在设置集合或空间的权限继承时，如果选择一个特定角色，系统将会 **重置** 组织默认角色，并将该集合或空间中的每个 **非管理员** 分配为该角色。例如，如果你将继承设置为 **阅读者**，那么组织中的每个人都将对该空间或集合拥有只读访问权限，而不论其默认角色为何。

请注意，这里仍然适用最高角色原则——如果某成员在另一个层级（例如直接在空间上或通过团队覆盖）被设置了更高角色，他们将保留该更高角色。

### 无访问权限

你也可以在空间或集合层级完全撤销任何非管理员组织成员的访问权限。这会对除管理员以及创建该空间或集合的人之外的所有人隐藏该内容。

{% hint style="info" %}
任何新创建的空间或集合的默认继承选项是 **继承**。这意味着每当创建一项内容时，它默认都会继承其父级的权限。
{% endhint %}

### 设置内容特定权限

一旦你决定了空间或集合的权限继承方式，就可以通过向团队或成员授予 **直接访问权限**.

### 为团队授予直接访问权限

你可以直接为集合或空间添加一个具有特定角色的团队。这将使该团队中的任何人都对该内容拥有指定的访问权限。

{% hint style="info" %}
团队访问权限是确保合适的人能够访问合适内容的好方法；只要有人被添加到团队或从团队中移除，他们就会分别获得或失去在该内容上设置的权限。
{% endhint %}

### 为成员授予直接访问权限

与团队类似，你也可以为成员授予直接访问权限。这是管理权限最细粒度的方式。为单个成员授予对集合或空间的直接访问时，你会覆盖他们可能拥有的任何继承权限。如果你需要对协作者进行非常具体的控制，直接成员访问非常有用。

在空间层级拥有直接访问权限的成员会完全脱离继承模式。他们的角色会被明确设定，不受组织、站点或集合层级权限的影响。

### 持续关注权限

虽然一开始这可能看起来相当复杂，但如果你需要，GitBook 的权限模型可以让你掌控一切；如果你不需要，它也不会妨碍你。对许多团队来说， **设置后即可忘记** 的权限管理方式就已经足够。对于其他团队，尤其是较大的组织，这种对访问和工作流的控制级别是必不可少的。

#### 设置后即可忘记

如果你只是想让队友上手并和你一起编辑内容，那你甚至可能从未需要查看权限。邀请成员，设置他们的默认角色，你创建的任何内容都会默认继承这些角色。无需钻研细节！

#### 对访问和工作流的控制

对于大型组织、将组织拆分为不同集合的团队，或需要对工作流进行非常细粒度控制的团队来说；深入细节正是所需要的。通过组合使用继承、覆盖、直接团队访问和直接用户访问，你可以创建让你保持掌控的工作流和访问模型。
