Slack

Versión de integración: 23.0

Configurar Slack para que funcione con Google Security Operations

Para configurar Slack de forma que funcione con Google SecOps, primero debes crear una aplicación:

  1. Ve a https://api.slack.com/ y haz clic en Empezar a crear.

  2. Introduce los parámetros Nombre de la aplicación y Espacio de trabajo de Slack de desarrollo. Haz clic en Crear aplicación.

    Crear un cuadro de diálogo de aplicación de Slack

  3. Ve a la pestaña OAuth y permisos y desplázate hacia abajo hasta las secciones Ámbitos.

    Pestaña OAuth y permisos

  4. Añade los siguientes ámbitos o permisos. Slack recomienda añadir permisos de token de OAuth para un bot, no permisos de usuario:

    • 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

    Cuadro de diálogo de permisos

  5. Para permitir la interactividad de las aplicaciones en acciones como "Enviar mensaje interactivo" y "Esperar respuesta con webhook", añade una URL de solicitud para tu aplicación. Para obtener más información, consulta el documento Gestionar la interacción de los usuarios en tus aplicaciones de Slack, disponible en la documentación de Slack.

  6. Desplázate hacia arriba y haz clic en Instalar aplicación en Workspace.

    Ubicación del botón Instalar aplicación en Workspace

  7. Haz clic en Permitir.

    Ajustes de acceso a permisos de LabBot

  8. Copia uno de los tokens que se han creado, en función de si quieres usar un bot o un usuario.

  9. Configura la integración con uno de esos tokens.

Red

Función Puerto predeterminado Dirección Protocolo
API Multivalores Saliente apitoken

Configurar la integración de Slack en Google SecOps

Para obtener instrucciones detalladas sobre cómo configurar una integración en Google SecOps, consulta Configurar integraciones.

Parámetros de integración

Usa los siguientes parámetros para configurar la integración:

Nombre visible del parámetro Tipo Valor predeterminado Es obligatorio Descripción
Nombre de la instancia Cadena N/A No Nombre de la instancia para la que quiere configurar la integración.
Descripción Cadena N/A No Descripción de la instancia.
Token de API Cadena N/A Token de API generado en la consola de Slack.
Verificar SSL Casilla Desmarcada No Marca esta casilla si tu conexión de Slack requiere una verificación SSL (está desmarcada de forma predeterminada).
Ejecutar de forma remota Casilla Desmarcada No Marca el campo para ejecutar la integración configurada de forma remota. Una vez marcada, aparece la opción para seleccionar al usuario remoto (agente).

Acciones

Hacer una pregunta

Descripción

Hacer una pregunta en Slack.

Parámetros

Nombre del parámetro Tipo Valor predeterminado Es obligatorio Descripción
Canal Cadena N/A Canal objetivo.
Pregunta Cadena N/A Contenido de la pregunta.

Fecha de ejecución

Esta acción se ejecuta en todas las entidades.

Resultados de la acción

Resultado de secuencia de comandos
Nombre del resultado de la secuencia de comandos Opciones de valor Ejemplo
is_succeed Verdadero/Falso is_succeed:False
Resultado de JSON
N/A

Bloque de compilación

Descripción

Crea un bloque de mensajes de Slack en función de los criterios de entrada proporcionados. Esta acción crea un bloque con un webhook que se puede pasar posteriormente a la acción "Enviar mensaje interactivo" para enviar un mensaje.

Parámetros

Nombre del parámetro Tipo Valor predeterminado Es obligatorio Descripción
Pregunta Cadena N/A Especifica el texto de la pregunta que quieres añadir al bloque.
Botones de respuesta Cadena N/A Especifica los botones de respuesta que quieres añadir al bloque.
URL base de Siemplify Cadena N/A Especifica la URL base del servidor de Google SecOps que quieres añadir al bloque.
ID de caso Cadena N/A Especifica el ID de asistencia de Google SecOps que quieres añadir al bloqueo.
UUID del token de webhook Cadena N/A Especifica el UUID del token de Webhook para monitorizar la respuesta del usuario.

Ejemplos de casos prácticos de guías

Crea un bloque que se pueda enviar más adelante a la acción "Enviar mensaje avanzado" para enviar un mensaje con un bloque.

Fecha de ejecución

Esta acción no se ejecuta en entidades.

Resultados de la acción

