Vista geral
O Security Command Center envia notificações em tempo real de conclusões naGoogle Cloud consola. Este guia descreve como usar os Google Cloud serviços e as APIs de terceiros para expandir essa funcionalidade e receber notificações quase em tempo real em apps de email e chat. Quando conclui o guia, recebe alertas sobre novas conclusões em serviços de terceiros configurados sem iniciar sessão na Google Cloud consola, o que permite uma triagem mais rápida de vulnerabilidades e ameaças. Saiba mais sobre os diferentes tipos de vulnerabilidades e ameaças no Security Command Center.
Topologia
Neste guia, cria a configuração ilustrada no diagrama seguinte.
Objetivos
Neste guia, vai fazer o seguinte:
- Configure um tópico do Pub/Sub.
- Configure o Slack, o WebEx Teams e o Twilio SendGrid Mail.
- Escrever código em funções do Cloud Run.
- Configure as funções do Pub/Sub e do Cloud Run para enviar notificações para o Slack, o WebEx Teams ou o Twilio Sendgrid Mail sempre que for escrita uma nova descoberta de gravidade alta ou crítica no Security Command Center.
- Resolva problemas de notificação.
Custos
Este tutorial usa componentes faturáveis do Google Cloud, incluindo:
- Pub/Sub
- Funções do Cloud Run
- Cloud Build
Use a calculadora de preços para gerar uma estimativa de custo com base na sua utilização prevista.
Antes de começar
Para concluir este guia, tem de ter as seguintes funções de gestão de identidade e de acesso (IAM):
- Administrador da organização (
roles/resourcemanager.organizationAdmin
) - Administrador do Centro de segurança (
roles/securitycenter.admin
) - Administrador de segurança (
roles/iam.securityAdmin
) - Uma função com a autorização
serviceusage.services.use
, como Proprietário (roles/owner
), Editor (roles/editor
) ou uma função personalizada - Crie contas de serviço (
roles/iam.serviceAccountCreator
) - Editor do Pub/Sub (
roles/pubsub.editor
) - Administrador da conta de faturação (
roles/billing.admin
)
As funções do IAM para o Security Command Center podem ser concedidas ao nível da organização, da pasta ou do projeto. A sua capacidade de ver, editar, criar ou atualizar resultados, recursos e origens de segurança depende do nível para o qual lhe é concedido acesso. Para saber mais sobre as funções do Security Command Center, consulte o artigo Controlo de acesso.
Configurar um projeto
Conclua os passos seguintes para criar ou selecionar um projeto.
- Sign in to your Google Cloud account. If you're new to Google Cloud, create an account to evaluate how our products perform in real-world scenarios. New customers also get $300 in free credits to run, test, and deploy workloads.
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
Roles required to select or create a project
- Select a project: Selecting a project doesn't require a specific IAM role—you can select any project that you've been granted a role on.
-
Create a project: To create a project, you need the Project Creator
(
roles/resourcemanager.projectCreator
), which contains theresourcemanager.projects.create
permission. Learn how to grant roles.
-
Verify that billing is enabled for your Google Cloud project.
-
Enable the Cloud Build API.
Roles required to enable APIs
To enable APIs, you need the Service Usage Admin IAM role (
roles/serviceusage.serviceUsageAdmin
), which contains theserviceusage.services.enable
permission. Learn how to grant roles. -
Install the Google Cloud CLI.
-
Se estiver a usar um fornecedor de identidade (IdP) externo, tem primeiro de iniciar sessão na CLI gcloud com a sua identidade federada.
-
Para inicializar a CLI gcloud, execute o seguinte comando:
gcloud init
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
Roles required to select or create a project
- Select a project: Selecting a project doesn't require a specific IAM role—you can select any project that you've been granted a role on.
-
Create a project: To create a project, you need the Project Creator
(
roles/resourcemanager.projectCreator
), which contains theresourcemanager.projects.create
permission. Learn how to grant roles.
-
Verify that billing is enabled for your Google Cloud project.
-
Enable the Cloud Build API.
Roles required to enable APIs
To enable APIs, you need the Service Usage Admin IAM role (
roles/serviceusage.serviceUsageAdmin
), which contains theserviceusage.services.enable
permission. Learn how to grant roles. -
Install the Google Cloud CLI.
-
Se estiver a usar um fornecedor de identidade (IdP) externo, tem primeiro de iniciar sessão na CLI gcloud com a sua identidade federada.
-
Para inicializar a CLI gcloud, execute o seguinte comando:
gcloud init
Especifique o seu Google Cloud projeto numa variável de ambiente.
export PROJECT_ID=PROJECT_ID
Substitua PROJECT_ID pelo ID do seu projeto.
Especifique a sua Google Cloud organização numa variável de ambiente.
export ORG_ID=ORG_ID
Substitua ORG_ID pelo ID da sua organização.
Defina o ID do projeto para os comandos
gcloud
.gcloud config set project PROJECT_ID
Crie o tópico do Pub/Sub onde as notificações são publicadas.
gcloud pubsub topics create scc-critical-and-high-severity-findings-topic
Especifique o tópico numa variável de ambiente.
export TOPIC=projects/$PROJECT_ID/topics/scc-critical-and-high-severity-findings-topic
Crie a subscrição que notifica as funções do Cloud Run para enviar um email ou uma mensagem de chat quando as mensagens são publicadas no tópico.
gcloud pubsub subscriptions create scc-critical-and-high-severity-findings-sub \ --topic scc-critical-and-high-severity-findings-topic
Configure o Security Command Center para publicar notificações no tópico. Pode usar qualquer filtro compatível com a API ListFindings.
O filtro seguinte publica notificações para resultados ativos de gravidade alta e crítica na localização
global
. Saiba mais sobre como filtrar resultados.gcloud scc notifications create scc-critical-high-severity \ --pubsub-topic=$TOPIC \ --organization=$ORG_ID \ --location=global \ --filter "(severity=\"HIGH\" OR severity=\"CRITICAL\") AND state=\"ACTIVE\""
- Crie uma conta da API Mail do Twilio Sendgrid e obtenha uma chave da API.
- Crie e implemente uma função do Cloud Run que envie emails quando forem recebidas notificações do Pub/Sub.
- Aceda à Google Cloud consola.
Aceda à Google Cloud consola - Na caixa de pesquisa na parte superior da página, pesquise
SendGrid Email API.
Na página seguinte, selecione o plano que se adequa às suas necessidades.
Se necessário, avance selecionando um projeto para associar ao SendGrid. Pode precisar de autorizações adequadas para gerir as compras da conta de faturação associada ao projeto.
Reveja os termos e, se concordar, clique em Subscrever.
Ative o serviço SendGrid clicando em Registar com o SendGrid.
No ecrã de registo, introduza um nome de utilizador, uma palavra-passe e um endereço de email. Aceite os Termos de Utilização e clique em Continuar.
Na caixa de diálogo de confirmação, clique em Regressar ao Google.
Clique em Gerir chaves da API no Website do SendGrid. É aberto um novo separador para o Website do SendGrid.
Preencha o formulário ou inicie sessão, se lhe for pedido. Em seguida, clique em Começar!
No painel de menu, expanda Definições e clique em Chaves da API.
No ecrã seguinte, clique no botão Criar chave da API.
Em Nome da chave da API, introduza "Notificações por email do SCC", selecione Acesso total e, de seguida, clique no botão Criar e ver.
É apresentada a chave da API. Registe o valor. Vai precisar dele na secção seguinte.
Clique em Concluído. É apresentado o conjunto atual de chaves da API. Feche o separador e volte à Google Cloud consola.
Aceda às funções do Cloud Run.
Aceder às funções do Cloud RunCertifique-se de que está a usar o mesmo PROJECT_ID que usou para criar o tópico do Pub/Sub.
Clique em Criar função.
Defina o Nome da função como send-high-and-critical-finding-email-notification e o Tipo de acionador como Pub/Sub.
Selecione o tópico Pub/Sub que criou em Configurar um tópico Pub/Sub.
Clique em Guardar e, de seguida, em Seguinte.
Na página seguinte, defina o tempo de execução como Python 3.8. O exemplo de código nesta secção está escrito em Python, mas pode usar qualquer idioma suportado pelas funções do Cloud Run.
Na lista de ficheiros, clique em requirements.txt e adicione o seguinte ao campo de texto:
sendgrid
.
Clique em main.py e substitua o conteúdo pelo seguinte fragmento do código.
import base64 import json from sendgrid import SendGridAPIClient from sendgrid.helpers.mail import Mail def send_email_notification(event, context): """Triggered from a message on a Pub/Sub topic. Args: event (dict): Event payload. context (google.cloud.functions.Context): Metadata for the event. """ pubsub_message = base64.b64decode(event['data']).decode('utf-8') message_json = json.loads(pubsub_message) message = Mail( from_email='noreply@yourdomain.com', to_emails='$EMAIL_ADDRESS', subject='New High or Critical Severity Finding Detected', html_content='A new high or critical severity finding was detected: ' + ''.join(message_json['finding']['category'])) try: sg = SendGridAPIClient('$SENDGRID_EMAIL_API_KEY') response = sg.send(message) print(response.status_code) print(response.body) print(response.headers) except Exception as e: print(e) print(pubsub_message)
Substitua o seguinte:
- Altere
noreply@yourdomain.com
para o endereço de email a partir do qual quer que as mensagens sejam enviadas. - Altere
$EMAIL_ADDRESS
para o endereço de email do destinatário pretendido. Nota: esta variável pode conter uma matriz de endereços de email (['user1@yourdomain.com', 'user2@yourdomain.com']) ou pode escrever código personalizado para criar uma variável dinâmica definida, por exemplo, como uma lista rotativa de indivíduos que estão de serviço. - Altere
$SENDGRID_EMAIL_API_KEY
para a chave da API que já tem ou a que criou na secção anterior.
- Altere
Navegue para o campo Ponto de entrada e introduza o nome da função no fragmento do código (send_email_notification, neste exemplo).
Clique em Implementar. Regressa à lista de funções do Cloud Run, onde deve ver a sua nova função. Quando é apresentada uma marca de verificação verde junto ao nome da função, significa que foi implementada com êxito. O processo pode demorar alguns minutos.
- Crie uma nova app do Slack com privilégios suficientes para publicar mensagens num canal público do Slack.
- Crie e implemente uma função do Cloud Run que publique mensagens de chat no Slack quando são recebidas notificações do Pub/Sub.
- Navegue para apps da API Slack. A página é aberta num novo separador.
Inicie sessão ou crie uma conta.
Selecione Criar uma app.
Definir Nome da app como "SCC Finding Notifier".
Selecione o Development Slack Workspace onde quer que o bot do Slack publique mensagens e, de seguida, clique em Create App.
No painel de navegação, selecione OAuth e autorizações.
Navegue para a secção Âmbitos. Os âmbitos dividem-se em duas categorias:
- Âmbitos do token do bot
- Âmbitos do token de utilizador
Para este exercício, não precisa de adicionar um âmbito do token de utilizador. Em Âmbitos do token do bot, clique em Adicionar um âmbito do OAuth e introduza:
chat:write
chat:write.public
Desloque a página OAuth e autorizações para a parte superior e clique em Instalar app no Workspace.
Na caixa de diálogo de confirmação, clique em Permitir.
Copie a chave de acesso OAuth do utilizador do bot para utilização na função do Google Cloud.
Aceda às funções do Cloud Run.
Aceder às funções do Cloud RunCertifique-se de que está a usar o mesmo PROJECT_ID onde o tópico do Pub/Sub foi criado.
Clique em Criar função.
Defina o Nome da função como slack-chat-high-and-critical-findings e o Tipo de acionador como Pub/Sub.
Selecione o tópico Pub/Sub que criou em Configurar um tópico Pub/Sub.
Clique em Guardar e, de seguida, em Seguinte.
Na página seguinte, defina o tempo de execução como Python 3.8. O exemplo de código nesta secção está escrito em Python, mas pode usar qualquer idioma suportado pelas funções do Cloud Run.
Navegue para a lista de ficheiros. Clique em requirements.txt e adicione o seguinte:
requests
.Clique em main.py e substitua o respetivo conteúdo pelo seguinte fragmento do código.
import base64 import json import requests TOKEN = "BOT_ACCESS_TOKEN" def send_slack_chat_notification(event, context): pubsub_message = base64.b64decode(event['data']).decode('utf-8') message_json = json.loads(pubsub_message) finding = message_json['finding'] requests.post("https://slack.com/api/chat.postMessage", data={ "token": TOKEN, "channel": "#general", "text": f"A high severity finding {finding['category']} was detected!" })
Substitua
BOT_ACCESS_TOKEN
pela chave de acesso OAuth do utilizador do bot que criou com a app Slack.Navegue para o campo Ponto de entrada e introduza o nome da função no fragmento do código (send_slack_chat_notification, neste exemplo).
Clique em Implementar. Regressa à lista de funções do Cloud Run, onde deve ver a sua nova função. Quando aparece uma marca de verificação verde junto ao nome da função, significa que a implementação foi bem-sucedida. O processo pode demorar alguns minutos. As mensagens são apresentadas no canal do Slack #general.
- Crie uma nova conta de serviço com autorizações para obter recursos do Security Command Center.
- Crie um novo bot do WebEx com privilégios suficientes para publicar mensagens no seu espaço de trabalho.
- Crie e implemente uma função do Cloud Run que subscreva o Pub/Sub e publique mensagens de chat no WebEx quando forem recebidas notificações do tópico do Pub/Sub.
Atribua um nome à conta de serviço e especifique-a como uma variável de ambiente.
export SERVICE_ACCOUNT=ACCOUNT_NAME
Crie a conta de serviço para o seu projeto.
gcloud iam service-accounts create $SERVICE_ACCOUNT \ --display-name "Service Account for SCC Finding Notifier WebEx Cloud Function" \ --project $PROJECT_ID
Conceda à conta de serviço a função
securitycenter.assetsViewer
ao nível da organização.gcloud organizations add-iam-policy-binding $ORG_ID \ --member="serviceAccount:$SERVICE_ACCOUNT@$PROJECT_ID.iam.gserviceaccount.com" \ --role='roles/securitycenter.assetsViewer'
Inicie sessão na sua conta do WebEx Teams e navegue para a página Novo bot.
Definir Bot Name como "SCC Finding Notifier".
Selecione um nome de utilizador do bot descritivo, mas único (your-name-scc-finding-notifier-demo).
Em Ícone, selecione Predefinição 1.
Defina Description como "Um bot que notifica a equipa quando é publicada uma nova descoberta de gravidade elevada ou crítica no Security Command Center."
Clique em Adicionar bot.
Na página de confirmação, copie o token de acesso do bot e guarde-o para utilização na função do Cloud Run.
No espaço do WebEx onde quer que o bot publique notificações, expanda o painel de atividade.
Selecione Adicionar pessoas.
Escreva "SCC Finding Notifier" no campo de texto e selecione o bot que criou no menu pendente.
Selecione o botão Adicionar e, de seguida, feche o painel.
Obtenha o ID da sala do espaço de trabalho para a função do Cloud Run. Num computador de mesa, aceda a https://developer.webex.com/docs/api/v1/rooms/list- rooms e inicie sessão, se necessário. Esta página usa a API WebEx para listar as salas às quais pertence.
Navegue para o painel de pesquisa.
Selecione o separador com a etiqueta Experimentar na parte superior do painel.
Deixe todas as opções com os respetivos valores predefinidos e clique em Executar.
No separador Resposta, recebe uma resposta formatada em JSON com uma lista de
items
ou quartos. Encontre otitle
da divisão na qual quer que as notificações sejam apresentadas e registe o valorid
associado.Aceda às funções do Cloud Run.
Aceder às funções do Cloud RunSelecione o mesmo PROJECT_ID no qual o tópico do Pub/Sub foi criado.
Clique em Criar função.
Defina o Nome da função como webex-teams-high-and-critical-findings e o Tipo de acionador como Pub/Sub.
Selecione o tópico Pub/Sub que criou em Configurar um tópico Pub/Sub.
Expanda o campo Variáveis, redes e definições avançadas.
Em Conta de serviço, filtre e selecione a conta de serviço que criou.
webex-cloud-function-sa
Clique em Guardar e, de seguida, em Seguinte.
Na página seguinte, defina o tempo de execução como Python 3.8. O exemplo de código nesta secção está escrito em Python, mas pode usar qualquer idioma suportado pelas funções do Cloud Run.
Navegue para a lista de ficheiros. Clique em requirements.txt e adicione o seguinte:
requests==2.25.1
google-cloud-securitycenter==1.1.0
Clique em main.py e substitua o conteúdo pelo seguinte fragmento do código.
#!/usr/bin/env python3 import base64 import json import requests from google.cloud import securitycenter_v1 WEBEX_TOKEN = "WEBEX_TOKEN" ROOM_ID = "ROOM_ID" TEMPLATE = """ **Severity:** {severity}\n **Asset:** {asset}\n **SCC Category:** {category}\n **Project:** {project}\n **First observed:** {create_time}\n **Last observed:** {event_time}\n **Link to finding:** {finding_link} """ PREFIX = "https://console.cloud.google.com/security/command-center/findings" def get_finding_detail_page_link(finding_name): """Constructs a direct link to the finding detail page.""" org_id = finding_name.split("/")[1] return f"{PREFIX}?organizationId={org_id}&resourceId={finding_name}" def get_asset(parent, resource_name): """Retrieves the asset corresponding to `resource_name` from SCC.""" client = securitycenter_v1.SecurityCenterClient() resp = client.list_assets( securitycenter_v1.ListAssetsRequest( parent=parent, filter=f'securityCenterProperties.resourceName="{resource_name}"', ) ) page = next(resp.pages) if page.total_size == 0: return None asset = page.list_assets_results[0].asset return json.loads(securitycenter_v1.Asset.to_json(asset)) def send_webex_teams_notification(event, context): """Send the notification to WebEx Teams.""" pubsub_message = base64.b64decode(event["data"]).decode("utf-8") message_json = json.loads(pubsub_message) finding = message_json["finding"] parent = "/".join(finding["parent"].split("/")[0:2]) asset = get_asset(parent, finding["resourceName"]) requests.post( "https://webexapis.com/v1/messages", json={ "roomId": ROOM_ID, "markdown": TEMPLATE.format( severity=finding["severity"], asset=asset["securityCenterProperties"]["resourceDisplayName"], category=finding["category"], project=asset["resourceProperties"]["project"], create_time=finding["createTime"], event_time=finding["eventTime"], finding_link=get_finding_detail_page_link(finding["name"]), ), }, headers={"Authorization": f"Bearer {WEBEX_TOKEN}"}, )
Substitua o seguinte:
WEBEX_TOKEN
com o token de acesso do bot da secção Crie um bot do WebEx.ROOM_ID
com o ID da sala da secção Adicione o bot WebEx ao espaço de trabalho.
Navegue para o campo Ponto de entrada e introduza o nome da função no fragmento do código (send_webex_teams_notification, neste exemplo).
Clique em Implementar. Regressa à lista de funções do Cloud Run, onde deve ver a sua nova função. Quando é apresentada uma marca de verificação verde junto ao nome da função, significa que foi implementada com êxito. O processo pode demorar alguns minutos.
- Recebe um email ou uma mensagem de chat separados para cada descoberta individual de gravidade crítica ou elevada. A frequência ou o número de notificações depende dos recursos na sua organização.
- As notificações são publicadas e enviadas praticamente em tempo real. No entanto, a imediatez dos emails ou das mensagens não é garantida e vários fatores podem causar atrasos, incluindo problemas com o Twilio Sendgrid Mail, o seu sistema de email, o Slack ou o WebEx.
- Altere os destinatários atualizando a sua função do Cloud Run.
- Altere as conclusões que acionam notificações atualizando o filtro do tópico do Pub/Sub.
- Aceda à página Resultados do Security Command Center.
Aceda à página Resultados - Se lhe for pedido, selecione a sua organização.
- No painel Filtros rápidos, desloque a página para baixo até à secção Gravidade e selecione Alta ou Crítica. O painel Resultados da consulta de conclusões é atualizado para mostrar conclusões apenas da gravidade selecionada.
- No painel Resultados da consulta de constatações, selecione uma constatação selecionando a caixa junto ao respetivo nome.
- No menu Alterar estado ativo na barra de ações Resultados da consulta de conclusões, selecione Inativo. Se a consulta de resultados atual mostrar apenas resultados ativos, o resultado é removido dos resultados da consulta.
- No painel Filtros rápidos, desloque a página para baixo até à secção Estado e altere as seleções para que apenas Inativo esteja selecionado. O painel Resultados da consulta de descobertas é atualizado para mostrar apenas descobertas inativas.
- No painel Resultados da consulta de constatações, selecione a constatação que marcou como inativa.
- No menu Alterar estado ativo na barra de ações Resultados da consulta de descobertas, selecione Ativo.
Verifique o seu email ou serviço de mensagens. Deverá ver uma mensagem semelhante às imagens abaixo.
Twilio Sendgrid Mail:
- Para impedir que os emails sejam enviados para a pasta Spam, adicione o valor
from_email
à sua lista de permissões de email ou configure a autenticação do remetente no SendGrid. - Certifique-se de que não está a exceder o limite de taxa do seu plano do SendGrid.
- Os emails com falhas podem ser detetados através dos relatórios do SendGrid.
- A política DMARC do seu domínio ou fornecedor de email pode bloquear emails de remetentes não autenticados. Saiba como o SendGrid gere a identidade do remetente.
Se ocorrer um erro, experimente outro endereço de email no valor
from_email
.
- A política DMARC do seu domínio ou fornecedor de email pode bloquear emails de remetentes não autenticados. Saiba como o SendGrid gere a identidade do remetente.
Se ocorrer um erro, experimente outro endereço de email no valor
- Para impedir que os emails sejam enviados para a pasta Spam, adicione o valor
Twilio Sendgrid Mail, Slack e WebEx:
Verifique os registos do Stackdriverda sua função do Cloud Run para determinar se a função está a ser invocada. Se não estiver a ser invocado, certifique-se de que as notificações estão configuradas corretamente.
Se a função do Cloud Run estiver a ser invocada, pode estar a falhar. Verifique se existem erros nas funções do Cloud Run através do Google Cloud relatório de erros da consola.
- In the Google Cloud console, go to the Manage resources page.
- In the project list, select the project that you want to delete, and then click Delete.
- In the dialog, type the project ID, and then click Shut down to delete the project.
Elimine a configuração de notificações:
gcloud scc notifications delete scc-critical-high-severity \ --organization=ORG_ID \ --location=global
Substitua ORG_ID pelo ID da sua organização.
Para manter a configuração e pausar temporariamente as notificações, comente as chamadas
send
oupost
na sua função do Cloud Run.Elimine a sua função do Cloud Run:
- Aceda às funções do Cloud Run.
Aceder às funções do Cloud Run - Clique na caixa de verificação junto à função que quer eliminar.
- Clique em Eliminar .
- Aceda às funções do Cloud Run.
Elimine a conta de serviço:
- Aceda à página Contas de serviço.
Aceda à página Contas de serviço - Selecione um projeto.
- Selecione a conta de serviço que quer eliminar e, de seguida, clique em Eliminar .
- Aceda à página Contas de serviço.
- Leia mais acerca dos erros de notificação.
- Saiba como filtrar notificações.
- Saiba como corrigir os resultados da análise de segurança Web e da análise do estado de segurança.
Tempo estimado: a configuração e o teste das notificações para um único serviço demoram aproximadamente uma hora.
Configurar um tópico do Pub/Sub
O Pub/Sub é um serviço de mensagens em tempo real que permite o envio e a receção de mensagens entre aplicações independentes. Saiba mais sobre o Pub/Sub.
Nesta secção, configura o Security Command Center para publicar resultados num tópico do Pub/Sub.
Para configurar e subscrever um tópico Pub/Sub:
Em seguida, crie ou configure a sua app de email ou chat para receber notificações do Pub/Sub.
Configurar uma app de mensagens
Esta secção descreve como usar o Pub/Sub e as funções do Cloud Run ou as funções do Cloud Run (1.ª geração) para ativar notificações quase em tempo real para a API Mail do Twilio Sendgrid, o Slack e o WebEx Teams.
Twilio Sendgrid Mail
Para ativar as notificações por email, faça o seguinte:
Crie uma conta da API Mail do Twilio Sendgrid
Nesta secção, cria uma conta da API Mail do Twilio Sendgrid e obtém uma chave da API. Se já tiver o SendGrid ativado, avance para a secção Obtenha uma chave da API Mail do Twilio SendGrid e certifique-se de que a chave da API existente tem autorizações adequadas.
Obtenha uma chave da API Mail do Twilio Sendgrid
Em seguida, implementa uma função do Cloud Run para enviar notificações para um endereço de email.
Crie a função do SendGrid no Cloud Run
Nesta secção, implementa uma função que envia notificações para a sua conta de email.
Slack
Para enviar notificações para um canal do Slack, faça o seguinte:
Crie uma nova app do Slack
Nesta secção, cria uma nova app Slack para receber notificações.
Em seguida, implementa uma função do Cloud Run para enviar notificações a um grupo do Slack.
Crie a função do Cloud Run do Slack
Nesta secção, implementa uma função para enviar notificações para a sua conta do Slack.
WebEx
Para enviar notificações para a sua conta do WebEx Teams, faça o seguinte:
Criar uma conta de serviço
Por predefinição, as funções do Cloud Run não podem obter recursos do Security Command Center. Nesta secção, aprovisiona uma conta de serviço que permite que as funções do Cloud Run obtenham recursos associados a descobertas.
Crie um bot do Webex
Nesta secção, cria um bot do WebEx que publica mensagens no seu espaço de trabalho.
Adicione o bot do Webex ao espaço de trabalho
Nesta secção, adiciona o bot WebEx a um espaço de trabalho.
Em seguida, implementa uma função do Cloud Run para enviar notificações para o seu espaço de trabalho do WebEx.
Crie a função do Cloud Run do WebEx
Nesta secção, implementa uma função para enviar notificações para a sua conta do WebEx.
Se os passos anteriores para o serviço selecionado forem concluídos sem erros, a configuração está concluída e começa a receber notificações. Keep in mind:
Para alterar o fluxo de trabalho das notificações, pode fazer o seguinte:
Testar notificações
Para testar se as notificações estão configuradas corretamente, siga as instruções abaixo para alternar as descobertas de gravidade elevada entre os estados ativo e inativo.
Email:
Slack:
As mensagens enviadas para o WebEx, que contêm mais informações neste guia, são semelhantes à seguinte imagem.
Resolução de problemas
Se não estiverem a ser enviadas nem recebidas mensagens de email ou de chat, siga os passos abaixo para identificar e resolver potenciais problemas.
Limpar
Para evitar incorrer em custos na sua Google Cloud conta pelos recursos usados neste tutorial, elimine o projeto que contém os recursos ou mantenha o projeto e elimine os recursos individuais.