Slack

Versão de integração: 23.0

Configure o Slack para funcionar com o Google Security Operations

Para configurar o Slack para funcionar com o Google SecOps, primeiro tem de criar uma nova app:

  1. Aceda a https://api.slack.com/ e clique em Start Building.

  2. Introduza os parâmetros Nome da app e Espaço de trabalho do Slack de desenvolvimento. Clique em Criar app.

    Crie uma caixa de diálogo da app Slack

  3. Aceda ao separador OAuth e autorizações e desloque a página para baixo até às secções Âmbitos.

    Separador OAuth e autorizações

  4. Adicione os seguintes âmbitos/autorizações. O Slack recomenda que adicione âmbitos de tokens OAuth para um bot e não autorizações do utilizador:

    • channels:history
    • channels:manage
    • channels:read
    • chat:write
    • files:write
    • groups:history
    • groups:write
    • groups:read
    • im:read
    • im:write
    • im:history
    • mpim:read
    • mpim:history
    • mpim:write
    • users:read
    • users:read.email

    Caixa de diálogo Âmbitos de autorização

  5. Para permitir a interatividade da app para ações como "Enviar mensagem interativa" e "Aguardar resposta com webhook", adicione um URL de pedido para a sua app. Para mais informações, consulte o documento Processar a interação do utilizador nas suas apps Slack disponível na documentação do Slack.

  6. Desloque a página para cima e clique em Instalar app no Workspace.

    Localização do botão Instalar app no Workspace

  7. Clique em Permitir.

    Definições de acesso às autorizações do LabBot

  8. Copie um dos tokens criados, consoante pretenda usar um bot ou um utilizador.

  9. Configure a integração com um desses tokens.

Rede

Função Porta predefinida Direção Protocolo
API Vários valores De saída apitoken

Configure a integração do Slack no Google SecOps

Para obter instruções detalhadas sobre como configurar uma integração no Google SecOps, consulte o artigo Configure integrações.

Parâmetros de integração

Use os seguintes parâmetros para configurar a integração:

Nome a apresentar do parâmetro Tipo Valor predefinido É obrigatório Descrição
Nome da instância String N/A Não Nome da instância para a qual pretende configurar a integração.
Descrição String N/A Não Descrição da instância.
Chave da API String N/A Sim Token de API gerado na consola do Slack.
Validar SSL Caixa de verificação Desmarcado Não Use esta caixa de verificação se a sua ligação ao Slack exigir uma validação SSL (desmarcada por predefinição).
Executar remotamente Caixa de verificação Desmarcado Não Selecione o campo para executar a integração configurada remotamente. Depois de selecionada, a opção aparece para selecionar o utilizador remoto (agente).

Ações

Fazer pergunta

Descrição

Fazer uma pergunta no Slack.

Parâmetros

Nome do parâmetro Tipo Valor predefinido É obrigatório Descrição
Canal String N/A Sim Canal de destino.
Pergunta String N/A Sim Conteúdo da pergunta.

Executar em

Esta ação é executada em todas as entidades.

Resultados da ação

Resultado do script
Nome do resultado do script Opções de valores Exemplo
is_succeed Verdadeiro/Falso is_succeed:False
Resultado JSON
N/A

Bloco de criação

Descrição

Crie um bloco de mensagens do Slack com base nos critérios de entrada fornecidos. Esta ação cria um bloco com um webhook que pode ser transmitido posteriormente à ação "Enviar mensagem interativa" para enviar uma mensagem com.

Parâmetros

Nome do parâmetro Tipo Valor predefinido É obrigatório Descrição
Pergunta String N/A Sim Especifique o texto da pergunta a adicionar ao bloco.
Botões de respostas String N/A Sim Especifique os botões de resposta a adicionar ao bloco.
URL de base do Siemplify String N/A Sim Especifique o URL base do servidor do Google SecOps a adicionar ao bloco.
ID do caso String N/A Sim Especifique o ID do registo do Google SecOps a adicionar ao bloqueio.
UUID do token do webhook String N/A Sim Especifique o UUID do token do webhook a monitorizar para a resposta do utilizador.

Exemplos de utilização do manual de estratégias

Crie um bloco que pode ser transmitido posteriormente à ação "Enviar mensagem avançada" para enviar uma mensagem com um bloco.

Executar em

Esta ação não é executada em entidades.

Resultados da ação

Resultado do script
Nome do resultado do script Opções de valores Exemplo
is_succeed Verdadeiro/Falso is_succeed:False
Resultado JSON
{
  "result": "[{\"type\": \"section\", \"block_id\": \"f99958f1-c1f1-4fdb-bb8b-a382d952d5bd\", \"text\": {\"type\": \"mrkdwn\", \"text\": \"yes?\", \"verbatim\": false}},{\"type\": \"actions\", \"block_id\": \"2850e684-472a-472f-9a32-96294cbe9046\", \"elements\": [{\"type\": \"button\", \"text\": {\"type\": \"plain_text\", \"text\": \"y\"}, \"action_id\": \"y\", \"url\": \"...\"}, {\"type\": \"button\", \"text\": {\"type\": \"plain_text\", \"text\": \"n\"}, \"action_id\": \"n\", \"url\": \"...\"}, {\"type\": \"button\", \"text\": {\"type\": \"plain_text\", \"text\": \"View Case in Siemplify\"}, \"action_id\": \"View Case in Siemplify\", \"url\": \"...\"}]}]"
}
Case Wall
Tipo de resultado Valor / descrição Tipo
Mensagem de saída*

A ação não deve falhar nem parar a execução de um guia interativo:

Se um bloco de criação for criado com êxito (is_succeed=True): "O bloco do Slack foi criado com êxito."

Se não for possível criar um bloco do Slack devido a um erro geral (is_succeed=False): "Failed to create a block because of the occurred error: {0}".format(error text)