Resultado de secuencia de comandos
Nombre del resultado de la secuencia de comandos Opciones de valor Ejemplo
is_succeed Verdadero/Falso is_succeed:False
Resultado de 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\": \"...\"}]}]"
}
Panel de casos
Tipo de resultado Valor o descripción Tipo
Mensaje de salida*

La acción no debe fallar ni detener la ejecución de una guía:

Si se crea un bloque de compilación correctamente (is_succeed=True): "Slack block was created successfully." ("El bloque de Slack se ha creado correctamente").

Si no se ha podido crear un bloque de Slack debido a un error general (is_succeed=False): "Failed to create a block because of the occurred error: {0}".format(error text) ("No se ha podido crear un bloque debido al error: {0}".format(texto del error))

La acción debería fallar y detener la ejecución de la guía:

Si no se especifica una URL basada en webhook en la configuración de la integración: "No se ha podido ejecutar la acción. Especifica el parámetro de integración "URL base del webhook"."

Si se informa de un error grave, como credenciales incorrectas, falta de conexión con el servidor u otro: "Failed to execute "Send Advanced Message" action!" ("No se ha podido ejecutar la acción "Enviar mensaje avanzado"). Error: {0}".format(exception.stacktrace)

General

Crear canal

Descripción

Crea un canal de Slack.

Parámetros

Nombre del parámetro Tipo Valor predeterminado Es obligatorio Descripción
Nombre del canal Cadena N/A

Especifica el nombre del canal.

Nota: Los nombres de los canales solo pueden contener letras minúsculas, números, guiones y guiones bajos, y deben tener 80 caracteres como máximo.

IDs de usuario Cadena N/A

Especifica los IDs de los usuarios que deben recibir una invitación al canal que acabas de crear.

Ejemplo: U014JDHLW87, U08544ABC85.

Es privada Casilla Desmarcada No Si se habilita, la acción crea un canal privado.

Fecha de ejecución

Esta acción se ejecuta en todas las entidades.

Resultados de la acción

Resultado de secuencia de comandos
Nombre del resultado de la secuencia de comandos Opciones de valor Ejemplo
is_success Verdadero/Falso is_success:False
Resultado de 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
}
Panel de casos
Tipo de resultado Valor o descripción Tipo
Mensaje de salida*

La acción no debe fallar ni detener la ejecución de una guía:

Si "ok"== true y el parámetro de acción "Private" es false y el parámetro User IDs está vacío (is_success=true):

"Se ha creado correctamente el canal {0}".format(name)

Si "ok"== true y el parámetro de acción "Private" es true y el parámetro User IDs está vacío (is_success=true): "Successfully created private channel {0}".format(name) ("Se ha creado correctamente el canal privado {0}").

Si "ok"== true y el parámetro de acción "Private" es false y los IDs de usuario están disponibles (is_success=true): "Successfully created channel {0} and added {1} users".format(name, user_ids) ("Se ha creado el canal {0} y se han añadido {1} usuarios").

Si "ok"== true y el parámetro de acción "Private" es true y los IDs de usuario están disponibles (is_success=true):

"Se ha creado correctamente el canal privado {0} y se han añadido {1} usuarios".format(name, user_ids)

Si "ok" == false. En la primera solicitud (is_success=false):

"No se ha podido crear el canal {0}. Motivo: {1}".format(name, value of error parameter from response)

Si "ok" == false en la segunda solicitud (is_success=false):

"Se ha creado el canal {0}, pero no se ha invitado a los usuarios. Motivo:".format(name, value of error parameter from response)

Si "ok" == false y error == "user_not_found" (is_success=false):

"No se han podido añadir usuarios al canal {0}. Motivo: {1} de los IDs de usuario especificados no existe en Slack".format(name, len(errors) from the response)

La acción debería fallar y detener la ejecución de la guía:

Si se informa de un error grave (credenciales incorrectas, error de conexión o fallo de la acción): "Error al ejecutar la acción "Crear canal". Motivo: {0}''.format(error.Stacktrace)

General

Get Channel Or User Conversation History

Descripción

Obtener el historial de conversaciones de un usuario o un canal en función de los criterios de entrada proporcionados. Esta acción funciona con el ID de canal o de usuario, que se puede buscar con las acciones "List Channels" (Listar canales) o "List User" (Listar usuarios).

Parámetros

Nombre del parámetro Tipo Valor predeterminado Es obligatorio Descripción
ID de canal o de usuario Cadena N/A Especifica el ID del canal o del usuario del que quieras obtener el historial de conversaciones.
Periodo DDL

