订阅 Pub/Sub 通知后,您可以在 Assured Open Source Software (Assured OSS) 有新软件包和漏洞更新时收到提醒。
Assured OSS 会发布两种类型的通知:
软件包可用性:这些通知包含有关添加到 Assured OSS 的新软件包和软件包版本的信息,以及有关软件包初始配置状态的更新。
漏洞通知:这些通知包含有关在 Assured OSS 精选软件包中检测到的新漏洞的信息,或有关现有漏洞的更新信息。
有关安全元数据更新和新软件包的程序化通知会在 Pub/Sub 主题中发布。这些通知采用 JSON 格式。您可以创建对 Assured OSS 主题的拉取订阅或推送订阅,以接收通知。
如需创建这些订阅,请使用您用于访问制品或元数据的同一服务账号或 Workload Identity 凭据。启用对 Assured OSS 的访问权限后,服务账号将获得在这些主题上创建订阅的权限。
以下部分介绍了 Pub/Sub 主题。
本文档同时适用于高级层级和免费层级。
准备工作
对于 Assured OSS 高级层级,如果您启用了 VPC Service Controls,请配置出站规则。
软件包新手入门主题
- 主题名称:
projects/cloud-aoss/topics/package_onboarding - 消息:此主题包含有关添加到 Assured OSS 的新软件包版本的信息以及有关其初始配置状态的更新。
消息数据架构:
{ "package_name" string "package_version" string "language" string "onboarding_status" string "notification_status" string }消息数据属性:
"PackageName" string "PackageVersion" string "PackageLanguage" string "SchemaVersion" string "GenerateTime" string
漏洞信息主题
- 主题名称:
projects/cloud-aoss/topics/vulnerability_information - 消息:此主题包含有关系统中检测到的新漏洞或任何漏洞的元数据是否已更新的信息。
消息数据架构:
{ "vulnerabilityId" string "notificationStatus" string }消息数据属性:
"PackageName" string "PackageVersion" string "PackageLanguage" string "SchemaVersion" string "GenerateTime" string
高级层级的整合软件包初始配置和漏洞信息主题
您可以通过以下 Pub/Sub 主题访问所有 Assured OSS 通知:
projects/assuredoss-blue/topics/assuredoss-notifications
通知属性
以下通知属性是已发布的 Pub/Sub 消息的一部分。您可以使用这些属性来过滤消息。
{
"Type": "string", // Indicates the type of notification, can be 'PackageVersion' or 'Vulnerability'
"PackageName": "string", // Package ID
"PackageVersion": "string", // Version of the package
"Language": "string", // Language of the package
"SchemaVersion": int, // Schema version of the data in message
"GenerateTime": "string" // Time at which the event occurred
}
GenerateTime 属性采用 RFC 3339 格式。
与包裹相关的通知
当 Type 属性为 PackageVersion 时,消息数据具有以下字段:
{
"PackageName": "string", // Package ID
"PackageVersion": "string", // Version of the package
"Language": "string", // Language of the package
"NotificationStatus": "string" // Status of package-version,'New' indicates available to download from Assured OSS
}
与漏洞相关的通知
当 Type 属性为 Vulnerability 时,消息数据具有以下字段:
{
"ID": "string", // Vulnerability ID affecting the package
"Severity": "string", // Severity of the vulnerability
"Sources": [
{
"Name": "string", // Source of vulnerability information
"Link": "string" // URL of vulnerability details
}
],
"Summary": "string", // Summary of vulnerability
"Description": "string", // Detailed description of vulnerability
"PackageName": "string", // Package ID
"PackageVersion": "string", // Version of the package
"Language": "string", // Language of the package
"NotificationStatus": "string" // Status of package-version
}
NotificationStatus 字段的值表示漏洞的状态。如果漏洞是软件包的新漏洞,则值为 New。如果现有漏洞有更新,则值为 Update。
创建拉取订阅
如需创建拉取订阅,请完成以下步骤:
创建拉取订阅。您可以使用Google Cloud 控制台、Google Cloud CLI 或 Pub/Sub API。
创建拉取订阅后,使用客户端库或 Google Cloud CLI 开始轮询消息。
创建推送订阅
如需创建推送订阅,请设置一个 HTTPS 服务器,该服务器具有非自签名证书,并且可通过互联网访问。通过以下任一方式使用推送订阅模型:
如果您有 Google Cloud 项目和服务账号(例如,您已将 Assured OSS 与 Security Command Center 集成):
由于 Assured OSS 提供了创建订阅的权限,因此您可以创建自己的推送订阅,并将其与您选择的端点相关联。如需了解详情,请参阅推送订阅。
如果您使用的是免费层级,并且没有 Google Cloud 项目和服务账号,请在启用访问权限或更新通知偏好设置表单中输入 HTTPS 端点。Assured OSS 团队将创建推送订阅,并将端点与该订阅关联。