A ação deve falhar e parar a execução de um guia interativo:

Se não for especificado um URL baseado em webhook na configuração da integração: "Falha ao executar a ação. Especifique o parâmetro de integração "URL base do webhook"."

Se for comunicado um erro fatal, como credenciais incorretas, sem ligação ao servidor ou outro: "Falha ao executar a ação "Enviar mensagem avançada"! O erro é {0}".format(exception.stacktrace)

Geral

Criar canal

Descrição

Crie um canal do Slack.

Parâmetros

Nome do parâmetro Tipo Valor predefinido É obrigatório Descrição
Nome do canal String N/A Sim

Especifique o nome do canal.

Nota: os nomes dos canais só podem conter letras minúsculas, números, hífenes e sublinhados, e têm de ter um máximo de 80 carateres.

IDs de utilizador String N/A Sim

Especifique os IDs dos utilizadores que devem ser convidados para o canal recém-criado.

Exemplo: U014JDHLW87, U08544ABC85.

É privado Caixa de verificação Desmarcado Não Se estiver ativada, a ação cria um canal privado.

Executar em

Esta ação é executada em todas as entidades.

Resultados da ação

Resultado do script
Nome do resultado do script Opções de valores Exemplo
is_success Verdadeiro/Falso is_success:False
Resultado JSON
{
    "is_general": "False",
    "name_normalized": "12asd1237712318",
    "is_channel": "True",
    "creator": "U014J4NFQQG",
    "is_member": "True",
    "is_archived": "False",
    "topic": {
        "last_set": "0",
        "value": " ",
        "creator": " "
    },
    "parent_conversation": "None",
    "is_im": "False",
    "is_ext_shared": "False",
    "previous_names": [],
    "last_read": "0000000000.000000",
    "id": "C014S1G6DB4",
    "is_org_shared": "False",
    "pending_connected_team_ids": [],
    "is_pending_ext_shared": "False",
    "is_mpim": "False",
    "is_group": "False",
    "shared_team_ids": ["T013MJHSNCT"],
    "purpose": {
        "last_set": 0,
        "value": " ",
        "creator": " "
    },
    "is_private": "False",
    "is_shared": "False",
    "name": "12asd1237712318",
    "created": "1591194197",
    "pending_shared": [],
    "unlinked": 0,
    "priority": 0
}
Case Wall
Tipo de resultado Valor / descrição Tipo
Mensagem de saída*

A ação não deve falhar nem parar a execução de um guia interativo:

Se "ok"== true e o parâmetro de ação "Private" for falso e o parâmetro de IDs de utilizadores estiver vazio (is_success=true):

"Successfully created channel {0}".format(name)

Se "ok"== true e o parâmetro de ação "Private" for verdadeiro e o parâmetro de IDs de utilizadores estiver vazio (is_success=true): "Successfully created private channel {0}".format(name)

Se "ok"== true e o parâmetro de ação "Private" for false e os IDs dos utilizadores estiverem disponíveis (is_success=true): "Successfully created channel {0} and added {1} users".format(name, user_ids)

Se "ok"== true e o parâmetro de ação "Private" for verdadeiro e os IDs dos utilizadores estiverem disponíveis (is_success=true):

"Successfully created private channel {0} and added {1} users".format(name, user_ids)

If "ok" == false. No primeiro pedido (is_success=false):

"Falha ao criar o canal {0}. Reason: {1}".format(name, value of error parameter from response)

Se "ok" == false no segundo pedido (is_success=false):

"O canal {0} foi criado, mas os utilizadores não foram convidados. Reason:".format(name, value of error parameter from response)

If "ok" == false and error == "user_not_found" (is_success=false):

"Não foi possível adicionar utilizadores ao canal {0}. Motivo: {1} dos IDs de utilizador especificados não existe no Slack".format(name, len(errors) from the response)

A ação deve falhar e parar a execução de um guia interativo:

Se for comunicado um erro fatal (credenciais incorretas, erro de ligação, falhas de ações): "Erro ao executar a ação "Criar canal". Motivo: {0}''.format(error.Stacktrace)

Geral

Obtenha o histórico de conversas do canal ou do utilizador

Descrição

Obter o histórico de conversas de um utilizador ou um canal com base nos critérios de entrada fornecidos. Esta ação funciona com o ID do canal ou do utilizador, que pode ser pesquisado com as ações "List Channels" ou "List User".

Parâmetros

Nome do parâmetro Tipo Valor predefinido É obrigatório Descrição
ID do canal ou do utilizador String N/A Sim Especifique o ID do canal ou do utilizador para obter o histórico de conversas.
Intervalo de tempo LDD

Última hora

Valores possíveis:

  • Última hora
  • Últimas 6 horas
  • Últimas 24 horas
  • Semana passada
  • Mês passado
  • Personalizado
Não

Especifique um período para os resultados.

Se "Personalizado" estiver selecionado, também tem de fornecer o parâmetro "Hora de início".

Hora de início String N/A Não

Especifique a hora de início dos resultados.

Este parâmetro é obrigatório se "Personalizado" estiver selecionado para o parâmetro "Intervalo de tempo".

Formato: ISO 8601.

Exemplo: 2021-08-05T05:18:42Z

Hora de fim String N/A Não

Especifique a hora de fim dos resultados.

Se não for fornecido nada e "Personalizado" for selecionado para o parâmetro "Intervalo de tempo", este parâmetro usa a hora atual.

Formato: ISO 8601.

Exemplo: 2021-08-05T05:18:42Z.

Máximo de registos a devolver Número inteiro 20 Não

Especifique o número de registos a devolver.

Se não for fornecido nada, a ação devolve 20 registos.

Exemplos de utilização do manual de estratégias