Última hora

Valores posibles:

  • Última hora
  • Últimas 6 horas
  • Últimas 24 horas
  • La semana pasada
  • El mes pasado
  • Personalizado
No

Especifica un periodo para los resultados.

Si se selecciona "Personalizado", también debe proporcionar el parámetro "Hora de inicio".

Hora de inicio Cadena N/A No

Especifica la hora de inicio de los resultados.

Este parámetro es obligatorio si se selecciona "Personalizado" en el parámetro "Periodo".

Formato: ISO 8601.

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

Hora de finalización Cadena N/A No

Especifica la hora de finalización de los resultados.

Si no se proporciona ningún valor y se selecciona "Personalizado" en el parámetro "Periodo", este parámetro usará la hora actual.

Formato: ISO 8601.

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

Número máximo de registros que se devolverán Entero 20 No

Especifica el número de registros que se deben devolver.

Si no se proporciona nada, la acción devuelve 20 registros.

Ejemplos de casos prácticos de guías

Obtener el historial de conversaciones para investigar alertas.

Fecha de ejecución

Esta acción no se ejecuta en entidades.

Resultados de la acción

Resultado de secuencia de comandos
Nombre del resultado de la secuencia de comandos Opciones de valor Ejemplo
is_success Verdadero/Falso is_success:False
Resultado de 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"
              }
            ]
          }
        ]
      }
    ]
  }
]
Panel de casos
Tipo de resultado Valor o descripción Tipo
Mensaje de salida*

La acción no debe fallar ni detener la ejecución de una guía:

Si el historial de conversaciones se encuentra correctamente (is_succeed=True): "Conversation history was fetched successfully." ("El historial de conversaciones se ha obtenido correctamente").

Si no se encuentra la conversación con el ID proporcionado (is_succeed=False): "Failed to find conversation for provided id {0}".format(channel_or_user_id)

Si se encuentra la conversación con el ID proporcionado y no se encuentran mensajes en el periodo indicado (is_succeed=False): "Se ha encontrado la conversación con el ID {0}, pero no se han encontrado mensajes en el periodo indicado.".format(channel_or_user_id)

La acción debería fallar y detener la ejecución de la guía:

Si se informa de un error grave, como credenciales incorrectas, no hay conexión con el servidor u otro: "Failed to execute "Send Advanced Message" action!" ("No se ha podido ejecutar la acción "Enviar mensaje avanzado"). Error: {0}".format(exception.stacktrace)

Si se proporciona un valor no válido para el parámetro "Número máximo de registros que se devolverán": "Error al ejecutar la acción "{nombre de la acción}". Motivo: Se ha proporcionado un valor no válido para "Número máximo de registros que se devolverán": . Se debe proporcionar un número positivo"."

Si se selecciona "Personalizado" en el parámetro "Periodo" y no se especifica el parámetro "Hora de inicio": "Error al ejecutar la acción "{nombre de la acción}". Motivo: "No se ha proporcionado la hora de inicio del periodo personalizado".

General

Obtener detalles del usuario

Descripción

Obtiene los detalles de un usuario de Slack en función de los criterios de entrada proporcionados.

Parámetros

Nombre del parámetro Tipo Valor predeterminado Es obligatorio Descripción
Buscar por DDL

Correo electrónico

Valores posibles:

  • Correo electrónico
  • Nombre
  • ID
Especifica el parámetro por el que quieres buscar los detalles del usuario.
Valor del usuario Cadena N/A Especifica el valor de usuario por el que quieres buscar.

Ejemplos de casos prácticos de guías

Obtener los detalles de los usuarios para mejorar el procesamiento de alertas en Google SecOps.

Fecha de ejecución

Esta acción no se ejecuta en entidades.

Resultados de la acción

Resultado de secuencia de comandos
Nombre del resultado de la secuencia de comandos Opciones de valor Ejemplo
is_success Verdadero/Falso is_success:False
Resultado de 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"
}
Panel de casos
Tipo de resultado Valor o descripción Tipo
Mensaje de salida\*

La acción no debe fallar ni detener la ejecución de una guía:

Si se encuentran los detalles del usuario (is_succeed=True): "User details were fetched successfully." ("Los detalles del usuario se han obtenido correctamente").

