Ao se inscrever nas notificações do Pub/Sub, você recebe alertas quando novos pacotes e atualizações de vulnerabilidade estão disponíveis para o Assured Open Source Software (Assured OSS).
O Assured OSS publica dois tipos de notificações:
Disponibilidade do pacote: essas notificações contêm informações sobre novos pacotes e versões de pacotes adicionados ao Assured OSS e atualizações sobre o status de integração do pacote.
Notificações de vulnerabilidade: essas notificações contêm informações sobre novas vulnerabilidades detectadas nos pacotes selecionados pelo Assured OSS ou atualizações de vulnerabilidades atuais.
Notificações programáticas sobre atualizações em metadados de segurança e novos pacotes são publicadas em tópicos do Pub/Sub. Essas notificações estão disponíveis no formato JSON. É possível criar uma assinatura por pull ou por push no tópico do Assured OSS para receber notificações.
Para criar essas assinaturas, use a mesma conta de serviço ou as credenciais de identidade da carga de trabalho que você usa para acessar artefatos ou metadados. Quando seu acesso ao Assured OSS é ativado, as contas de serviço recebem permissão para criar assinaturas nesses tópicos.
As seções a seguir descrevem os tópicos do Pub/Sub.
Este documento se aplica aos níveis Premium e sem custo financeiro.
Antes de começar
Para o nível Premium do Assured OSS, se você ativou o VPC Service Controls, configure a regra de saída.
Tema de integração do pacote
- Nome do tópico:
projects/cloud-aoss/topics/package_onboarding - Mensagem: este tópico contém informações sobre novas versões de pacotes adicionadas ao Assured OSS e atualizações sobre o status de integração.
Esquema de dados da mensagem:
{ "package_name" string "package_version" string "language" string "onboarding_status" string "notification_status" string }Atributos de dados de mensagens:
"PackageName" string "PackageVersion" string "PackageLanguage" string "SchemaVersion" string "GenerateTime" string
Tópico de informações sobre vulnerabilidades
- Nome do tópico:
projects/cloud-aoss/topics/vulnerability_information - Mensagem: este tópico contém informações sobre novas vulnerabilidades detectadas no sistema ou se os metadados de alguma vulnerabilidade forem atualizados.
Esquema de dados da mensagem:
{ "vulnerabilityId" string "notificationStatus" string }Atributos de dados de mensagens:
"PackageName" string "PackageVersion" string "PackageLanguage" string "SchemaVersion" string "GenerateTime" string
Tópico consolidado de informações sobre integração de pacotes e vulnerabilidades para o nível Premium
É possível acessar todas as notificações do Assured OSS no seguinte tópico do Pub/Sub:
projects/assuredoss-blue/topics/assuredoss-notifications
Atributos de notificação
Os seguintes atributos de notificação fazem parte da mensagem publicada do Pub/Sub. É possível usar esses atributos para filtrar a mensagem.
{
"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
}
O atributo GenerateTime está no formato
RFC 3339.
Notificações relacionadas a pacotes
Quando o atributo Type é PackageVersion, os
dados da mensagem
têm os seguintes campos:
{
"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
}
Notificações relacionadas a vulnerabilidades
Quando o atributo Type é Vulnerability, os
dados da mensagem
têm os seguintes campos:
{
"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
}
O valor do campo NotificationStatus indica o status da vulnerabilidade. Se a vulnerabilidade for nova para um pacote, o valor
será New. Se houver uma atualização para uma vulnerabilidade existente, o
valor será Update.
Criar uma assinatura por pull
Para criar uma assinatura por pull, faça o seguinte:
Crie uma assinatura por pull. É possível usar o console doGoogle Cloud , a Google Cloud CLI ou a API Pub/Sub.
Depois de criar a assinatura por pull, comece a pesquisar mensagens usando bibliotecas de cliente ou a Google Cloud CLI.
Criar uma assinatura por push
Para criar uma assinatura por push, configure um servidor HTTPS com um certificado que não seja autoassinado e que seja acessível na Internet. Use o modelo de assinatura por push de uma das seguintes maneiras:
Se você tiver um projeto e uma conta de serviço do Google Cloud (por exemplo, se tiver integrado o Assured OSS ao Security Command Center):
Como o Assured OSS dá permissão para criar assinaturas, é possível criar suas próprias assinaturas por push e associá-las ao endpoint de sua escolha. Para mais informações, consulte Assinaturas por push.
Se você estiver usando o nível sem custo financeiro e não tiver um projeto e uma conta de serviço do Google Cloud , insira o endpoint HTTPS no formulário Ativar acesso ou atualizar preferências de notificação. A equipe do Assured OSS vai criar uma assinatura por push e anexar o endpoint a essa assinatura.