本术语表旨在实现以下目标:
本文档中描述的术语定义在极狐GitLab 的上下文环境中。因此,对于极狐GitLab 之外的用户,某些术语可能具有不同的含义。
术语英文名称 | 术语中文名称 | 术语含义 |
---|---|---|
A/B Testing | A/B测试 | 将新功能的不同变体推向拥有相似特性的不同组别的用户,进而通过比较指标和用户行为来评估功能。 |
Acceptance Test | 验收测试 | 是经过单元测试、集成测试和系统测试之后,软件部署之前的最后一个测试操作,也称为交付测试。验收测试的目的是确定系统是否满足验收标准,用户、客户或其他授权实体能否接受系统。 |
Analyzer | 分析器 | 执行扫描的软件。扫描分析攻击面的漏洞并生成包含发现的报告。 |
Artifact | 产物 | 产物是与项目相关的文档或任何可交付成果,有助于描述正在开发的软件的功能、架构和设计。 |
Assignee | 指派人 | 为某个议题或合并请求分配的负责人员。 |
Attack Surface | 攻击面 | 应用程序中易受攻击的不同位置。安全产品在扫描期间发现并搜索攻击面。每个产品对攻击面的定义都各不相同。 |
Automated Testing | 自动化测试 | 自动化测试是指在软件发布到生产环境之前,使用自动化测试工具在预设条件下运行系统或应用程序的一种软件测试技术,以验证系统或应用程序是否正常运行并满足要求。 |
Black Box Testing | 黑盒测试 | 黑盒测试是一种无需了解内部代码结构、实现细节和内部路径而进行的测试应用程序功能的软件测试方法。黑盒测试主要关注软件应用程序的输入和输出,完全基于软件需求和规范,也被称为行为测试。 |
Branch | 分支 | 分支是项目工作树的一个版本。您可以为每组更改创建一个分支,这样不同组的更改可以彼此分开而不相互影响。 |
Build | 构建 | 软件构建是通过编译源代码生成的一组可供用户使用的可执行代码。 |
Changelog | 更新日志 | 更新日志是一个记录您对项目所做更改的文件,更改包括增加新功能、修复错误、功能变更、功能废弃、功能移除、安全修复和性能提升等。 |
Cherry-pick | 拣选 | 从一个分支中选择一个提交并将其应用成另一个分支的最新提交,源分支中的其余提交不会添加到目标分支中。当您仅需要某个源分支中的某个提交,而不需要整个源分支中的内容时,您可以使用拣选功能。 |
Cloud Native | 云原生 | 是一种利用云计算交付模型,设计和构建软件的技术体系,以及基于云进行软件开发实践的方法论。它以容器、微服务、DevOps 和持续交付等技术为基础建立一套云技术产品体系。 |
Cluster | 集群 | 一组相互连接的计算机,它们协同工作以实现负载平衡、弹性伸缩和高可用性。 |
Code Review | 代码评审 | 代码评审也被称为同行代码审查,是有意识并系统地请求程序员同行检查彼此的代码是否存在错误,进而加速软件开发过程并保证软件质量和安全的行为。 |
Commit | 提交 | 将您暂存区中的所有改动保存到本地仓库中。 |
Commit Message | 提交说明 | 描述您对项目做了哪些更改。提交说明的标题与正文之间必须有一个空行。标题简要介绍本次提交的主要内容,需要使用祈使句且不能超过 50 个字符或以句号结尾;标题行和正文中的句子的首字母需要大写。正文不能超过 72 个字符。正文中需要描述清楚您对项目所进行的更改。 |
Confidential Issue | 机密议题 | 仅对具有相应权限的项目成员可见的议题。开源项目和公司使用机密议题保护安全漏洞的私密性或防止数据泄露。 |
Container | 容器 | 一种轻量级的操作系统层虚拟化技术,有效地将单个操作系统的资源划分到孤立的组中,在组之间平衡资源并隔离进程和资源。其主要特点为:移植简单、部署便捷、安全隔离、弹性伸缩和版本控制。 |
Containerization | 容器化 | 容器化通过虚拟化操作系统将每个应用程序运行在逻辑上不同的服务器中。 |
Continuous Delivery | 持续交付 | 持续交付是一种软件开发实践,软件开发人员可以通过自动化流程更加快速及频繁地构建、测试与发布软件,以保证软件持续地保持在随时可以发布的状态,从而降低软件开发的成本、时间与风险。 |
Continuous Deployment | 持续部署 | 持续部署是一种软件发布策略,其中通过自动化测试阶段的任何代码提交都会自动发布到生产环境中,从而使软件用户可以看到更改。 |
Continuous Integration | 持续集成 | 开发人员将其工作副本每天多次合并到共享主线,确保新增的代码能够与原有代码正确地集成。 |
Corpus | 语料库 | 模糊器运行时生成的一组有意义的测试用例。每个有意义的测试用例都会在被测程序中产生新的覆盖。建议重新使用语料库并将其传递给后续运行。 |
CVE | 常见漏洞和暴露 | 常见漏洞和暴露(CVE)是公知网络安全漏洞的常见标识符列表。该列表由 Mitre 集团管理。 |
CVSS | 常见漏洞评分系统 | 常见漏洞评分系统 (CVSS) 是一个免费且开放的行业标准,用于评估计算机系统安全漏洞的严重性。 |
CWE | 常见弱点枚举 | 常见弱点枚举 (CWE) 是社区开发的具有安全影响的常见软件和硬件漏洞类型列表。 |
Deduplication | 去重 | 当一个类别的进程认为两个或多个发现相同,或者非常相似且需要降噪,则只保留一个发现,消除其他发现。 |
Definition of Done (DoD) | 完成的定义 | 指软件产品满足了必需的交付条件和验收标准,并准备好被用户、客户、团队或消费系统接受。它本质上是 Scrum 团队为确保产品可发布所创建的清单,确定交付条件并保证交付质量。 |
Duplicate Finding | 重复发现 | 多次报告的合法发现。当不同的扫描器发现相同的发现时,或者当一次扫描无意中多次报告相同的发现时,可能会发生这种情况。 |
Epic | 史诗 | 在敏捷产品管理中,史诗在开发过程中组织任务并创建层次结构。史诗是很多任务的合集,通常会被分割成更小的任务。史诗通常跨越多个团队、项目和里程碑。 |
Exploratory Testing | 探索性测试 | 探索性测试是一种软件测试方法,强调测试设计和测试执行的同时性。通过同时进行的测试设计和测试执行以及在测试过程中不断学习被测系统来不断优化工作质量。 |
External Security Audit | 外部安全审计 | 由签约的独立第三方进行的安全审计。 |
Failover | 故障转移 | 将用户从主要站点转移到次要站点的整个过程,包括升级次要部分。 |
False Positive | 误报 | 不存在但被错误地报告为存在的发现。 |
Feature Flag | 功能标志 | 使用功能标志,您可以将应用程序的新功能小批量部署到生产环境中。您可以为用户打开和关闭某一功能,以帮助您实现持续交付。功能标志有助于降低风险,允许您进行受控测试,并将功能交付与客户发布分开。 |
Feedback | 反馈 | 反馈是用户提供的有关发现的信息。反馈的类型包括驳回、创建问题或创建合并请求。 |
Finding | 发现 | 由分析器在项目中识别出的可能易受攻击的资产。资产包括但不限于源代码、二进制包、容器、依赖项、网络、应用程序和基础设施。结果是扫描器在 MR/功能分支中识别的所有潜在漏洞项目。只有在合并到默认分支后,发现才会成为漏洞。 |
Fork | 派生 | 将远端的代码库复制到您的代码库中,以便进行修改而完全不影响主仓库。新代码库完全独立且包含了原有库中的所有提交记录,您可以通过拉取请求将您的提交贡献回原仓库。 |
Functional Testing | 功能测试 | 使用可执行规范,对产品的各个功能进行测试,以验证产品是否符合用户要求。 |
Geo Deployment | Geo 部署 | 两个或多个极狐GitLab 站点的集合,其中一个主要站点被一个或多个次要站点复制。 |
Git | Git | 一个分布式代码版本控制系统。每个使用 Git 的开发人员都可以访问项目代码的完整副本和更改历史记录,以实现团队内部的协作。 |
Canary Release | 金丝雀发布 | 一种上线策略。在该策略中,把新的应用程序发布到生产服务器的一小部分上,让一小部分用户进行使用,并严格监控以确定其是否按预期运行。如果一切正常,那么新版本将推广到整个生产环境。 |
Hotfix | 热修 | 为纠正软件错误或故障而开发并尽快发布在生产环境中的一小段代码。 |
Infrastructure as a Service | 基础设施即服务 | 基础设施即服务 (IaaS) 是一种云计算服务,它以按需付费的方式提供基本的计算、存储和网络资源。 |
Infrastructure as Code | 基础设施即代码 | 基础设施即代码 (IaC) 通过代码而非手动流程管理和配置基础架构。通过 IaC,您可以创建包含基础架构规范的配置文件,从而更轻松地编辑和分发配置。 |
Insignificant Finding | 非重要发现 | 特定客户不关心的合法发现。 |
Instance | 实例 | 是运行应用程序的虚拟机。更广泛地说,是运行应用程序所需的一组资源,例如 Docker 容器。 |
Integration Testing | 集成测试 | 一种软件测试类型,将软件应用程序的不同单元、模块或组件按逻辑集成并将其作为一个整体进行测试。 |
Internal Security Audit | 内部安全审计 | 由受雇于审核组织的人员进行的安全审核。 |
Issue | 议题 | 议题是在项目或群组维度创建的用于协作、讨论、解决问题、计划和跟踪工作的一个功能模块。您可以为议题设置指派人、史诗、标记、里程碑和截止日期等。 |
Issue Board | 议题看板 | 议题看板是一种软件项目规划和管理工具,用于规划、组织和可视化功能或产品发布的流程。您可以将其用作看板或 Scrum 板。 |
Iteration | 迭代 | 迭代是一种在一段时间内跟踪问题的方法。迭代可以与里程碑一起使用以跟踪不同的时间段。目前迭代仅支持群组维度。 |
Job | 作业 | Runner 执行的指令。 |
Kanban | 看板 | 是一种规划、组织和可视化工作流程的项目管理工具,用以快速跟踪问题并管理项目。您可以在看板上查看所有未解决的议题、所有已关闭的议题、某个标签下的所有议题和分配给某个指派人的所有议题等。 |
Label | 标记 | 用户使用标记对议题、合并请求和史诗进行标记和分类。项目标记只能分配给该项目中的议题和合并请求,群组标记可以分配给所选群组或其子群组中任何项目中的议题、合并请求和史诗。 |
Lead Time | 前置时间 | 一个功能请求从概念到交付的整个开发周期所需的平均时间。 |
Lean | 精益 | 精益敏捷是一种通过消除浪费来提高效率的敏捷方法。与传统的要求项目经理制定一套计划的瀑布式项目管理不同,精益敏捷力求减少所有不能提供真正价值的任务和活动。 |
Location Fingerprint | 位置指纹 | 发现的位置指纹是一个文本值,对于攻击面上的每个位置都是唯一的。每个安全产品都根据其攻击面的类型来定义这一点。 |
Mean Time Between Failures | 平均故障间隔时间 | MTBF 是设备两次相邻故障之间的平均时间。这是一种衡量可靠性的方法。 |
Merge | 合并 | 把一个分支或某个提交的更改合并到当前分支,进而将两个或两个以上的开发历史合并在一起的操作。 |
Merge Request | 合并请求 | 当创建新功能分支、更改文件并将其推送到远端仓库时,您可以创建合并请求,实质上它是将一个分支合并到另一个分支的请求。包括合并请求描述、代码更改和内联代码评审、CI/CD 管道信息、评论主题以及提交列表。 |
Merge Train | 合并队列 | 合并队列是等待合并到目标分支中的合并请求的排队列表。每个合并队列可以包含多个合并请求,每个合并请求都运行自己的合并结果流水线。 |
Microservice | 微服务 | 微服务是一种软件架构设计模式,其中复杂的应用程序由独立的小型进程构成,这些进程使用与语言无关的 API 进行通信。这些服务规模小且高度分离,专注于完成一个小任务。 |
Milestone | 里程碑 | 一种用于跟踪在特定时间内为实现特定目标而创建的议题和合并请求,进而全局了解项目进度的方法,您可以为里程碑自定义开始日期和截止日期。 |
Minimum Viable Product | 最小可行性产品 | 是一种具有刚好可以满足早期用户需求的功能,并为未来开发提供反馈的产品。 |
Multi-node Site | 多节点站点 | 极狐GitLab 的一种特定配置,使用多个节点。 |
Namespace | 命名空间 | 管理您的项目的空间。在极狐GitLab 中有两种命名空间:个人命名空间和群组/子群组命名空间。一个命名空间中的项目与其他命名空间中的项目是分开的,您可以为不同命名空间中的项目使用相同的名称。 |
Node | 节点 | 以特定角色或整体运行极狐GitLab 的单个服务器(例如 Rails 应用程序节点)。在云环境中,可以是特定的机器类型。 |
Non-functional Requirement | 非功能性需求 | 是指软件产品为满足用户业务需求而必须具有的且除功能需求以外的特性,例如安全性、可靠性、互操作性和健壮性等。 |
Open-Source Software | 开源软件 | 一种原始源代码免费供人们使用、共享和修改的软件。 |
Package Manager | 包管理器 | 包管理器是一个管理项目依赖项的系统。包管理器提供了一种安装新的依赖项(也称为"包")的方法,管理包在文件系统上的存储位置,并为您提供发布自己的包的功能。 |
Parent/Child Epic | 父史诗/子史诗 | 史诗具有层级结构,您可以为一个史诗设置下级子史诗。一个史诗可以包含多个嵌套的子史诗,最多可以嵌套 7 层。 |
Pipeline | 流水线 | 流水线是持续集成、交付和部署的顶级组件,包括作业和阶段。作业由 Runner 执行,定义要进行的操作,例如编译或测试代码;阶段定义运行作业的时间,例如在编译代码后运行测试。如果有足够数量的并发 Runner,一个阶段中的所有作业将同时执行。如果作业执行成功,流水线将进入下一个阶段。如果作业执行失败,通常不执行下一阶段且流水线会结束。流水线一般包括四个阶段:构建、测试、预部署和生产。 |
Platform as a Service | 平台即服务 | 平台即服务是一种云计算形式,它使软件开发人员能够轻松构建、运行和管理软件应用程序,而无需担心底层基础设施。云托管的应用程序运行时间通常根据“按需支付”的原则计费。用户提供应用程序代码和有限的配置设置,中间件和数据库都是提供的运行时的一部分。 |
Post-filter | 后置过滤器 | 后置过滤器有助于对扫描器结果进行降噪处理并自动化手动任务。您可以指定根据扫描结果更新或修改漏洞数据的标准。 |
Pre-filter | 前置过滤器 | 在分析发生之前为过滤掉目标而执行的不可逆转的操作。通常是为了让用户减少范围、降噪以及加快分析速度。如果需要记录,则不应这样做,因为我们目前不存储与跳过/排除的代码或资产相关的任何内容。 |
Primary Identifier | 主要标识符 | 发现的主要标识符是每个发现的唯一值。发现的第一个标识符的外部类型和外部 ID 结合起来创建值。 |
Primary Site | 主要站点 | 一个极狐GitLab 站点,其数据正在被至少一个次要站点复制。只能有一个主站点。 |
Product Owner | 产品负责人 | 产品负责人是 Scrum 团队中负责项目结果的角色,通过编写用户故事和待办事项来管理和优化产品来优化产品功能、最大化产品价值并交付符合用户需求的产品。 |
Production Environment | 生产环境 | 生产环境是将最新版本的软件、产品或更新实时推送给目标用户的地方。 |
Project | 项目 | 在极狐GitLab 中,您可以创建项目来托管您的代码库。您还可以使用项目来跟踪问题、计划工作、团队协作以及持续构建、测试和使用内置 CI/CD 来部署您的应用程序。 |
Promoting | 提升 | 将站点的角色从次要站点更改为主要站点的行为。 |
Pull | 拉取 | 是从远程仓库获取最新版本的代码到本地的操作。 |
Push | 推送 | 将本地提交发送到远端仓库的操作。 |
Rebase | 变基 | 当您使用长期运行的分支时,变基是一种将 master 合并到您的分支的方法。 |
Refactor | 重构 | 重构代码同时不改变其原始功能的过程。重构的目标是在不改变代码的外部行为的情况下进行许多小的更改来改进内部代码。 |
Reference Architecture | 参考架构 | 极狐GitLab 为多个用户指定的配置,可能包括多个节点和多个站点。 |
Regression Testing | 回归测试 | 一种验证软件中的代码更改不会影响产品的现有功能的测试。一般会重复全部或部分以前的功能测试以验证更改的影响。 |
Release Management | 发布管理 | 发布管理是指计划、设计、调度、测试、部署和控制软件发布的过程。确保发布团队有效地交付业务所需的应用程序,同时保持现有生产环境的完整性。 |
Report Finding | 报告发现 | 仅存在于分析器生成的报告中且尚未保存到数据库中的发现。一旦将报告结果导入数据库,报告发现就会成为漏洞。 |
Repository | 仓库 | 仓库是存储代码并进行代码更改的地方,更改是通过版本控制进行跟踪的。每个项目都包含一个仓库。 |
Retrospective | 回顾 | 回顾是在敏捷软件开发迭代结束时举行的会议。在回顾过程中,团队反思迭代中的事情并计划未来改进的行动。 |
Roadmap | 路线图 | 路线图提供了项目主要要素的战略概览。一般包括目标、里程碑、可交付成果、资源和计划的时间表。 |
Role | 角色 | 不同角色的用户拥有不同的权限,进而在群组或项目中可以进行不同的操作。在极狐GitLab 中,如果一个用户在群组和项目中同时拥有不同的角色,其权限由最高角色决定。目前有五种角色:访客、报告者、开发者、维护者和所有者。 |
Rollback | 回滚 | 回滚指的是将程序恢复到上一次正确状态的行为。 |
Runner | Runner | 单独执行每个作业的代理或服务器,可以根据需要启动或关闭。 |
Scan Type/Report Type | 扫描类型/报告类型 | 描述扫描的类型。必须是以下之一:api_fuzzing、cluster_image_scanning、container_scanning、coverage_fuzzing、dast、dependency_scanning、sast 和 secret_detection。随着扫描器的添加,类型可能会发生变化。 |
Scanner | 扫描器 | 可以扫描漏洞的软件。生成的扫描报告通常不是安全报告格式。示例包括 ESLint、Trivy 和 ZAP。 |
Scheduled Pipeline | 计划流水线 | 根据预先设定的计划定期触发的流水线。 |
Scrum | Scrum | Scrum 是用于实施敏捷项目的规则、角色、事件和产物的框架。它是一种迭代方法,由通常只持续一到四个星期的冲刺组成,确保团队定期交付产品版本。 |
Secondary Site | 次要站点 | 复制主站点数据的极狐GitLab 站点。可以有一个或多个次要站点。 |
Secure Dashboard | 安全仪表盘 | 提供项目、群组或极狐GitLab 实例的所有漏洞的概述。漏洞仅是根据在项目默认分支上的发现创建的。 |
Secure Product | 安全产品 | 与特定应用安全领域相关的一组功能,由极狐GitLab 提供一流的支持。产品包括容器扫描、依赖扫描、动态应用安全测试 (DAST)、秘钥检测、静态应用安全测试 (SAST) 和模糊测试。每个产品通常都包括一个或多个分析器。 |
Secure Report Format | 安全报告格式 | 安全产品在创建 JSON 报告时遵守的标准报告格式。格式由 JSON 模式描述。 |
Security Assessment | 安全评估 | 对安全程序或其部分的适合性和功能进行调查的活动。 |
Security Audit | 安全审计 | 全面检查安全程序、安全系统或安全控制的行为。由于安全审计需要访问受信任的信息,因此它比安全评估更加全面。 |
Seed Corpus | 种子语料库 | 作为模糊目标的初始输入给出的一组测试用例。通常会大大加快模糊目标的速度。可以是手动创建的测试用例,也可以使用之前运行的模糊目标本身自动生成。 |
Shard | 分片 | 是数据库或搜索引擎中数据的水平分区。每个分片都保存在单独的数据库服务器实例上,以分散负载。 |
Single-node Site | 单节点站点 | 极狐GitLab 的一种特定配置,仅使用一个节点。 |
Site | 站点 | 运行单个极狐GitLab 应用程序的一个或一组节点。站点可以是单节点或多节点。 |
Smoke Testing | 冒烟测试 | 冒烟测试是在构建之后和发布之前对软件进行的初步检查,用于确定部署的软件构建是否稳定。这种类型的测试可以在实施关键测试之前发现应用程序中的基本问题。 |
Snippet | 代码片段 | 代码片段可以使您存储并与其他用户共享代码和文本。您可以在代码片段中评论、克隆并使用版本控制,您可以使用代码片段 API 维护您的代码片段。代码片段分为两种类型:个人代码片段和项目代码片段。 |
Software as a Service | 软件即服务 | 软件即服务通过网络提供软件服务。软件提供商将应用软件部署在服务器上,客户通过互联网按需订购使用软件服务。 |
Sprint | 冲刺 | 当一个 Scrum 团队努力完成一定数量的工作时,冲刺是一个短的、有时间限制的时期。冲刺是 Scrum 和敏捷方法的核心,正确的冲刺将帮助您的敏捷团队更快更好地交付软件。一个冲刺可以短至几天,一般不超过 3-4 周。 |
Stage | 阶段 | 定义作业特定阶段的关键字,例如构建和部署。同一阶段的作业是并行执行的。 |
Staging Environment | 预部署环境 | 预部署环境是与生产环境几乎完全相同的用于软件测试的环境,以进行代码测试、构建和更新,验证部署了更改的程序是否可以正常运行。 |
Two-factor Authentication | 双重身份验证 | 通过使用两种不相关的身份验证方法来增强访问的安全性。除了您的普通用户名和密码外,第二种身份验证方法通常需要使用您个人拥有的东西(例如您的手机)进行验证。 |
User Story | 用户故事 | 用户故事是敏捷软件开发中对需求的简要描述,从用户的角度捕获对软件功能的描述。用户故事描述了用户的类型、他们想要什么以及为什么。 |
Version Control | 版本控制 | 版本控制是一个系统,它记录一个或一组文件随时间的变化,以便后续访问和调用,对于回滚和灾难恢复等非常有用。 |
Virtualization | 虚拟化 | 虚拟化是一种计算技术,模拟物理硬件功能以创建基于软件的 IT 服务,如应用程序、服务器、存储和网络。通过从一个计算机系统创建资源或设备(例如台式计算机)的虚拟版本,虚拟化使公司能够降低硬件成本并提高效率。 |
Vulnerability | 漏洞 | 对环境的安全性产生负面影响的缺陷。漏洞描述错误或弱点,而不描述错误所在的位置。每个漏洞都对应一个唯一的的发现。漏洞存在于默认分支中。发现是扫描器在 MR/功能分支中识别的所有潜在漏洞条目。只有在合并到默认分支后,发现才会成为漏洞。 |
Vulnerability Finding | 漏洞发现 | 当报告发现存储到数据库中时,它就变成了漏洞发现。 |
Vulnerability Tracking | 漏洞跟踪 | 处理跨扫描的匹配结果以了解发现的生命周期。工程师和安全团队使用此信息来决定是否合并代码更改,并查看未解决的发现以及引入时间。通过比较位置指纹、主要标识符和报告类型来跟踪漏洞。 |
Waterfall | 瀑布式开发 | 瀑布式是一种将软件开发划分为预定义阶段的软件开发方法。每个阶段都必须在下一个阶段开始之前完成,阶段之间没有重叠。如果项目中前面的阶段有延迟,整个过程中靠后的阶段会因此在时间上受到挤压。 |
White Box Testing | 白盒测试 | 白盒测试是一种测试软件的内部结构、设计和编码,以验证输入输出流程并改进设计、可用性和安全性的测试技术。在白盒测试中,代码对测试者是可见的,因此也被称为透明盒测试、开盒测试、基于代码的测试和玻璃盒测试。 |