Si no se encuentran los detalles del usuario según los criterios proporcionados (is_succeed=False): "Failed to find user details based on the provided criteria: Search by: <0> User value: <1>".format(search_by, user_value)

Si se encuentran detalles del usuario por nombre y se encuentra más de una coincidencia (is_succeed=True): "Se han encontrado varias coincidencias para los criterios de búsqueda proporcionados: Búsqueda por: <0> Valor de usuario: <1>".format(search_by, user_value)

Si no se encuentra al usuario (is_succeed=False) debido a un error general: "Failed to fetch user details because of occurred error: (0}" (texto del error)

La acción debería fallar y detener la ejecución de la guía:

Si se informa de un error grave, como credenciales incorrectas, falta de conexión con el servidor u otro: "Failed to execute "Send Advanced Message" action!" ("No se ha podido ejecutar la acción "Enviar mensaje avanzado"). Error: {0}".format(exception.stacktrace)

General
Tabla del panel de casos

Nombre de la tabla: Detalles del usuario de Slack

Columnas de tabla:

  • ID
  • ID de equipo
  • Nombre
  • Nombre real
  • Nombre visible
  • Nombre
  • Apellidos
  • Hora de actualización
  • Zona horaria
  • Título
  • Teléfono
  • Es administrador
  • Es propietario (Is owner)
  • Es el propietario principal
  • Is Restricted
  • Is Ultra Restricted
  • Es un bot
  • Is App User
  • Is Email Confirmed
General

Obtener detalles de usuario por ID

Descripción

Obtiene los detalles de un usuario por su ID.

Parámetros

Nombre del parámetro Tipo Valor predeterminado Es obligatorio Descripción
ID de usuario Cadena N/A ID del usuario.

Fecha de ejecución

Esta acción se ejecuta en todas las entidades.

Resultados de la acción

Resultado de secuencia de comandos
Nombre del resultado de la secuencia de comandos Opciones de valor Ejemplo
is_succeed Verdadero/Falso is_succeed:False
Resultado de JSON
N/A

Mostrar canales

Descripción

Obtener una lista de canales de Slack.

Parámetros

N/A

Fecha de ejecución

Esta acción se ejecuta en todas las entidades.

Resultados de la acción

Resultado de secuencia de comandos
Nombre del resultado de la secuencia de comandos Opciones de valor Ejemplo
is_succeed Verdadero/Falso is_succeed:False
Resultado de 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": []
    }
]
Panel de casos
Tipo de resultado Valor o descripción Tipo
Mensaje de salida*

La acción no debe fallar ni detener la ejecución de una guía:

Si "ok" == false (is_success=false): "No se han podido enumerar los canales. Motivo: {0}".format(value of error parameter from response)

General

Mostrar usuario

Descripción

Esta acción tiene el rol de obtener una lista de usuarios de Slack.

Parámetros

N/A

Fecha de ejecución

Esta acción se ejecuta en todas las entidades.

Resultados de la acción

Resultado de secuencia de comandos
Nombre del resultado de la secuencia de comandos Opciones de valor Ejemplo
is_succeed Verdadero/Falso is_succeed:False
Resultado de 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

Descripción

Prueba de conectividad.

Parámetros

N/A

Fecha de ejecución

Esta acción se ejecuta en todas las entidades.

Resultados de la acción

Resultado de secuencia de comandos
Nombre del resultado de la secuencia de comandos Opciones de valor Ejemplo
is_succeed Verdadero/Falso is_succeed:False
Resultado de JSON
N/A

Cambiar el nombre del canal

Descripción

Cambiar el nombre del canal de Slack.

Parámetros

Nombre del parámetro Tipo Valor predeterminado Es obligatorio Descripción
Nombre del canal Cadena N/A No

Especifica el nombre del canal al que quieras cambiar el nombre.

Nota: Si se especifican los parámetros "Channel Name" (Nombre del canal) y "Channel ID" (ID del canal), la acción solo funcionará con el ID.

ID de canal Cadena N/A No

Especifique el ID del canal al que quiera cambiar el nombre.

Nota: Si se especifican los parámetros "Channel Name" (Nombre del canal) y "Channel ID" (ID del canal), la acción solo funcionará con el ID.

Nombre nuevo Cadena N/A

Especifica un nuevo nombre para el canal.

Nota: Los nombres de los canales solo pueden contener letras minúsculas, números, guiones y guiones bajos, y deben tener 80 caracteres como máximo.

Fecha de ejecución

Esta acción no se ejecuta en entidades.

