Assured Open Source Software (Assured OSS) 會發布兩種類型的通知:
套件可用性:這些通知包含新增至 Assured OSS 的新套件和套件版本資訊,以及套件上線狀態的相關更新。
安全漏洞通知:這類通知包含在 Assured OSS 策劃的套件中偵測到的新安全漏洞資訊,或是現有安全漏洞的更新。
安全中繼資料和新套件的更新通知會以程式輔助方式發布至 Pub/Sub 主題。這些通知會以 JSON 格式提供。您可以為 Assured OSS 主題建立提取訂閱項目或推送訂閱項目,以接收通知。
如要建立這些訂閱項目,請使用存取構件或中繼資料時所用的服務帳戶或工作負載身分憑證。啟用 Assured OSS 存取權後,服務帳戶就會獲得在這些主題上建立訂閱項目的權限。
以下各節說明 Pub/Sub 主題。
本文適用於付費版和免費版。
事前準備
如果您啟用 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 團隊會建立推送訂閱項目,並將端點附加至該訂閱項目。