Azure DevOps Services |Azure DevOps Server |Azure DevOps Server 2022 |Azure DevOps Server 2020
Azure Boards 提供多层安全性来保护工作跟踪数据、控制对敏感信息的访问,并确保符合组织策略。 本文概述了保护 Azure Boards 实现的安全概念、访问控制和最佳做法。
安全模型概述
Azure Boards 安全性在多层方法上运行,其中包括:
- 控制标识和访问管理:管理谁可以访问工作项及其可执行的作。 有关详细信息,请参阅 “关于访问级别”
- 实现基于权限的访问:对不同的工作跟踪作应用精细权限。 有关详细信息,请参阅设置工作跟踪权限
- 配置区域和迭代安全性:根据项目区域限制对特定工作项的访问。 有关详细信息,请参阅 设置区域路径并分配给团队
- 管理工作项类型和字段安全性:控制工作项字段的可见性和可编辑性。 有关详细信息,请参阅“添加和修改字段”
- 启用审核和符合性:跟踪更改并维护合规性要求。 有关详细信息,请参阅 Access、导出和筛选审核日志
标识和访问管理
访问级别
Azure Boards 使用访问级别来控制用户可以访问的功能。 有关每个访问级别的默认权限的综合信息,请参阅 Azure Boards 的默认权限和访问级别。
| 访问级别 | Azure Boards 功能 |
|---|---|
| 利益 相关 者 | 查看工作项,添加和修改他们创建的工作项、查看仪表板、有限的查询访问权限 |
| 基本 | 对工作项、查询、仪表板、版块和积压工作的完整访问权限 |
| 基本 + 测试计划 | 包括基本访问和测试计划功能 |
| Visual Studio 企业版 | 包括所有基本功能以及高级功能 |
有关详细信息,请参阅关于访问级别。
Authentication
Azure Boards 支持多种身份验证方法:
- 使用 Microsoft Entra ID:通过单一登录启用企业标识管理。 有关详细信息,请参阅 将组织连接到 Microsoft Entra ID
- 配置Microsoft帐户:支持个人Microsoft帐户。 有关详细信息,请参阅 “注册”,登录到 Azure DevOps
- 实现 GitHub 身份验证:对 GitHub 用户和组织进行身份验证。 有关详细信息,请参阅 使用 GitHub 进行身份验证
- 集成 Active Directory:连接本地标识集成。 有关详细信息,请参阅 设置组以在 Azure DevOps Server 中使用
- 创建本地帐户:管理基于服务器的用户帐户
- 配置Microsoft Entra ID:启用基于云的标识管理。 有关详细信息,请参阅 将组织连接到 Microsoft Entra ID
权限模型
安全组
Azure Boards 使用安全组高效管理权限。 有关所有可用安全组及其权限的详细信息,请参阅 “关于权限和安全组”。 有关配置团队管理员及其权限的详细指南,请参阅 “管理团队管理员”。
| 安全组 | 默认权限 |
|---|---|
| 项目管理员 | 完全控制项目设置、工作项类型和团队配置 |
| 供稿人 | 创建、修改和删除工作项;管理版块和积压工作 |
| Readers | 查看工作项和项目项目 |
| 项目集合管理员 | 组织范围的管理,包括安全设置 |
工作项权限
通过这些密钥权限控制对工作项的访问。 有关配置这些权限的分步说明,请参阅 “设置工作跟踪权限”。
| 许可 | Description |
|---|---|
| 查看此节点中的工作项 | 读取对特定区域路径中工作项的访问权限 |
| 编辑此节点中的工作项 | 修改特定区域路径中的工作项 |
| 创建子节点 | 在现有节点下添加新区域路径 |
| 删除和还原工作项 | 删除工作项并恢复已删除的项目 |
| 将工作项移出此项目 | 将工作项转移到其他项目 |
区域路径安全性
区域路径提供分层安全边界:
Project Root
├── Team A (Restricted to Team A members)
├── Team B (Restricted to Team B members)
└── Shared Components (Accessible to all teams)
将区域路径权限配置为:
- 限制团队对 特定工作项的访问
- 为不同部门创建安全工作区
- 控制 敏感项目的可见性
有关设置区域路径权限的详细说明,请参阅 “设置工作跟踪权限”。
字段级安全性
敏感数据保护
使用以下策略保护敏感信息:
- 创建具有受限访问权限的自定义字段,这些字段只能查看或编辑特定组。 有关详细信息,请参阅“添加和修改字段”
- 限制工作项类型限制 ,以控制谁可以创建或修改某些工作项类型。 有关详细信息,请参阅 “自定义工作项类型”
- 将隐藏字段配置为 对某些用户组不可见。 有关详细信息,请参阅“添加和修改字段”
- 设置只读字段 以防止对关键数据进行未经授权的修改。
合规性功能
- 选择数据驻留 以满足数据存储位置的符合性要求。 有关详细信息,请参阅 Azure DevOps 的数据位置
- 启用审核日志 以跟踪对工作项和安全设置的所有更改。 有关详细信息,请参阅 Access、导出和筛选审核日志
- 配置导出功能 以生成符合性报告和数据提取。 有关详细信息,请参阅 “导出具有访问级别的用户列表”
- 实现自动数据清理和存档的保留策略。 有关详细信息,请参阅 设置生成、发布和测试的保留策略
Azure Boards 安全性的最佳做法
访问管理
- 应用最低权限原则:授予最低所需权限。 有关详细信息,请参阅“关于权限和安全组”
- 定期进行访问评审:定期审核用户权限和组成员身份。 有关详细信息,请参阅 “导出具有访问级别的用户列表”
- 使用基于组的管理:管理安全组而不是单个权限。 有关详细信息,请参阅“关于权限和安全组”
- 实现条件访问:启用位置和基于设备的访问控制。 有关详细信息,请参阅 “管理条件访问”
工作项安全性
- 设计区域路径策略:创建符合安全要求的分层结构。 有关详细信息,请参阅设置工作跟踪权限
- 配置团队隔离:设置团队以仅访问其指定的工作项。 有关详细信息,请参阅 “添加团队”,从一个默认团队移动到多个团队
- 实现字段安全性:限制对敏感字段(如预算或个人信息)的访问。 有关详细信息,请参阅“添加和修改字段”
- 控制链接安全性:管理可在工作项之间创建依赖项的人员。 有关详细信息,请参阅 将工作项链接到对象
数据保护
- 小心处理敏感信息:避免在工作项中存储凭据或个人数据
- 管理文件附件:为可接受的文件类型和大小实施策略
- 验证外部链接:在工作项中批准外部 URL 链接
- 安全查询访问:确保查询不会公开未经授权的数据。 有关详细信息,请参阅 设置查询和查询文件夹的权限
监视和符合性
- 监视活动模式:跟踪工作项访问模式和异常活动。 有关详细信息,请参阅 Access、导出和筛选审核日志
- 审核更改日志:维护所有工作项修改的日志。 有关详细信息,请参阅 查询工作项历史记录和审核
- 实现常规备份:为关键工作跟踪数据创建备份策略。 有关详细信息,请参阅 数据保护概述
- 建立事件响应:为涉及工作项的安全事件创建过程。 有关详细信息,请参阅 安全最佳做法
常见安全方案
多团队项目
当多个团队在单个项目中工作时,必须建立明确的安全边界,以确保团队只能在根据需要维护协作的同时访问其相关工作项。 Azure Boards 使用区域路径创建这些安全边界,使你可以为不同的团队和组织级别配置精细访问控制。
有关为每个团队设置团队管理员的指导,请参阅 管理团队管理员。
示例方案:具有专门团队处理不同组件的软件开发项目,以及管理监督:
Project: ProductDevelopment
├── Area: Frontend (Frontend team access)
├── Area: Backend (Backend team access)
├── Area: QA (QA team access)
└── Area: Management (Manager access only)
在此配置中:
- 前端团队成员 只能在前端区域中查看和编辑工作项
- 后端团队成员 有权访问后端工作项
- QA 团队成员 可以访问特定于 QA 的工作项以进行测试协调
- 经理 能够了解管理区域项,以便进行战略规划和报告
- 可以通过精心配置的共享区域或显式权限管理跨团队依赖项
此方法可确保敏感信息受到限制,因此团队可以专注于其特定职责,而不会分散不相关的工作项的注意力。
跨项目协作
当团队跨项目工作时管理安全性:
- 授予跨项目权限:提供对外部团队成员的特定访问权限
- 控制工作项链接:管理可跨项目创建依赖项的人员
- 管理共享查询:控制对跨多个项目的查询的访问。 有关详细配置步骤,请参阅 设置查询和查询文件夹的权限
承包商和供应商访问权限
保护外部参与者的访问。 有关管理外部用户的综合指南,请参阅 向组织添加外部用户。
- 分配受限访问级别:为外部用户配置适当的访问级别
- 实现时间限制权限:创建具有到期日期的临时访问
- 限制区域访问:限制承包商访问特定项目区域
- 审核外部活动:监视外部用户的所有作
安全配置清单
初始设置
- [ ] 为所有用户配置适当的访问级别
- [ ] 设置符合组织结构的安全组
- [ ] 根据安全要求设计区域路径层次结构
- [ ] 配置团队权限和访问边界
- [ ] 为区域路径和迭代设置工作跟踪权限
- [ ] 配置查询文件夹权限 以控制对共享查询的访问
持续管理
- [ ] 进行常规权限审核和访问评审
- [ ] 监视工作项访问模式和异常
- [ ] 随着团队的发展更新安全配置
- [ ] 维护安全决策和更改的文档
- [ ] 根据需要查看和更新团队管理员分配
合规性准备
- [ ] 文档数据处理过程
- [ ] 实现审核日志保留策略
- [ ] 为符合性报告配置导出功能
- [ ] 建立事件响应过程