Resultados de la acción

Resultado de secuencia de comandos
Nombre del resultado de la secuencia de comandos Opciones de valor Ejemplo
is_succeed Verdadero/Falso is_succeed:False
Resultado de JSON

Cuando "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"
        ]
    }
}

Cuando "ok" == false:

{
    "ok": false,
    "error": "name_taken",
    "warning": "missing_charset",
    "response_metadata": {
        "warnings": [
            "missing_charset"
        ]
    }
}
Panel de casos
Tipo de resultado Valor o descripción Tipo
Mensaje de salida*

La acción no debe fallar ni detener la ejecución de una guía:

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

Si "ok"== false (is_success=false): "No se ha podido cambiar el nombre del canal {0}. Motivo: {1}".format(name,error from the response)

Si no se ha encontrado el canal por su nombre (is_success=false): "No se ha podido cambiar el nombre del canal {0}. Motivo: no se ha encontrado el canal".format(name)

La acción debería fallar y detener la ejecución de la guía:

Si se informa de un error grave (credenciales incorrectas, error de conexión o fallo de la acción): "Error al ejecutar la acción "Cambiar nombre del canal". Motivo: {0}''.format(error.Stacktrace)

Si no se especifican los parámetros "Channel Name" y "Channel ID": "Error executing action "Rename Channel". Motivo: debes especificar el nombre o el ID del canal."

General

Enviar mensaje avanzado

Descripción

Envía un mensaje avanzado a un canal o usuario de Slack. Esta acción permite enviar mensajes de texto sencillos y mensajes de bloque de Slack enriquecidos con botones, formato avanzado y más. Para obtener más información sobre los mensajes de bloque, consulta Slack Block Kit .

Esta acción se puede usar junto con la acción "Esperar respuesta con webhook" para enviar primero un mensaje de bloqueo con un webhook a un usuario y, más adelante, con la acción "Esperar respuesta con webhook" para comprobar la respuesta del usuario.

Parámetros

Nombre del parámetro Tipo Valor predeterminado Es obligatorio Descripción
Tipo de mensaje DDL

Texto

Valores posibles:

  • Texto
  • Bloquear
Especifica el tipo de mensaje que quieres enviar.
Tipo de destinatario DDL

Nombre

Valores posibles:

  • Nombre
  • ID
  • Correo electrónico

Especifica el nombre del canal o del usuario (nombre completo) al que quieres enviar el mensaje.

También puedes especificar el ID de un canal o de un usuario, o la dirección de correo electrónico de un usuario.

Destinatario Cadena N/A Especifica el destinatario al que quieras enviar un mensaje.
Mensaje Cadena N/A Especifica el contenido del mensaje que quieres enviar.

Ejemplos de casos prácticos de guías

Enviar un mensaje con contenido enriquecido, como botones, enlaces o imágenes.

Fecha de ejecución

Esta acción no se ejecuta en entidades.

Resultados de la acción

Resultado de secuencia de comandos
Nombre del resultado de la secuencia de comandos Opciones de valor Ejemplo
is_succeed Verdadero/Falso is_succeed:False
Resultado de 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
    }
  }
]
Panel de casos
Tipo de resultado Valor o descripción Tipo
Mensaje de salida*

La acción no debe fallar ni detener la ejecución de una guía:

Si el mensaje se envía correctamente (is_succeed=True): "Message was sent successfully" ("El mensaje se ha enviado correctamente")

Si el mensaje no se envía correctamente (is_succeed=False) porque no se encuentra el destinatario especificado: "Message was not sent as the specified recipient {0} with type {1} was not found." ("El mensaje no se ha enviado porque no se ha encontrado el destinatario {0} con el tipo {1}"). (destinatario, tipo de destinatario)

Si el mensaje no se envía correctamente (is_succeed=False) debido a un error general: "Message was not sent because of occurred error: (0}" (texto del error)

La acción debería fallar y detener la ejecución de la guía:

Si se informa de un error grave, como credenciales incorrectas, no hay conexión con el servidor u otro: "Failed to execute "Send Advanced Message" action!" ("No se ha podido ejecutar la acción "Enviar mensaje avanzado"). Error: {0}".format(exception.stacktrace)

General

Enviar mensaje interactivo

Descripción

Envía un mensaje interactivo a un canal o a un usuario y, en función del UUID de Webhook proporcionado, comprueba la respuesta del usuario. Esta acción es similar a la acción "Enviar mensaje avanzado", pero solo permite enviar contenido de bloque (no mensajes de texto sin formato) y también requiere un UUID de webhook para comprobar la respuesta del usuario a un webhook.

La acción es asíncrona, por lo que debe ajustar el tiempo de espera de la acción en el IDE.

Configura la aplicación de Slack que se usa en la integración para permitir los mensajes interactivos. Para obtener más información sobre la configuración de la aplicación Slack, consulta Preparar tu aplicación para mensajes interactivos.

Parámetros

Nombre del parámetro Tipo Valor predeterminado Es obligatorio Descripción
Tipo de destinatario DDL

Nombre

Valores posibles:

  • Nombre
  • ID
  • Correo electrónico

Especifica el nombre del canal o del usuario (nombre completo) al que quieres enviar el mensaje.

También puedes especificar el ID de un canal o de un usuario, o la dirección de correo electrónico de un usuario.

Destinatario Cadena N/A Especifica el destinatario al que quieras enviar un mensaje.
Mensaje Cadena N/A Especifica el contenido del mensaje que quieres enviar.
UUID del token de webhook Cadena N/A Especifica el UUID del token de webhook para monitorizar la respuesta del usuario.

Ejemplos de casos prácticos de guías

Enviar un mensaje con contenido enriquecido, como botones, enlaces o imágenes.

Fecha de ejecución

Esta acción no se ejecuta en entidades.

Resultados de la acción

Resultado de secuencia de comandos
Nombre del resultado de la secuencia de comandos Opciones de valor Ejemplo
is_succeed Verdadero/Falso is_succeed:False
Resultado de 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": []
  }
]
Panel de casos
Tipo de resultado Valor o descripción Tipo
Mensaje de salida*

La acción no debe fallar ni detener la ejecución de una guía:

Si el mensaje se envía correctamente (is_succeed=True): "Message was sent successfully" ("El mensaje se ha enviado correctamente")

Si el mensaje no se envía correctamente (is_succeed=False) porque no se encuentra el destinatario especificado: "Message was not sent as the specified recipient {0} with type {1} was not found." ("El mensaje no se ha enviado porque no se ha encontrado el destinatario {0} con el tipo {1}"). (destinatario, tipo de destinatario)

Si el mensaje no se envía correctamente (is_succeed=False) debido a un error general: "Message was not sent because of occurred error: (0}" (texto del error)

Mensajes de Case Wall para la función asíncrona:

Un mensaje de muro de caso para las iteraciones mientras se espera la respuesta: "Esperando la respuesta al mensaje enviado con un webhook. URL del webhook con UUID: {0}".format(URL del webhook de la configuración de la integración + UUID del token web)

Si la respuesta se obtiene correctamente (is_succeed=True): "Se ha obtenido correctamente la respuesta del usuario a un webhook. Contenido de la respuesta: {0}".format(carga útil que se ha enviado del usuario a un webhook)

Si no se ha podido obtener la respuesta hasta que se ha agotado el tiempo de espera: "No se ha encontrado la respuesta de un usuario a un webhook y la acción se ha detenido porque se ha agotado el tiempo de espera".

La acción debería fallar y detener la ejecución de la guía:

Si no se especifica una URL basada en webhook en la configuración de la integración y se especifica un token UUID de webhook: "No se ha podido ejecutar la acción. Especifica el parámetro de integración "URL base del webhook". "

Si se informa de un error grave, como credenciales incorrectas, no hay conexión con el servidor u otro: "Failed to execute "Send Interactive Message" action! Error: {0}".format(exception.stacktrace)

General

Enviar mensaje

Descripción

Envía un mensaje a un usuario o a varios usuarios o canales.

Parámetros

Nombre del parámetro Tipo Valor predeterminado Es obligatorio Descripción
Canal Cadena N/A

El nombre del canal de Slack o la dirección de correo del usuario al que se va a enviar el mensaje.

Los valores introducidos deben estar separados por comas.

Mensaje Cadena N/A Contenido del mensaje.

Fecha de ejecución

Esta acción se ejecuta en todas las entidades.

Resultados de la acción

Resultado de secuencia de comandos
Nombre del resultado de la secuencia de comandos Opciones de valor Ejemplo
is_succeed Verdadero/Falso is_succeed:False
Resultado de JSON
N/A

Subir archivo

Descripción