Obter o histórico de conversas para investigar alertas.

É apresentado em

Esta ação não é executada em entidades.

Resultados da ação

Resultado do script
Nome do resultado do script Opções de valores Exemplo
is_success Verdadeiro/Falso is_success:False
Resultado JSON
[
  {
    "bot_id": "B02D9QYM7P0",
    "type": "message",
    "text": "test",
    "user": "U02D1RPLVST",
    "ts": "1665988448.627219",
    "app_id": "A02DDGD942Z",
    "team": "T02CX3N6B0B",
    "bot_profile": {
      "id": "B02D9QYM7P0",
      "deleted": false,
      "name": "Siemplify-test",
      "updated": 1630908872,
      "app_id": "A02DDGD942Z",
      "icons": {
        "image_36": "https://a.slack-edge.com/80588/img/plugins/app/bot_36.png",
        "image_48": "https://a.slack-edge.com/80588/img/plugins/app/bot_48.png",
        "image_72": "https://a.slack-edge.com/80588/img/plugins/app/service_72.png"
      },
      "team_id": "T02CX3N6B0B"
    },
    "blocks": [
      {
        "type": "rich_text",
        "block_id": "JbVUf",
        "elements": [
          {
            "type": "rich_text_section",
            "elements": [
              {
                "type": "text",
                "text": "test"
              }
            ]
          }
        ]
      }
    ]
  }
]
Case Wall
Tipo de resultado Valor / descrição Tipo
Mensagem de saída*

A ação não deve falhar nem parar a execução de um guia interativo:

Se o histórico da conversa for encontrado com êxito (is_succeed=True): "O histórico da conversa foi obtido com êxito."

Se não for encontrada a conversa com o ID fornecido (is_succeed=False): "Failed to find conversation for provided id {0}".format(channel_or_user_id)

Se a conversa com o ID fornecido for encontrada e não forem encontradas mensagens para o período fornecido (is_succeed=False): "Conversation with id {0} was found, but no messages were found for the provided time frame.".format(channel_or_user_id)

A ação deve falhar e parar a execução de um guia interativo:

Se for comunicado um erro fatal, como credenciais incorretas, nenhuma ligação ao servidor ou outro: "Falha ao executar a ação "Enviar mensagem avançada"! O erro é {0}".format(exception.stacktrace)

Se for fornecido um valor inválido para o parâmetro "Max Records to Return" (Máximo de registos a devolver): "Error executing action "{action name}". Motivo: foi fornecido um valor inválido para "Max Records to Return": . Deve ser fornecido um número positivo"."

Se "Personalizado" estiver selecionado para o parâmetro "Intervalo de tempo" e o parâmetro "Hora de início" não estiver especificado: "Erro ao executar a ação "{nome da ação}". Motivo: "A hora de início não foi facultada para o intervalo de tempo personalizado."

Geral

Obtenha detalhes do utilizador

Descrição

Obtenha detalhes do utilizador do Slack com base nos critérios de entrada fornecidos.

Parâmetros

Nome do parâmetro Tipo Valor predefinido É obrigatório Descrição
Pesquisar por LDD

Email

Valores possíveis:

  • Email
  • Nome
  • ID
Sim Especifique o parâmetro pelo qual pesquisar os detalhes do utilizador.
Valor do utilizador String N/A Sim Especifique o valor do utilizador pelo qual pesquisar.

Exemplos de utilização do manual de estratégias

Obtenha detalhes do utilizador para enriquecer o processamento de alertas no Google SecOps.

Executar em

Esta ação não é executada em entidades.

Resultados da ação

Resultado do script
Nome do resultado do script Opções de valores Exemplo
is_success Verdadeiro/Falso is_success:False
Resultado JSON
{
  "id": "U043FPEMATG",
  "team_id": "T02CX3N6B0B",
  "name": "example.user",
  "deleted": false,
  "color": "3c989f",
  "real_name": "Example User",
  "tz": "Europe/Europe",
  "tz_label": "Central European Summer Time",
  "tz_offset": 7200,
  "profile": {
    "title": "",
    "phone": "",
    "skype": "",
    "real_name": "Example User",
    "real_name_normalized": "Example User",
    "display_name": "Example User",
    "display_name_normalized": "Example User",
    "fields": null,
    "status_text": "",
    "status_emoji": "",
    "status_emoji_display_info": [],
    "status_expiration": 0,
    "avatar_hash": "gc297456197c",
    "email": "example.user@example.com",
    "first_name": "Example",
    "last_name": "User",
    "image_24": "https://secure.gravatar.com/avatar/c297456197c0de7baa8c4b9a2398ecd1.jpg?s=24&d=https%3A%2F%2Fa.slack-edge.com%2Fdf10d%2Fimg%2Favatars%2Fava_0011-24.png",
    "image_32": "https://secure.gravatar.com/avatar/c297456197c0de7baa8c4b9a2398ecd1.jpg?s=32&d=https%3A%2F%2Fa.slack-edge.com%2Fdf10d%2Fimg%2Favatars%2Fava_0011-32.png",
    "image_48": "https://secure.gravatar.com/avatar/c297456197c0de7baa8c4b9a2398ecd1.jpg?s=48&d=https%3A%2F%2Fa.slack-edge.com%2Fdf10d%2Fimg%2Favatars%2Fava_0011-48.png",
    "image_72": "https://secure.gravatar.com/avatar/c297456197c0de7baa8c4b9a2398ecd1.jpg?s=72&d=https%3A%2F%2Fa.slack-edge.com%2Fdf10d%2Fimg%2Favatars%2Fava_0011-72.png",
    "image_192": "https://secure.gravatar.com/avatar/c297456197c0de7baa8c4b9a2398ecd1.jpg?s=192&d=https%3A%2F%2Fa.slack-edge.com%2Fdf10d%2Fimg%2Favatars%2Fava_0011-192.png",
    "image_512": "https://secure.gravatar.com/avatar/c297456197c0de7baa8c4b9a2398ecd1.jpg?s=512&d=https%3A%2F%2Fa.slack-edge.com%2Fdf10d%2Fimg%2Favatars%2Fava_0011-512.png",
    "status_text_canonical": "",
    "team": "T02CX3N6B0B"
  },
  "is_admin": false,
  "is_owner": false,
  "is_primary_owner": false,
  "is_restricted": false,
  "is_ultra_restricted": false,
  "is_bot": false,
  "is_app_user": false,
  "updated": 1663939355,
  "is_email_confirmed": true,
  "who_can_share_contact_card": "EVERYONE"
}
Case Wall
Tipo de resultado Valor / descrição Tipo
Mensagem de saída\*

