Slack
Versão da integração: 23.0
Configurar o Slack para trabalhar com o Google Security Operations
Para configurar o Slack para trabalhar com o Google SecOps, primeiro crie um novo app:
Acesse https://api.slack.com/ e clique em Começar a criar.
Insira os parâmetros Nome do app e Espaço de trabalho do Slack de desenvolvimento. Clique em Criar app.
Acesse a guia OAuth e permissões e role a tela para baixo até as seções Escopos.
Adicione os seguintes escopos/permissões. O Slack recomenda adicionar escopos de token do OAuth para um bot, não permissões de usuário:
- 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
Para permitir a interatividade do app em ações como "Enviar mensagem interativa" e "Aguardar resposta com webhook", adicione um URL de solicitação para seu app. Para mais informações, consulte o documento Processar interação do usuário nos apps do Slack disponível na documentação do Slack.
Role para cima e clique em Instalar aplicativo no espaço de trabalho.
Clique em Permitir.
Copie um dos tokens criados, dependendo se você quer usar um bot ou um usuário.
Configure a integração com um desses tokens.
Rede
Função | Porta padrão | Direção | Protocolo |
---|---|---|---|
API | Multivalores | Saída | apitoken |
Configurar a integração do Slack no Google SecOps
Para instruções detalhadas sobre como configurar uma integração no Google SecOps, consulte Configurar integrações.
Parâmetros de integração
Use os seguintes parâmetros para configurar a integração:
Nome de exibição do parâmetro | Tipo | Valor padrão | É obrigatório | Descrição |
---|---|---|---|---|
Nome da instância | String | N/A | Não | Nome da instância em que você pretende configurar a integração. |
Descrição | String | N/A | Não | Descrição da instância. |
Token da API | String | N/A | Sim | Token de API gerado no console do Slack. |
Verificar SSL | Caixa de seleção | Desmarcado | Não | Use esta caixa de seleção se a conexão do Slack exigir uma verificação SSL (desmarcada por padrão). |
Executar remotamente | Caixa de seleção | Desmarcado | Não | Marque a caixa para executar a integração configurada remotamente. Depois de marcada, a opção aparece para selecionar o usuário remoto (agente). |
Ações
Fazer pergunta
Descrição
Faça uma pergunta no Slack.
Parâmetros
Nome do parâmetro | Tipo | Valor padrão | É obrigatório | Descrição |
---|---|---|---|---|
Canal | String | N/A | Sim | Canal de destino. |
Pergunta | String | N/A | Sim | Conteúdo da pergunta. |
Executar em
Essa ação é executada em todas as entidades.
Resultados da ação
Resultado do script
Nome do resultado do script | Opções de valor | Exemplo |
---|---|---|
is_succeed | Verdadeiro/Falso | is_succeed:False |
Resultado do JSON
N/A
Build Block
Descrição
Crie um bloco de mensagens do Slack com base nos critérios de entrada fornecidos. Essa ação cria um bloco com um webhook que pode ser transmitido posteriormente para a ação "Enviar mensagem interativa" para enviar uma mensagem com.
Parâmetros
Nome do parâmetro | Tipo | Valor padrão | É obrigatório | Descrição |
---|---|---|---|---|
Pergunta | String | N/A | Sim | Especifique o texto da pergunta a ser adicionado ao bloco. |
Botões de respostas | String | N/A | Sim | Especifique os botões de resposta a serem adicionados ao bloco. |
URL base da Siemplify | String | N/A | Sim | Especifique o URL de base do servidor do Google SecOps a ser adicionado ao bloco. |
ID do caso | String | N/A | Sim | Especifique o ID do caso do Google SecOps a ser adicionado ao bloqueio. |
UUID do token do webhook | String | N/A | Sim | Especifique o UUID do token do webhook para monitorar a resposta do usuário. |
Exemplos de casos de uso de playbook
Crie um bloco que pode ser transmitido posteriormente à ação "Enviar mensagem avançada" para enviar uma mensagem com um bloco.
Executar em
Essa ação não é executada em entidades.
Resultados da ação
Resultado do script
Nome do resultado do script | Opções de valor | Exemplo |
---|---|---|
is_succeed | Verdadeiro/Falso | is_succeed:False |
Resultado do 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\": \"...\"}]}]"
}
Painel de casos
Tipo de resultado | Valor / Descrição | Tipo |
---|---|---|
Mensagem de saída* | A ação não pode falhar nem interromper a execução de um playbook: Se um bloco de build for criado com sucesso (is_succeed=True): "O bloco do Slack foi criado com sucesso." Se não for possível criar um bloco do Slack devido a um erro geral (is_succeed=False): "Não foi possível criar um bloco devido ao erro ocorrido: {0}".format(texto do erro) A ação precisa falhar e interromper a execução de um playbook: Se um URL baseado em webhook não for especificado na configuração da integração: "Falha ao executar a ação. Especifique o parâmetro de integração "URL base do webhook"." Se um erro fatal for informado, como credenciais incorretas, sem conexão com o 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 padrão | É obrigatório | Descrição |
---|---|---|---|---|
Nome do canal | String | N/A | Sim | Especifique o nome do canal. Observação:os nomes de canais só podem conter letras minúsculas, números, hifens e sublinhados, e precisam ter até 80 caracteres. |
User IDs | String | N/A | Sim | Especifique os IDs dos usuários que precisam ser convidados para o canal recém-criado. Exemplo: U014JDHLW87, U08544ABC85. |
É particular | Caixa de seleção | Desmarcado | Não | Se ativada, a ação cria um canal particular. |
Executar em
Essa ação é executada em todas as entidades.
Resultados da ação
Resultado do script
Nome do resultado do script | Opções de valor | Exemplo |
---|---|---|
is_success | Verdadeiro/Falso | is_success:False |
Resultado do 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
}
Painel de casos
Tipo de resultado | Valor / Descrição | Tipo |
---|---|---|
Mensagem de saída* | A ação não pode falhar nem interromper a execução de um playbook: Se "ok"== true e o parâmetro de ação "Private" for falso e o parâmetro User-IDs 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 "IDs de usuários" estiver vazio (is_success=true): "Canal particular {0} criado com sucesso".format(name) Se "ok"== true e o parâmetro de ação "Private" for falso e os IDs de usuário 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 de usuário estiverem disponíveis (is_success=true): "O canal particular {0} foi criado e {1} usuários foram adicionados".format(name, user_ids) If "ok" == false. Na primeira solicitação (is_success=false): "Falha ao criar o canal {0}. Motivo: {1}".format(name, value of error parameter from response) Se "ok" == false na segunda solicitação (is_success=false): "O canal {0} foi criado, mas os usuários não foram convidados. Motivo:".format(name, value of error parameter from response) Se "ok" == false e error == "user_not_found" (is_success=false): "Não foi possível adicionar usuários ao canal {0}. Motivo: {1} dos IDs de usuário especificados não existem no Slack".format(name, len(errors) from the response) A ação precisa falhar e interromper a execução de um playbook: Se um erro fatal (credenciais erradas, erro de conexão, falhas de ação) for informado: "Erro ao executar a ação "Criar canal". Motivo: {0}''.format(error.Stacktrace) |
Geral |
Acessar o histórico de conversas do canal ou do usuário
Descrição
Receba o histórico de conversas de um usuário ou canal com base nos critérios de entrada fornecidos. Essa ação funciona com o ID do canal ou do usuário, que pode ser pesquisado com as ações "List Channels" ou "List User".
Parâmetros
Nome do parâmetro | Tipo | Valor padrão | É obrigatório | Descrição |
---|---|---|---|---|
ID do canal ou do usuário | String | N/A | Sim | Especifique o ID do canal ou do usuário para buscar o histórico de conversas. |
Período | DDL | Última hora Valores possíveis:
|
Não | Especifique um período para os resultados. Se "Personalizado" estiver selecionado, você também precisará informar o parâmetro "Horário de início". |
Horário de início | String | N/A | Não | Especifique o horário de início dos resultados. Esse parâmetro é obrigatório se "Personalizado" for selecionado para o parâmetro "Período". Formato: ISO 8601. Exemplo: 2021-08-05T05:18:42Z |
Horário de término | String | N/A | Não | Especifique o horário de término dos resultados. Se nada for fornecido e "Personalizado" for selecionado para o parâmetro "Período", esse parâmetro usará a hora atual. Formato: ISO 8601. Exemplo: 2021-08-05T05:18:42Z. |
Número máximo de registros a serem retornados | Número inteiro | 20 | Não | Especifique o número de registros a serem retornados. Se nada for fornecido, a ação vai retornar 20 registros. |
Exemplos de casos de uso de playbook
Extrair o histórico de conversas para investigar alertas.
Data de execução
Essa ação não é executada em entidades.
Resultados da ação
Resultado do script
Nome do resultado do script | Opções de valor | Exemplo |
---|---|---|
is_success | Verdadeiro/Falso | is_success:False |
Resultado do 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"
}
]
}
]
}
]
}
]
Painel de casos
Tipo de resultado | Valor / Descrição | Tipo |
---|---|---|
Mensagem de saída* | A ação não pode falhar nem interromper a execução de um playbook: Se o histórico de conversas for encontrado (is_succeed=True): "O histórico de conversas foi buscado." Se a conversa com o ID fornecido não for encontrada (is_succeed=False): "Não foi possível encontrar a conversa com o ID {0}".format(channel_or_user_id) Se a conversa com o ID fornecido for encontrada e nenhuma mensagem for encontrada para o período especificado (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 precisa falhar e interromper a execução de um playbook: Se um erro fatal, como credenciais incorretas, falta de conexão com o servidor ou outro, for informado: "Falha ao executar a ação "Enviar mensagem avançada"! O erro é {0}".format(exception.stacktrace) Se um valor inválido for fornecido para o parâmetro "Número máximo de registros a serem retornados": "Erro ao executar a ação "{nome da ação}". Motivo: "Um valor inválido foi fornecido para "Número máximo de registros a serem retornados": . É preciso informar um número positivo"." Se "Personalizado" estiver selecionado para o parâmetro "Período" e o parâmetro "Hora de início" não estiver especificado: "Erro ao executar a ação "{nome da ação}". Motivo: "O horário de início não foi informado para o período personalizado". |
Geral |
Acessar detalhes do usuário
Descrição
Receba detalhes do usuário do Slack com base nos critérios de entrada fornecidos.
Parâmetros
Nome do parâmetro | Tipo | Valor padrão | É obrigatório | Descrição |
---|---|---|---|---|
Pesquisar por | DDL | Valores possíveis:
|
Sim | Especifique o parâmetro para pesquisar os detalhes do usuário. |
Valor do usuário | String | N/A | Sim | Especifique o valor do usuário para pesquisar. |
Exemplos de casos de uso de playbook
Receba detalhes do usuário para enriquecer o processamento de alertas no Google SecOps.
Executar em
Essa ação não é executada em entidades.
Resultados da ação
Resultado do script
Nome do resultado do script | Opções de valor | Exemplo |
---|---|---|
is_success | Verdadeiro/Falso | is_success:False |
Resultado do 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"
}
Painel de casos
Tipo de resultado | Valor / Descrição | Tipo |
---|---|---|
Mensagem de saída\* | A ação não pode falhar nem interromper a execução de um playbook: Se os detalhes do usuário forem encontrados (is_succeed=True): "Os detalhes do usuário foram buscados." Se os detalhes do usuário não forem encontrados com base nos critérios fornecidos (is_succeed=False): "Não foi possível encontrar os detalhes do usuário com base nos critérios fornecidos: Pesquisar por: <0> Valor do usuário: <1>".format(search_by, user_value) Se os detalhes do usuário forem encontrados por nome e mais de uma correspondência for encontrada (is_succeed=True): "Para os critérios de pesquisa fornecidos, várias correspondências foram encontradas: Pesquisar por: <0> Valor do usuário: <1>".format(search_by, user_value) Se o usuário não for encontrado (is_succeed=False) devido a algum erro geral: "Não foi possível buscar os detalhes do usuário devido ao erro ocorrido: {0}" (texto do erro) A ação precisa falhar e interromper a execução de um playbook: Se um erro fatal for informado, como credenciais incorretas, sem conexão com o servidor ou outro: "Falha ao executar a ação "Enviar mensagem avançada"! O erro é {0}".format(exception.stacktrace) |
Geral |
Tabela do painel de casos | Nome da tabela:Detalhes do usuário do Slack Colunas da tabela:
|
Geral |
Receber detalhes do usuário por ID
Descrição
Receba detalhes do usuário pelo ID.
Parâmetros
Nome do parâmetro | Tipo | Valor padrão | É obrigatório | Descrição |
---|---|---|---|---|
ID do usuário | String | N/A | Sim | ID do usuário. |
Executar em
Essa ação é executada em todas as entidades.
Resultados da ação
Resultado do script
Nome do resultado do script | Opções de valor | Exemplo |
---|---|---|
is_succeed | Verdadeiro/Falso | is_succeed:False |
Resultado do JSON
N/A
Listar canais
Descrição
Receba uma lista de canais do Slack.
Parâmetros
N/A
Executar em
Essa ação é executada em todas as entidades.
Resultados da ação
Resultado do script
Nome do resultado do script | Opções de valor | Exemplo |
---|---|---|
is_succeed | Verdadeiro/Falso | is_succeed:False |
Resultado do 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": []
}
]
Painel de casos
Tipo de resultado | Valor / Descrição | Tipo |
---|---|---|
Mensagem de saída* | A ação não pode falhar nem interromper a execução de um playbook: Se "ok" == false (is_success=false): "Falha ao listar canais. Motivo: {0}".format(value of error parameter from response) |
Geral |
Listar usuário
Descrição
Essa ação tem a função de receber uma lista de usuários do Slack.
Parâmetros
N/A
Executar em
Essa ação é executada em todas as entidades.
Resultados da ação
Resultado do script
Nome do resultado do script | Opções de valor | Exemplo |
---|---|---|
is_succeed | Verdadeiro/Falso | is_succeed:False |
Resultado do 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
}
]
Ping
Descrição
Teste a conectividade.
Parâmetros
N/A
Executar em
Essa ação é executada em todas as entidades.
Resultados da ação
Resultado do script
Nome do resultado do script | Opções de valor | Exemplo |
---|---|---|
is_succeed | Verdadeiro/Falso | is_succeed:False |
Resultado do JSON
N/A
Renomear canal
Descrição
Renomeie o canal do Slack.
Parâmetros
Nome do parâmetro | Tipo | Valor padrão | É obrigatório | Descrição |
---|---|---|---|---|
Nome do canal | String | N/A | Não | Especifique o nome do canal que você quer renomear. Observação:se os parâmetros "Nome do canal" e "ID do canal" forem especificados, a ação só vai funcionar com o ID. |
ID do canal | String | N/A | Não | Especifique o ID do canal que você quer renomear. Observação:se os parâmetros "Nome do canal" e "ID do canal" forem especificados, a ação só vai funcionar com o ID. |
Novo nome | String | N/A | Sim | Especifique um novo nome para o canal. Observação:os nomes de canais só podem conter letras minúsculas, números, hifens e sublinhados, e precisam ter até 80 caracteres. |
Executar em
Essa ação não é executada em entidades.
Resultados da ação
Resultado do script
Nome do resultado do script | Opções de valor | Exemplo |
---|---|---|
is_succeed | Verdadeiro/Falso | is_succeed:False |
Resultado do 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"
]
}
}
Painel de casos
Tipo de resultado | Valor / Descrição | Tipo |
---|---|---|
Mensagem de saída* | A ação não pode falhar nem interromper a execução de um playbook: Se "ok"== true (is_success=true): "O canal {0} foi renomeado como {1} {0}".format(name/ID, new name) Se "ok"== false (is_success=false): "Não foi possível renomear o canal {0}. Motivo: {1}".format(name,error from the response) Se o canal não foi encontrado pelo nome (is_success=false): "Não foi possível renomear o canal {0}. Motivo: o canal não foi encontrado".format(name) A ação precisa falhar e interromper a execução de um playbook: Se um erro fatal (credenciais incorretas, erro de conexão, falha na ação) for informado: "Erro ao executar a ação "Renomear canal". Motivo: {0}''.format(error.Stacktrace) Se os parâmetros "Nome do canal" e "ID do canal" não forem especificados: "Erro ao executar a ação "Renomear canal". Motivo: você precisa especificar "Nome do canal" ou "ID do canal"." |
Geral |
Enviar mensagem avançada
Descrição
Envie uma mensagem avançada para um canal ou usuário do Slack. Essa ação permite enviar mensagens de texto simples e mensagens de bloco avançadas do Slack com botões, formatação avançada e muito mais. Para mais informações sobre mensagens de bloco, consulte Slack Block Kit .
Essa ação pode ser usada com a ação "Aguardar resposta com webhook" para primeiro enviar uma mensagem de bloqueio com um webhook a um usuário e, depois, com a ação "Aguardar resposta com webhook", verificar a resposta do usuário.
Parâmetros
Nome do parâmetro | Tipo | Valor padrão | É obrigatório | Descrição |
---|---|---|---|---|
Tipo de mensagem | DDL | Texto Valores possíveis:
|
Sim | Especifique o tipo de mensagem a ser enviada. |
Tipo de destinatário | DDL | Nome Valores possíveis:
|
Sim | Especifique o nome do canal ou do usuário (nome completo) para enviar a mensagem. Se quiser, especifique o ID do canal ou do usuário ou o endereço de e-mail de um usuário. |
Destinatário | String | N/A | Sim | Especifique o destinatário para enviar uma mensagem. |
Mensagem | String | N/A | Sim | Especifique o conteúdo da mensagem a ser enviada. |
Exemplos de casos de uso de playbook
Enviar uma mensagem com conteúdo avançado, como botões, links ou imagens.
Executar em
Essa ação não é executada em entidades.
Resultados da ação
Resultado do script
Nome do resultado do script | Opções de valor | Exemplo |
---|---|---|
is_succeed | Verdadeiro/Falso | is_succeed:False |
Resultado do 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
}
}
]
Painel de casos
Tipo de resultado | Valor / Descrição | Tipo |
---|---|---|
Mensagem de saída* | A ação não pode falhar nem interromper a execução de um playbook: Se a mensagem for enviada (is_succeed=True): "A mensagem foi enviada" Se a mensagem não for enviada (is_succeed=False) porque o destinatário especificado não foi encontrado: "A mensagem não foi enviada porque o destinatário {0} com o tipo {1} não foi encontrado". (destinatário, tipo de destinatário) Se a mensagem não for enviada (is_succeed=False) devido a um erro geral: "A mensagem não foi enviada devido ao erro ocorrido: {0}" (texto do erro) A ação precisa falhar e interromper a execução de um playbook: Se um erro fatal, como credenciais incorretas, falta de conexão com o servidor ou outro, for informado: "Falha ao executar a ação "Enviar mensagem avançada"! O erro é {0}".format(exception.stacktrace) |
Geral |
Enviar mensagem interativa
Descrição
Envie uma mensagem interativa para um canal ou usuário e, com base no UUID do webhook fornecido, verifique a resposta do usuário. Essa ação é semelhante à "Enviar mensagem avançada", mas permite enviar apenas conteúdo de bloco (não mensagens de texto simples) e também exige um UUID de webhook para verificar a resposta do usuário a um webhook.
A ação é assíncrona. Ajuste o tempo limite da ação no ambiente de desenvolvimento integrado.
Configure o app do Slack usado na integração para permitir mensagens interativas. Para mais informações sobre a configuração do app Slack, consulte Preparar seu aplicativo para mensagens interativas.
Parâmetros
Nome do parâmetro | Tipo | Valor padrão | É obrigatório | Descrição |
---|---|---|---|---|
Tipo de destinatário | DDL | Nome Valores possíveis:
| Sim | Especifique o nome do canal ou do usuário (nome completo) para enviar a mensagem. Se quiser, especifique o ID do canal ou do usuário ou o endereço de e-mail de um usuário. |
Destinatário | String | N/A | Sim | Especifique o destinatário para enviar uma mensagem. |
Mensagem | String | N/A | Sim | Especifique o conteúdo da mensagem a ser enviada. |
UUID do token do webhook | String | N/A | Sim | Especifique o UUID do token do webhook para monitorar a resposta do usuário. |
Exemplos de casos de uso de playbook
Enviar uma mensagem com conteúdo avançado, como botões, links ou imagens.
Executar em
Essa ação não é executada em entidades.
Resultados da ação
Resultado do script
Nome do resultado do script | Opções de valor | Exemplo |
---|---|---|
is_succeed | Verdadeiro/Falso | is_succeed:False |
Resultado do 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": []
}
]
Painel de casos
Tipo de resultado | Valor / Descrição | Tipo |
---|---|---|
Mensagem de saída* | A ação não pode falhar nem interromper a execução de um playbook: Se a mensagem for enviada (is_succeed=True): "A mensagem foi enviada" Se a mensagem não for enviada (is_succeed=False) porque o destinatário especificado não foi encontrado: "A mensagem não foi enviada porque o destinatário {0} com o tipo {1} não foi encontrado". (destinatário, tipo de destinatário) Se a mensagem não for enviada (is_succeed=False) devido a um erro geral: "A mensagem não foi enviada devido ao erro ocorrido: {0}" (texto do erro) Mensagens do mural de casos para a funcionalidade assíncrona: Uma mensagem de espera para as iterações enquanto aguarda a resposta: "Aguardando a resposta da mensagem enviada com um webhook. Webhook url com uuid: {0}".format(webhook url from integration configuration + web token uuid) Se a resposta for buscada com sucesso (is_succeed=True): "A resposta do usuário a um webhook foi buscada com sucesso! Conteúdo da resposta: {0}".format(payload that was sent from user to a webhook) Se não for possível buscar a resposta até o tempo limite: "Não foi encontrada uma resposta do usuário para um webhook, e a ação foi interrompida devido ao tempo limite". A ação precisa falhar e interromper a execução de um playbook: Se um URL baseado em webhook não for especificado na configuração da integração e um token UUID de webhook for especificado: "Falha ao executar a ação. Especifique o parâmetro de integração "URL base do webhook". " Se um erro fatal, como credenciais incorretas, falta de conexão com o servidor ou outro, for informado: "Falha ao executar a ação "Enviar mensagem interativa"! O erro é {0}".format(exception.stacktrace) |
Geral |
Enviar mensagem
Descrição
Enviar uma mensagem para um ou vários usuários/canais.
Parâmetros
Nome do parâmetro | Tipo | Valor padrão | É obrigatório | Descrição |
---|---|---|---|---|
Canal | String | N/A | Sim | O nome do canal do Slack ou o endereço de e-mail do usuário para quem enviar a mensagem. Os valores inseridos precisam ser separados por vírgulas. |
Mensagem | String | N/A | Sim | Conteúdo da mensagem. |
Executar em
Essa ação é executada em todas as entidades.
Resultados da ação
Resultado do script
Nome do resultado do script | Opções de valor | Exemplo |
---|---|---|
is_succeed | Verdadeiro/Falso | is_succeed:False |
Resultado do JSON
N/A
Fazer upload do arquivo
Descrição
Adicione arquivos ao Slack e compartilhe com seus colegas de equipe para colaborar. Você pode escolher e fazer upload de arquivos para o Slack no seu dispositivo ou no app de gerenciamento de arquivos preferido. Os arquivos enviados são armazenados, podem ser pesquisados e compartilhados em todo o espaço de trabalho.
Parâmetros
Nome do parâmetro | Tipo | Valor padrão | É obrigatório | Descrição |
---|---|---|---|---|
Nome do arquivo | String | N/A | Sim | Nome do arquivo de destino. |
Caminho do arquivo | String | N/A | Sim | Caminho do arquivo de destino. |
Canal | String | N/A | Sim | Canal de destino. |
Executar em
Essa ação é executada em todas as entidades.
Resultados da ação
Resultado do script
Nome do resultado do script | Opções de valor | Exemplo |
---|---|---|
is_succeed | Verdadeiro/Falso | is_succeed:False |
Resultado do JSON
N/A
Aguardar resposta
Descrição
Aguarde uma resposta em uma conversa a uma mensagem em um canal.
Parâmetros
Nome do parâmetro | Tipo | Valor padrão | É obrigatório | Descrição |
---|---|---|---|---|
Canal | String | N/A | Sim | Canal de destino. |
Carimbo de data/hora da mensagem | String | N/A | Sim | O carimbo de data/hora da mensagem para receber as respostas (em milissegundos). |
ID do canal | String | N/A | Não | O ID do canal de destino do Slack. |
Casos de uso do playbook
Playbook com ação de envio de mensagem e espera por uma resposta (com o canal como marcador de posição da ação anterior - ID do canal)
Executar em
Essa ação é executada em todas as entidades.
Resultados da ação
Resultado do script
Nome do resultado do script | Opções de valor | Exemplo |
---|---|---|
is_succeed | Verdadeiro/Falso | is_succeed:False |
Resultado do JSON
N/A
Aguardar resposta com webhook
Descrição
Aguardar a resposta de um usuário a uma mensagem enviada com um webhook. Essa ação verifica periodicamente o webhook fornecido para saber se o usuário enviou alguma resposta a ele. A ação pode ser usada com a ação "Enviar mensagem avançada", se a mensagem de bloqueio com webhook foi enviada, para verificar se a resposta do usuário foi fornecida ao webhook.
Essa ação é assíncrona. Ajuste o valor de tempo limite do script no ambiente de desenvolvimento integrado de acordo.
Parâmetros
Nome do parâmetro | Tipo | Valor padrão | É obrigatório | Descrição |
---|---|---|---|---|
UUID do token do webhook | String | N/A | Sim | Especifique o UUID do token do webhook para monitorar a resposta do usuário. |
Exemplos de casos de uso de playbook
Aguarde uma resposta a uma mensagem com um webhook.
Executar em
Essa ação não é executada em entidades.
Resultados da ação
Resultado do script
Nome do resultado do script | Opções de valor | Exemplo |
---|---|---|
is_succeed | Verdadeiro/Falso | is_succeed:False |
Resultado do 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"
}
Painel de casos
Tipo de resultado | Valor / Descrição | Tipo |
---|---|---|
Mensagem de saída* | A ação não pode falhar nem interromper a execução de um playbook: Uma mensagem de espera para as iterações enquanto aguarda a resposta: "Aguardando a resposta da mensagem enviada com um webhook. Webhook url com uuid: {0}".format(webhook url from integration configuration + web token uuid) Se a resposta for buscada com sucesso (is_succeed=True): "A resposta do usuário a um webhook foi buscada com sucesso! Conteúdo da resposta: {0}".format(payload that was sent from user to a webhook) Se não for possível buscar a resposta até o tempo limite: "Não foi encontrada uma resposta do usuário para um webhook, e a ação foi interrompida devido ao tempo limite". A ação precisa falhar e interromper a execução de um playbook: Se o URL baseado em 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 um erro fatal, como credenciais incorretas, falta de conexão com o servidor ou outro, for informado: "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 do Google SecOps.