Añade archivos a Slack y compártelos con tus compañeros para colaborar. Puedes elegir y subir archivos a Slack desde tu dispositivo o desde tu aplicación de gestión de archivos preferida. Los archivos subidos se almacenan, se pueden buscar y se pueden compartir en todo tu espacio de trabajo.

Parámetros

Nombre del parámetro Tipo Valor predeterminado Es obligatorio Descripción
Nombre del archivo Cadena N/A Nombre del archivo de destino.
Ruta del archivo Cadena N/A Ruta del archivo de destino.
Canal Cadena N/A Canal objetivo.

Fecha de ejecución

Esta acción se ejecuta en todas las entidades.

Resultados de la acción

Resultado de secuencia de comandos
Nombre del resultado de la secuencia de comandos Opciones de valor Ejemplo
is_succeed Verdadero/Falso is_succeed:False
Resultado de JSON
N/A

Esperar respuesta

Descripción

Espera a que se responda a un mensaje en una conversación de un canal.

Parámetros

Nombre del parámetro Tipo Valor predeterminado Es obligatorio Descripción
Canal Cadena N/A Canal objetivo.
Marca de tiempo del mensaje Cadena N/A Marca de tiempo del mensaje del que se van a obtener las respuestas (en milisegundos).
ID de canal Cadena N/A No El ID del canal de Slack de destino.

Casos prácticos de guías

Guía con la acción de enviar un mensaje y, después, esperar una respuesta (con el canal como marcador de posición de la acción anterior: ID de canal)

Fecha de ejecución

Esta acción se ejecuta en todas las entidades.

Resultados de la acción

Resultado de secuencia de comandos
Nombre del resultado de la secuencia de comandos Opciones de valor Ejemplo
is_succeed Verdadero/Falso is_succeed:False
Resultado de JSON
N/A

Esperar respuesta con webhook

Descripción

Esperar a que un usuario responda a un mensaje enviado con un webhook. Esta acción comprueba periódicamente el webhook proporcionado para ver si el usuario ha respondido. La acción se puede usar con la acción "Enviar mensaje avanzado" si se ha enviado el mensaje de bloqueo con webhook para comprobar si se ha proporcionado la respuesta del usuario al webhook.

Esta acción es asíncrona, por lo que debe ajustar el valor de tiempo de espera de la secuencia de comandos en el IDE.

Parámetros

Nombre del parámetro Tipo Valor predeterminado Es obligatorio Descripción
UUID del token de webhook Cadena N/A Especifica el UUID del token de webhook para monitorizar la respuesta del usuario.

Ejemplos de casos prácticos de guías

Esperar una respuesta a un mensaje con un webhook.

Fecha de ejecución

Esta acción no se ejecuta en entidades.

Resultados de la acción

Resultado de secuencia de comandos
Nombre del resultado de la secuencia de comandos Opciones de valor Ejemplo
is_succeed Verdadero/Falso is_succeed:False
Resultado de 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"
}
Panel de casos
Tipo de resultado Valor o descripción Tipo
Mensaje de salida*

La acción no debe fallar ni detener la ejecución de una guía:

Un mensaje de muro de caso para las iteraciones mientras se espera la respuesta: "Esperando la respuesta al mensaje enviado con un webhook. URL del webhook con UUID: {0}".format(URL del webhook de la configuración de la integración + UUID del token web)

Si la respuesta se obtiene correctamente (is_succeed=True): "Se ha obtenido correctamente la respuesta del usuario a un webhook. Contenido de la respuesta: {0}".format(carga útil que se ha enviado del usuario a un webhook)

Si no se ha podido obtener la respuesta hasta que se ha agotado el tiempo de espera: "No se ha encontrado la respuesta de un usuario a un webhook y la acción se ha detenido porque se ha agotado el tiempo de espera".

La acción debería fallar y detener la ejecución de la guía:

Si la URL basada en webhook no se especifica en la configuración de la integración y se especifica el token UUID del webhook: "No se ha podido ejecutar la acción. Especifica el parámetro de integración "URL base del webhook". "

Si se informa de un error grave, como credenciales incorrectas, no hay conexión con el servidor u otro: "Failed to execute "Send Advanced Message" action!" ("No se ha podido ejecutar la acción "Enviar mensaje avanzado"). Error: {0}".format(exception.stacktrace)

General

¿Necesitas más ayuda? Recibe respuestas de los miembros de la comunidad y de los profesionales de Google SecOps.