A ação não deve falhar nem parar a execução de um guia interativo:

Se os detalhes do utilizador forem encontrados com êxito (is_succeed=True): "Os detalhes do utilizador foram obtidos com êxito."

Se não forem encontrados detalhes do utilizador com base nos critérios fornecidos (is_succeed=False): "Failed to find user details based on the provided criteria: Search by: <0> User value: <1>".format(search_by, user_value)

Se os detalhes do utilizador forem encontrados pelo nome e forem encontradas mais do que uma correspondência (is_succeed=True): "For the provided search criteria multiple matches were found: Search by: <0> User value: <1>".format(search_by, user_value)

Se o utilizador não for encontrado (is_succeed=False) devido a algum erro geral: "Failed to fetch user details because of occurred error: (0}" (texto de erro)

A ação deve falhar e parar a execução de um guia interativo:

Se for comunicado um erro fatal, como credenciais incorretas, sem ligação ao servidor ou outro: "Falha ao executar a ação "Enviar mensagem avançada"! O erro é {0}".format(exception.stacktrace)

Geral
Tabela de parede da caixa

Nome da tabela: detalhes do utilizador do Slack

Colunas da tabela:

  • ID
  • ID da Equipa
  • Nome
  • Nome real
  • Nome a apresentar
  • Nome próprio
  • Apelido
  • Hora atualizada
  • Fuso horário
  • Título
  • Telefone
  • É administrador
  • É proprietário
  • É o proprietário principal
  • É restrito
  • É ultra restrito
  • É um bot
  • É utilizador da app
  • Is Email Confirmed
Geral

Obtenha detalhes do utilizador por ID

Descrição

Obtenha os detalhes do utilizador através do respetivo ID.

Parâmetros

Nome do parâmetro Tipo Valor predefinido É obrigatório Descrição
ID do utilizador String N/A Sim ID do utilizador.

Executar em

Esta ação é executada em todas as entidades.

Resultados da ação

Resultado do script
Nome do resultado do script Opções de valores Exemplo
is_succeed Verdadeiro/Falso is_succeed:False
Resultado JSON
N/A

Listar canais

Descrição

Aceder a uma lista de canais do Slack.

Parâmetros

N/A

Executar em

Esta ação é executada em todas as entidades.

Resultados da ação

Resultado do script
Nome do resultado do script Opções de valores Exemplo
is_succeed Verdadeiro/Falso is_succeed:False
Resultado JSON
[
    {
        "is_org_shared": false,
        "is_general": true,
        "name_normalized": "general",
        "name": "general",
        "is_channel": true,
        "created": 1575550599,
        "is_member": true,
        "is_mpim": false,
        "is_archived": false,
        "creator": "URALP6WRJ",
        "topic": {
            "last_set": 1575550599,
            "value": "Company-wide announcements and work-based matters",
            "creator": "URALP6WRJ"
        },
        "num_members": 1,
        "purpose": {
            "last_set": 1575550599,
            "value": "This channel is for workspace-wide communication and announcements. All members are in this channel.",
            "creator": "URALP6WRJ"
        },
        "members": ["URALP6WRJ"],
        "unlinked": 0,
        "is_shared": false,
        "id": "CRB4ZHGNR",
        "is_private": false,
        "previous_names": []
    }, {
        "is_org_shared": false,
        "is_general": false,
        "name_normalized": "random",
        "name": "random",
        "is_channel": true,
        "created": 1575550599,
        "is_member": true,
        "is_mpim": false,
        "is_archived": false,
        "creator": "URALP6WRJ",
        "topic": {
            "last_set": 1575550599,
            "value": "Non-work banter and water cooler conversation",
            "creator": "URALP6WRJ"
        },
        "num_members": 1,
        "purpose": {
            "last_set": 1575550599,
            "value": "A place for non-work-related flimflam, faffing, hodge-podge or jibber-jabber you'd prefer to keep out of more focused work-related channels.",
            "creator": "URALP6WRJ"
        },
        "members": ["URALP6WRJ"],
        "unlinked": 0,
        "is_shared": false,
        "id": "CRD0KF9T9",
        "is_private": false,
        "previous_names": []
    }, {
        "is_org_shared": false,
        "is_general": false,
        "name_normalized": "website",
        "name": "website",
        "is_channel": true,
        "created": 1575550600,
        "is_member": true,
        "is_mpim": false,
        "is_archived": false,
        "creator": "URALP6WRJ",
        "topic": {
            "last_set": 0,
            "value": " ",
            "creator": " "
        },
        "num_members": 1,
        "purpose": {
            "last_set": 0,
            "value": " ",
            "creator": " "
        },
        "members": ["URALP6WRJ"],
        "unlinked": 0,
        "is_shared": false,
        "id": "CRDAUBZP0",
        "is_private": false,
        "previous_names": []
    }
]
Case Wall
Tipo de resultado Valor / descrição Tipo
Mensagem de saída*

