# 关于关联的项目

linked artifacts page 帮助你在 GitHub 上审计并优先处理组织的构建，无论制品存储在哪里。

```
          linked artifacts page 提供了一个统一视图，展示贵组织使用 GitHub Actions 构建的软件工件，例如容器镜像、包或生产代码的构建。
```

该页显示如何生成项目、在其中存储或运行项目，以及与项目关联的符合性和安全性元数据。

组织中的团队可以使用 linked artifacts page 来：

* 基于检测到的漏洞是在生产环境中运行还是暴露在互联网上，确定GitHub Advanced Security功能警报的优先级
* 快速将项目关联到构建详细信息、存储位置以及负责团队
* 通过导出工件来源和完整性的可审核证明来满足合规性要求
* 查找与已部署制品关联的仓库，并在分支规则集中针对它们

## 哪些制品出现在 linked artifacts page 上？

每个组织的 linked artifacts page 都是独一无二的。 它包含组织仓库中使用 GitHub Actions 构建的制品元数据。 它**不会**显示你的组织从其他来源使用的项目，例如开源依赖项。

项目记录由你的组织通过公共 API 或与外部注册表的集成进行上传。 linked artifacts page 不存储制品文件本身。 它只是为与每个工件关联的元数据提供权威信息来源。

由于工件不需要存储在GitHub上才能出现在linked artifacts page中，您可以将linked artifacts page与您首选的包注册表一起使用，例如 JFrog Artifactory 或GitHub Packages。

## 包括哪些元数据？

```
          linked artifacts page 结合了两种不同类型的记录中的数据：存储记录和部署记录。 这些记录是使用不同的 API 终结点或集成上传的。
```

### 存储记录

存储记录包括包含项目的源代码的存储库、存储项目的注册表，以及证明项目完整性和来源的任何证明。 你可以使用这些数据快速找到某个项目的负责团队和构建详细信息。

![工件页面的屏幕截图。 突出显示的字段：存储注册表、项目存储库、源存储库。](/assets/images/help/security/virtual-registry-storage-record.png)

```
          _项目存储库_不是必需的。 它指的是某些外部包注册表中存储库的概念：可以对多个包进行分组的位置。 相比之下，_源存储库_ 是指 GitHub 构建工件的存储库。 源存储库是必需的，如果构件具有生成溯源声明，则会自动检测。
```

有关证明和 SLSA 级别的详细信息，请参阅 [构件认证](/zh/enterprise-cloud@latest/actions/concepts/security/artifact-attestations)。

### 部署记录

部署记录包括部署项目的环境，以及与项目关联的任何运行时风险（例如“敏感数据”或“Internet 公开”）。

![工件页面的屏幕截图。 高亮字段：“部署”列表，其中包含“Prod”“sensitive data”和“pacific-east”等标记。](/assets/images/help/security/virtual-registry-deployment-record.png)

> \[!NOTE] 部署记录**不包括** 存储库的部署仪表板中的部署活动，因为这些活动来源不同。 请参阅“[查看仓库的部署活动](/zh/enterprise-cloud@latest/repositories/viewing-activity-and-data-for-your-repository/viewing-deployment-activity-for-your-repository)”。

## 工件数据在何处可用？

除了在 linked artifacts page 本身可用之外，制品元数据还集成在 GitHub 上的策略和安全界面中。 Teams 可以使用此数据做出策略决策或确定安全问题的优先级。 例如，他们可以：

* 使用 `deployed` 或 `deployable` 过滤器来搜索仓库或在组织与企业规则集中定位仓库。 请参阅“[搜索仓库](/zh/enterprise-cloud@latest/search-github/searching-on-github/searching-for-repositories#search-based-on-deployment-context)”。
* 按运行时风险筛选安全活动、code scanning警报和Dependabot通知。 请参阅“[使用生产上下文确定 Dependabot 和代码扫描警报的优先级](/zh/enterprise-cloud@latest/code-security/tutorials/secure-your-organization/prioritize-alerts-in-production-code)”。
* 在单个 code scanning 和 Dependabot 告警中查看运行时风险作为属性。

## 如何将 linked artifacts page 纳入我的流程？

此示例工作流演示如何 linked artifacts page 与其他 GitHub 功能和外部系统集成。

1. 开发人员将代码提交到 GitHub 定义软件包代码的存储库。

2. 在GitHub Actions存储库中，一个工作流会自动运行：

   1. 构建软件包。
   2. 将包推送到所选注册表，例如 GitHub Packages 或 JFrog Artifactory。
   3. 创建加密签名的证明证明，将包链接到用于生成包的存储库、提交和工作流。
   4. 将包部署到过渡或生产环境。 你的部署系统可以设置门控机制，以确保只有经过证明的项目才能部署到生产环境，例如使用 Kubernetes 准入控制器。

3. 包的元数据，例如其链接的存储库、证明和部署历史记录，将上传到 linked artifacts page。

4. 使用来自 linked artifacts page 的数据，安全负责人对代码扫描和 Dependabot 警报进行分类处理，并创建一个活动来解决影响生产环境或具有特定运行时风险的警报。

5. 如果需要审核，合规性团队的成员将从单个源导出所有组织链接项目的 SBOM、来源详细信息和部署记录。

## 后续步骤

若要添加记录到您的组织的linked artifacts page，请参阅[将存储和部署数据上传到 linked artifacts page](/zh/enterprise-cloud@latest/code-security/how-tos/secure-your-supply-chain/establish-provenance-and-integrity/upload-linked-artifacts)。

若要查看组织的linked artifacts page，请参阅[审核组织在 linked artifacts page 上的构建](/zh/enterprise-cloud@latest/code-security/how-tos/secure-your-supply-chain/establish-provenance-and-integrity/view-linked-artifacts)。