创建你的第一个共享团队
到这篇教程结束时,你将创建好一个共享团队,并把三个人邀进它,每人都有一套刻意区分的权限:一位运营负责人来运转团队、一位开发者只配置一个产品、以及一位经理只读数字。我们跟着 BananaSeed,一家创始人正在组建团队的公司。
你需要一个包含共享团队的付费套餐(Troop 或 Apex)。在 Solo 或 Alpha 上你只有你的 Personal 团队,它只属于你一个人。套餐见 账单,概念见 团队是什么,下面这些角色所依据的模型见 权限与范围。
这个设定
BananaSeed 的创始人 Ana 已经容不下她的个人团队了。她有两个产品,各有自己的站点密钥,还有三个人要拉进来:
| 人 | 角色 | 应该能够 |
|---|---|---|
| Dana | DevOps | 运转团队:管理成员和访问令牌。 |
| Raj | 开发者 | 自定义一个产品的站点密钥,仅此而已。 |
| Mia | 经理 | 跨团队查看数字。什么都不改。 |
每人都对应四种 权限 之一:Dana 需要 管理,Raj 需要在一个密钥上的 编辑,Mia 需要 读取。
1. 创建团队及其密钥
从仪表盘的团队列表里,创建一个名为 BananaSeed 的团队。它起步时只有你一个人,即所有者,持有每一种权限。在它里面创建两个站点密钥,shop.bananaseed.com 和 blog.bananaseed.com,好有东西可供给人划定范围。(见 站点密钥。)
2. 邀请 Dana,DevOps 负责人(管理)
在团队的 成员 页上,用邮箱邀请 Dana。邀请就是那个电子邮件地址本身;当 Dana 用那个地址登录时,她的成员资格就生效了。
只授予她 管理。那一项权限就是团队管理:她可以添加、移除和更改成员与 访问令牌,并重命名或删除团队。因为管理是全团队的,她的范围无关紧要,所以把它留在所有站点密钥上。她不需要读取、创建或编辑就能做她的工作;管理是那个运转团队的权限。
现在 Dana 可以从 Ana 手里接过余下的入职工作:她可以签发一个 CI 令牌、添加下一位新人、并调整权限,而这一切都不会被范围锁在外面。
3. 邀请 Raj,单个产品上的开发者(编辑,限定范围)
用同样的方式邀请 Raj。他负责商店,不负责博客,所以:
- 授予 编辑(以及 读取,好让他能看到他在编辑什么)。编辑让他配置密钥:它的设置、密钥轮换、托管验证,以及该密钥的 游戏与白标自定义。
- 把他的 范围 设为 特定站点密钥,并只选
shop.bananaseed.com。
把 管理 留着关闭。Raj 应该配置他的产品,而不是运转团队。把编辑限定到一个密钥,他得到的恰好就是这个:他可以调整商店的挑战和皮肤,而碰不到博客、成员列表或令牌。
这就是那个日常的最小权限授予:一个权限(编辑)被一个范围(一个密钥)所限定。
4. 邀请 Mia,只读的经理(读取)
邀请 Mia,并只授予 读取,在所有站点密钥上。读取让她能打开团队里的每个密钥,看它的 统计、配置和审计日志,而一概不改。她得到她做报告所需的全团队画面,却没有不小心改一项设置或轮换一个密钥的能力。
5. 确认每一项授予
让每个人都登录,并检查团队是否如预期那样运作:
- Dana 看得到成员和令牌控制项,并能更改它们,但编辑一个站点密钥自己的配置不在她的授予之内。
- Raj 能打开并配置
shop.bananaseed.com,看不到blog.bananaseed.com,也没有成员控制项。 - Mia 能打开任何密钥并读它的统计,但每一个编辑控制项都不在。
这就是这套模型的全部要点:三个人、三份工作、三种不同的触及范围,没有谁持有超过其所需的东西。在 Apex 上,他们每人做的每一件事都以他们自己的身份记录在 团队审计日志 里。