A ação não deve falhar nem parar a execução de um guia interativo:

Se "ok" == false (is_success=false): "Falha ao listar canais. Motivo: {0}".format(value of error parameter from response)

Geral

Listar utilizador

Descrição

Esta ação tem a função de obter uma lista de utilizadores do Slack.

Parâmetros

N/A

Executar em

Esta ação é executada em todas as entidades.

Resultados da ação

Resultado do script
Nome do resultado do script Opções de valores Exemplo
is_succeed Verdadeiro/Falso is_succeed:False
Resultado JSON
[
    {
        "profile": {
            "status_text": " ",
            "display_name": " ",
            "status_emoji": " ",
            "title": " ",
            "status_text_canonical": " ",
            "team": "TRALP6VNY",
            "real_name": "somerealname",
            "image_24": "https://secure.gravatar.com/avatar/2d62053d7f735bc096de59639eb8f350.jpg?s=24&d=https%3A%2F%2Fa.slack-edge.com%2Fdf10d%2Fimg%2Favatars%2Fava_0022-24.png",
            "phone": " ",
            "real_name_normalized": "somerealnamen",
            "image_512": "https://secure.gravatar.com/avatar/2d62053d7f735bc096de59639eb8f350.jpg?s=512&d=https%3A%2F%2Fa.slack-edge.com%2Fdf10d%2Fimg%2Favatars%2Fava_0022-512.png",
            "image_72": "https://secure.gravatar.com/avatar/2d62053d7f735bc096de59639eb8f350.jpg?s=72&d=https%3A%2F%2Fa.slack-edge.com%2Fdf10d%2Fimg%2Favatars%2Fava_0022-72.png",
            "image_32": "https://secure.gravatar.com/avatar/2d62053d7f735bc096de59639eb8f350.jpg?s=32&d=https%3A%2F%2Fa.slack-edge.com%2Fdf10d%2Fimg%2Favatars%2Fava_0022-32.png",
            "image_48": "https://secure.gravatar.com/avatar/2d62053d7f735bc096de59639eb8f350.jpg?s=48&d=https%3A%2F%2Fa.slack-edge.com%2Fdf10d%2Fimg%2Favatars%2Fava_0022-48.png",
            "skype": " ",
            "avatar_hash": "g2d62053d7f7",
            "display_name_normalized": " ",
            "status_expiration": 0,
            "email": "mail@seimplify.co",
            "image_192": "https://secure.gravatar.com/avatar/2d62053d7f735bc096de59639eb8f350.jpg?s=192&d=https%3A%2F%2Fa.slack-edge.com%2Fdf10d%2Fimg%2Favatars%2Fava_0022-192.png"
        },
        "updated": 1575550598,
        "tz": "Europe/Moscow",
        "name": "name",
        "deleted": false,
        "is_app_user": false,
        "is_bot": false,
        "tz_label": "Moscow Time",
        "real_name": "realname",
        "color": "9f69e7",
        "team_id": "TRALP6VNY",
        "is_admin": true,
        "is_ultra_restricted": false,
        "is_restricted": false,
        "is_owner": true,
        "tz_offset": 14400,
        "has_2fa": false,
        "id": "URALP6WRJ",
        "is_primary_owner": true
    }, {
        "profile": {
            "last_name": " ",
            "status_emoji": " ",
            "display_name_normalized": "Slackbot",
            "image_32": "https://a.slack-edge.com/80588/img/slackbot_32.png",
            "skype": " ",
            "image_72": "https://a.slack-edge.com/80588/img/slackbot_72.png",
            "status_expiration": 0,
            "image_192": "https://a.slack-edge.com/80588/marketing/img/avatars/slackbot/avatar-slackbot.png",
            "first_name": "slackbot",
            "display_name": "Slackbot",
            "title": " ",
            "real_name_normalized": "Slackbot",
            "always_active": true,
            "status_text_canonical": " ",
            "image_24": "https://a.slack-edge.com/80588/img/slackbot_24.png",
            "phone": " ",
            "image_48": "https://a.slack-edge.com/80588/img/slackbot_48.png",
            "fields": null,
            "real_name": "Slackbot",
            "image_512": "https://a.slack-edge.com/80588/img/slackbot_512.png",
            "team": "TRALP6VNY",
            "avatar_hash": "sv41d8cd98f0",
            "status_text": " "
        },
        "updated": 0,
        "tz": null,
        "name": "slackbot",
        "deleted": false,
        "is_app_user": false,
        "is_bot": false,
        "tz_label": "Pacific Standard Time",
        "real_name": "Slackbot",
        "color": "757575",
        "team_id": "TRALP6VNY",
        "is_admin": false,
        "is_ultra_restricted": false,
        "is_restricted": false,
        "is_owner": false,
        "tz_offset": -28800,
        "id": "USLACKBOT",
        "is_primary_owner": false
    }
]

Tchim-tchim

Descrição

Testar conetividade.

Parâmetros

N/A

Executar em

Esta ação é executada em todas as entidades.

Resultados da ação

Resultado do script
Nome do resultado do script Opções de valores Exemplo
is_succeed Verdadeiro/Falso is_succeed:False
Resultado JSON
N/A

Mude o nome do canal

Descrição

Mude o nome do canal do Slack.

Parâmetros

Nome do parâmetro Tipo Valor predefinido É obrigatório Descrição
Nome do canal String N/A Não

Especifique o nome do canal ao qual quer mudar o nome.

Nota: se os parâmetros "Nome do canal" e "ID do canal" forem especificados, a ação só funciona com o ID.

ID do canal String N/A Não

Especifique o ID do canal cujo nome quer mudar.

Nota: se os parâmetros "Nome do canal" e "ID do canal" forem especificados, a ação só funciona com o ID.

Novo nome String N/A Sim

Especifique um novo nome para o canal.

Nota: os nomes dos canais só podem conter letras minúsculas, números, hífenes e sublinhados, e têm de ter um máximo de 80 carateres.

Executar em

Esta ação não é executada em entidades.

Resultados da ação

Resultado do script
Nome do resultado do script Opções de valores Exemplo
is_succeed Verdadeiro/Falso is_succeed:False
Resultado JSON

Quando "ok" == true:

{
    "channel": {
        "id": "C013ELA1YVC",
        "name": "project_old",
        "is_channel": true,
        "is_group": false,
        "is_im": false,
        "created": 1589444943,
        "is_archived": false,
        "is_general": false,
        "unlinked": 0,
        "name_normalized": "project_old",
        "is_shared": false,
        "parent_conversation": null,
        "creator": "U0136KZ0P5M",
        "is_ext_shared": false,
        "is_org_shared": false,
        "shared_team_ids": [
            "T013MJHSNCT"
        ],
        "pending_shared": [],
        "pending_connected_team_ids": [],
        "is_pending_ext_shared": false,
        "is_member": true,
        "is_private": false,
        "is_mpim": false,
        "last_read": "1595242486.000300",
        "topic": {
            "value": "",
            "creator": "",
            "last_set": 0
        },
        "purpose": {
            "value": "This *channel* is for working on a project. Hold meetings, share docs, and make decisions together with your team.",
            "creator": "U0136KZ0P5M",
            "last_set": 1589444943
        },
        "previous_names": [
            "project_new",
            "project"
        ]
    },
    "ok": true,
    "warning": "missing_charset",
    "response_metadata": {
        "warnings": [
            "missing_charset"
        ]
    }
}

Quando "ok" == false:

{
    "ok": false,
    "error": "name_taken",
    "warning": "missing_charset",
    "response_metadata": {
        "warnings": [
            "missing_charset"
        ]
    }
}
Case Wall
Tipo de resultado Valor / descrição Tipo
Mensagem de saída*

A ação não deve falhar nem parar a execução de um guia interativo:

If "ok"== true (is_success=true): "Successfully renamed channel {0} to {1} {0}".format(name/ID, new name)

If "ok"== false (is_success=false): "Action wasn't able to rename channel {0}. Motivo: {1}".format(name,error from the response)

Se não foi possível encontrar o canal pelo nome do canal (is_success=false): "Não foi possível mudar o nome do canal {0}. Motivo: não foi possível encontrar o canal".format(name)

A ação deve falhar e parar a execução de um guia interativo:

Se for comunicado um erro fatal (credenciais incorretas, erro de ligação, falhas de ações): "Erro ao executar a ação "Mudar o nome do canal". Motivo: {0}''.format(error.Stacktrace)

Se os parâmetros "Channel Name" e "Channel ID" não forem especificados: "Erro ao executar a ação "Rename Channel". Motivo: tem de especificar o "Nome do canal" ou o "ID do canal"."

Geral

Enviar mensagem avançada

Descrição

Envie uma mensagem avançada para um canal ou um utilizador do Slack. Esta ação oferece a capacidade de enviar mensagens de texto simples e mensagens de blocos do Slack com botões, formatação avançada e muito mais. Para mais informações sobre mensagens de bloqueio, consulte o Slack Block Kit .

Esta ação pode ser usada em conjunto com a ação "Aguardar resposta com webhook" para primeiro enviar uma mensagem de bloqueio com um webhook a um utilizador e, mais tarde, com a ação "Aguardar resposta com webhook", verificar a resposta do utilizador.

Parâmetros

Nome do parâmetro Tipo Valor predefinido É obrigatório Descrição
Tipo de mensagem LDD

Texto

Valores possíveis:

  • Texto
  • Bloquear
Sim Especifique o tipo de mensagem a enviar.
Tipo de destinatário LDD

Nome

Valores possíveis:

  • Nome
  • ID
  • Email
Sim

Especifique o canal ou o nome de utilizador (nome completo) para o qual quer enviar a mensagem.

Opcionalmente, especifique o ID do canal ou do utilizador, ou o endereço de email de um utilizador.

Destinatário String N/A Sim Especifique o destinatário ao qual quer enviar uma mensagem.
Mensagem String N/A Sim Especifique o conteúdo da mensagem a enviar.

Exemplos de utilização do manual de estratégias

Enviar uma mensagem com conteúdo rico, como botões, links ou imagens.

Executar em

Esta ação não é executada em entidades.

Resultados da ação

Resultado do script
Nome do resultado do script Opções de valores Exemplo
is_succeed Verdadeiro/Falso is_succeed:False
Resultado JSON
[
  {
    "Entity": "U043FPEMATG",
    "EntityResult": {
      "channel": "D044C3DUMB2",
      "message": {
        "bot_id": "B02D9QYM7P0",
        "type": "message",
        "text": "test msg",
        "user": "U02D1RPLVST",
        "ts": "1666008612.116169",
        "app_id": "A02DDGD942Z",
        "team": "T02CX3N6B0B",
        "bot_profile": {
          "id": "B02D9QYM7P0",
          "app_id": "A02DDGD942Z",
          "name": "test",
          "icons": {
            "image_36": "https://a.slack-edge.com/80588/img/plugins/app/bot_36.png",
            "image_48": "https://a.slack-edge.com/80588/img/plugins/app/bot_48.png",
            "image_72": "https://a.slack-edge.com/80588/img/plugins/app/service_72.png"
          },
          "deleted": false,
          "updated": 1630908872,
          "team_id": "T02CX3N6B0B"
        },
        "blocks": [
          {
            "type": "rich_text",
            "block_id": "RJvg",
            "elements": [
              {
                "type": "rich_text_section",
                "elements": [
                  {
                    "type": "text",
                    "text": "test msg"
                  }
                ]
              }
            ]
          }
        ]
      },
      "ts": "1666008612.116169",
      "ok": true
    }
  }
]
Case Wall
Tipo de resultado Valor / descrição Tipo
Mensagem de saída*

A ação não deve falhar nem parar a execução de um guia interativo:

Se a mensagem for enviada com êxito (is_succeed=True): "A mensagem foi enviada com êxito"

Se a mensagem não for enviada com êxito (is_succeed=False) porque não foi encontrado o destinatário especificado: "Message was not sent as the specified recipient {0} with type {1} was not found." (A mensagem não foi enviada porque não foi encontrado o destinatário especificado {0} com o tipo {1}.) (destinatário, tipo de destinatário)

Se a mensagem não for enviada com êxito (is_succeed=False) devido a algum erro geral: "Message was not sent because of occurred error: (0}" (texto do erro)

A ação deve falhar e parar a execução de um guia interativo:

Se for comunicado um erro fatal, como credenciais incorretas, nenhuma ligação ao servidor ou outro: "Falha ao executar a ação "Enviar mensagem avançada"! O erro é {0}".format(exception.stacktrace)

Geral

Envie uma mensagem interativa

Descrição

Envie uma mensagem interativa para um canal ou um utilizador e, com base no UUID do webhook fornecido, verifique a resposta do utilizador. Esta ação é semelhante à ação "Enviar mensagem avançada", mas permite enviar apenas conteúdo de blocos (não mensagens de texto simples) e também requer um UUID do webhook para verificar a resposta do utilizador a um webhook.

A ação é assíncrona. Ajuste o limite de tempo da ação no IDE em conformidade.

Configure a app Slack usada na integração para permitir mensagens interativas. Para mais informações sobre a configuração da app Slack, consulte o artigo Prepare a sua aplicação para mensagens interativas.

Parâmetros

Nome do parâmetro Tipo Valor predefinido É obrigatório Descrição
Tipo de destinatário LDD

Nome

Valores possíveis:

  • Nome
  • ID
  • Email
Sim

Especifique o canal ou o nome de utilizador (nome completo) para o qual quer enviar a mensagem.

Opcionalmente, especifique o ID do canal ou do utilizador, ou o endereço de email de um utilizador.

Destinatário String N/A Sim Especifique o destinatário ao qual quer enviar uma mensagem.
Mensagem String N/A Sim Especifique o conteúdo da mensagem a enviar.
UUID do token do webhook String N/A Sim Especifique o UUID do token do webhook a monitorizar para a resposta do utilizador.

Exemplos de utilização do manual de estratégias

Enviar uma mensagem com conteúdo rico, como botões, links ou imagens.

Executar em

Esta ação não é executada em entidades.

Resultados da ação

Resultado do script
Nome do resultado do script Opções de valores Exemplo
is_succeed Verdadeiro/Falso is_succeed:False
Resultado JSON
[
  {
    "uuid": "10953f8e-7ef8-4bde-9e9b-212005e0e737",
    "type": "web",
    "token_id": "47289ba5-277e-4ab9-9238-eb31080530ca",
    "ip": "0000:a000000:ad80:000:20ea:653:fb97",
    "hostname": "webhook.site",
    "method": "GET",
    "user_agent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/15.4 Safari/605.1.15",
    "content": "",
    "query": {
      "Answer": "yes"
    },
    "headers": {
      "connection": [
        "close"
      ],
      "accept-encoding": [
        "gzip, deflate, br"
      ],
      "accept-language": [
        "en-US,en;q=0.9"
      ],
      "user-agent": [
        "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/15.4 Safari/605.1.15"
      ],
      "cookie": [
        "_ga=GA"
      ],
      "accept": [
        "text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8"
      ],
      "host": [
        "webhook.site"
      ],
      "content-length": [
        ""
      ],
      "content-type": [
        ""
      ]
    },
    "url": "https://webhook.site/47289ba5-277e-4ab9-9238-xx0000000xx?Answer=yes",
    "size": 0,
    "files": [],
    "created_at": "2022-10-14 19:45:40",
    "updated_at": "2022-10-14 19:45:40",
    "sorting": 1665776740032262,
    "custom_action_output": []
  }
]
Case Wall
Tipo de resultado Valor / descrição Tipo
Mensagem de saída*

A ação não deve falhar nem parar a execução de um guia interativo:

Se a mensagem for enviada com êxito (is_succeed=True): "A mensagem foi enviada com êxito"

Se a mensagem não for enviada com êxito (is_succeed=False) porque não foi encontrado o destinatário especificado: "Message was not sent as the specified recipient {0} with type {1} was not found." (A mensagem não foi enviada porque não foi encontrado o destinatário especificado {0} com o tipo {1}.) (destinatário, tipo de destinatário)

Se a mensagem não for enviada com êxito (is_succeed=False) devido a algum erro geral: "Message was not sent because of occurred error: (0}" (texto do erro)

Mensagens da Case Wall para a funcionalidade assíncrona:

Uma mensagem no mural do registo para as iterações enquanto aguarda a resposta: "A aguardar a resposta à mensagem enviada com um webhook. URL do webhook com UUID: {0}".format(URL do webhook da configuração de integração + UUID do token Web)

Se a resposta for obtida com êxito (is_succeed=True): "Resposta do utilizador a um webhook obtida com êxito! Conteúdo da resposta: {0}".format(payload that was sent from user to a webhook)

Se não for possível obter a resposta até ao limite de tempo: "Não foi encontrada uma resposta do utilizador a um webhook e a ação foi interrompida devido ao limite de tempo."

A ação deve falhar e parar a execução de um guia interativo:

Se não for especificado um URL baseado em webhook na configuração da integração e for especificado um token UUID do webhook: "Falha ao executar a ação. Especifique o parâmetro de integração "URL base do webhook". "

Se for comunicado um erro fatal, como credenciais incorretas, nenhuma ligação ao servidor ou outro: "Falha ao executar a ação "Enviar mensagem interativa"! O erro é {0}".format(exception.stacktrace)

Geral

Enviar mensagem

Descrição

Envie uma mensagem a um utilizador ou a vários utilizadores/canais.

Parâmetros

Nome do parâmetro Tipo Valor predefinido É obrigatório Descrição
Canal String N/A Sim

O nome do canal do Slack ou o endereço de email do utilizador ao qual enviar a mensagem.

Os valores introduzidos têm de estar separados por vírgulas.

Mensagem String N/A Sim Conteúdo da mensagem.

Executar em

Esta ação é executada em todas as entidades.

Resultados da ação

Resultado do script
Nome do resultado do script Opções de valores Exemplo
is_succeed Verdadeiro/Falso is_succeed:False
Resultado JSON
N/A

Carregar ficheiro

Descrição

Adicione ficheiros ao Slack e partilhe-os com os seus colegas para ajudar na colaboração. Pode escolher e carregar ficheiros para o Slack a partir do seu dispositivo ou da sua app de gestão de ficheiros preferida. Os ficheiros carregados são armazenados, pesquisáveis e partilháveis no seu espaço de trabalho.

Parâmetros

Nome do parâmetro Tipo Valor predefinido É obrigatório Descrição
Nome do ficheiro String N/A Sim Nome do ficheiro de destino.
Caminho do ficheiro String N/A Sim Caminho do ficheiro de destino.
Canal String N/A Sim Canal de destino.

Executar em

Esta ação é executada em todas as entidades.

Resultados da ação

Resultado do script
Nome do resultado do script Opções de valores Exemplo
is_succeed Verdadeiro/Falso is_succeed:False
Resultado JSON
N/A

Aguardar resposta

Descrição

Aguardar uma resposta numa discussão a uma mensagem num canal.

Parâmetros

Nome do parâmetro Tipo Valor predefinido É obrigatório Descrição
Canal String N/A Sim Canal de destino.
Data/hora da mensagem String N/A Sim A data/hora da mensagem a partir da qual quer obter as respostas (em milissegundos).
ID do canal String N/A Não O ID do canal do Slack de destino.

Exemplos de utilização de guias interativos

Playbook com ação de envio de mensagem e, depois, aguardar uma resposta (com o canal como marcador de posição da ação anterior – ID do canal)

Executar em

Esta ação é executada em todas as entidades.

Resultados da ação

Resultado do script
Nome do resultado do script Opções de valores Exemplo
is_succeed Verdadeiro/Falso is_succeed:False
Resultado JSON
N/A

Aguarde resposta com webhook

Descrição

Aguardar que um utilizador responda a uma mensagem enviada com um webhook. Esta ação verifica periodicamente o webhook fornecido para ver se o utilizador deu alguma resposta. A ação pode ser usada com a ação "Enviar mensagem avançada", se a mensagem de bloqueio com webhook tiver sido enviada, para verificar se a resposta do utilizador foi fornecida ao webhook.

Esta ação é assíncrona. Ajuste o valor de tempo limite do script no IDE em conformidade.

Parâmetros

Nome do parâmetro Tipo Valor predefinido É obrigatório Descrição
UUID do token do webhook String N/A Sim Especifique o UUID do token do webhook a monitorizar para a resposta do utilizador.

Exemplos de utilização do manual de estratégias

Aguarde uma resposta a uma mensagem com um webhook.

Executar em

Esta ação não é executada em entidades.

Resultados da ação

Resultado do script
Nome do resultado do script Opções de valores Exemplo
is_succeed Verdadeiro/Falso is_succeed:False
Resultado JSON
{
  "client_msg_id": "00000000-0000-0000-0000-000000000000",
  "type": "message",
  "text": "Yes",
  "user": "U0000000",
  "ts": "1578390603.001200",
  "team": "T0000000",
  "blocks": [
    {
      "type": "rich_text",
      "block_id": "2Bb=",
      "elements": [
        {
          "type": "rich_text_section",
          "elements": [
            {
              "type": "text",
              "text": "Example"
            }
          ]
        }
      ]
    }
  ],
  "thread_ts": "1578390492.001100",
  "parent_user_id": "U0000000"
}
Case Wall
Tipo de resultado Valor / descrição Tipo
Mensagem de saída*

A ação não deve falhar nem parar a execução de um guia interativo:

Uma mensagem no mural do registo para as iterações enquanto aguarda a resposta: "A aguardar a resposta à mensagem enviada com um webhook. URL do webhook com UUID: {0}".format(URL do webhook da configuração de integração + UUID do token Web)

Se a resposta for obtida com êxito (is_succeed=True): "Resposta do utilizador ao webhook obtida com êxito! Conteúdo da resposta: {0}".format(payload that was sent from user to a webhook)

Se não for possível obter a resposta até ao limite de tempo: "Não foi encontrada uma resposta do utilizador a um webhook e a ação foi interrompida devido ao limite de tempo."

A ação deve falhar e parar a execução de um guia interativo:

Se o URL baseado no webhook não for especificado na configuração da integração e o token UUID do webhook for especificado: "Falha ao executar a ação. Especifique o parâmetro de integração "URL base do webhook". "

Se for comunicado um erro fatal, como credenciais incorretas, nenhuma ligação ao servidor ou outro: "Falha ao executar a ação "Enviar mensagem avançada"! O erro é {0}".format(exception.stacktrace)

Geral

Precisa de mais ajuda? Receba respostas de membros da comunidade e profissionais da Google SecOps.