Ejemplos y sintaxis de políticas de chatbots - AWS Organizations

Ejemplos y sintaxis de políticas de chatbots

En este tema se describe la sintaxis de la política de chatbots y se proporcionan ejemplos.

Sintaxis de las políticas de chatbots

Una política de chatbots es un archivo de texto sin formato que se estructura de acuerdo con las reglas de JSON. La sintaxis de las políticas de chatbots sigue la sintaxis de los tipos de políticas de administración. Para obtener una explicación completa de esa sintaxis, consulte Descripción de la herencia de políticas de administración. Este tema se centra en aplicar esa sintaxis general a los requisitos específicos del tipo de política de chatbots.

En el siguiente ejemplo se muestra la sintaxis básica de una política de chatbots:

{ "chatbot":{ "platforms":{ "slack":{ "client":{ "@@assign":"enabled" // enabled | disabled }, "workspaces": { // limit 255 "@@assign":[ "Slack-Workspace-Id" ] }, "default":{ "supported_channel_types":{ "@@assign":[ "private" // public | private ] }, "supported_role_settings":{ "@@assign":[ "user_role" // user_role | channel_role ] } }, "overrides":{ // limit 255 "Slack-Workspace-Id":{ "supported_channel_types":{ "@@assign":[ "public" // public | private ] }, "supported_role_settings":{ "@@assign":[ "user_role" // user_role | channel_role ] } } } }, "microsoft_teams":{ "client":{ "@@assign":"enabled" }, "tenants":{ // limit 36 "Microsoft-Teams-Tenant-Id":{ // limit 36 "@@assign":[ "Microsoft-Teams-Team-Id" ] } }, "default":{ "supported_role_settings":{ "@@assign":[ "user_role" // user_role | channel_role ] } }, "overrides":{ // limit 36 "Microsoft-Teams-Tenant-Id":{ // limit 36 "Microsoft-Teams-Team-Id":{ "supported_role_settings":{ "@@assign":[ "user_role" // user_role | channel_role ] } } } } }, "chime":{ "client":{ "@@assign":"disabled" // enabled | disabled } } }, "default":{ "client":{ "@@assign":"disabled" // enabled | disabled } } } }

Esta política de chatbots incluye los siguientes elementos:

  • El nombre de clave del campo chatbot. Las políticas de chatbots siempre comienzan con este nombre de clave fijo. Es la línea superior de esta política de ejemplo.

  • En chatbot, hay un bloque de platforms que contiene la configuración de las diferentes aplicaciones de chat compatibles: Slack, Microsoft Teams y Amazon Chime.

    • Para Slack, están disponibles los siguientes campos:

      • "client":

        • "enabled": el cliente de Slack está habilitado. Se permiten las integraciones de Slack.

        • "disabled": el cliente de Slack está deshabilitado. No se permiten las integraciones de Slack.

      • "workspaces": lista de espacios de trabajo de Slack permitidos separados por comas. En este ejemplo, los espacios de trabajo de Slack permitidos son Slack-Workspace-Id1 y Slack-Workspace-Id2.

      • "default": la configuración predeterminada de los espacios de trabajo de Slack.

        • "supported_channel_types":

          • "public": los espacios de trabajo de Slack incluidos en el ámbito de aplicación permiten los canales públicos de Slack de forma predeterminada.

          • "private": los espacios de trabajo de Slack incluidos en el ámbito de aplicación permiten los canales privados de Slack de forma predeterminada.

        • supported_role_settings:

          • "user_role": los espacios de trabajo de Slack incluidos en el ámbito de aplicación permiten roles de IAM de usuario de forma predeterminada.

          • "channel_role": Los espacios de trabajo de Slack incluidos en el ámbito de aplicación permiten roles de IAM de canal de forma predeterminada.

      • "overrides": la configuración de anulación de los espacios de trabajo de Slack.

        • Slack-Workspace-Id2: lista separada por comas de los espacios de trabajo de Slack en los que se aplica la configuración de anulación. En este ejemplo, el espacio de trabajo de Slack es Slack-Workspace-Id2.

          • "supported_channel_types":

            • "public": anula la configuración de si los espacios de trabajo de Slack incluidos en el ámbito de aplicación permiten los canales públicos de Slack.

            • "private": anula la configuración de si los espacios de trabajo de Slack incluidos en el ámbito de aplicación permiten los canales privados de Slack.

          • supported_role_settings:

            • "user_role": anula la configuración de si los espacios de trabajo de Slack incluidos en el ámbito de aplicación permiten roles de IAM de usuario.

            • "channel_role": anula la configuración de si los espacios de trabajo de Slack incluidos en el ámbito de aplicación permiten roles de IAM de canal.

    • Para Microsoft Teams, están disponibles los siguientes campos:

      • "client":

        • "enabled": el cliente Microsoft Teams está habilitado. Se permiten las integraciones de Microsoft Teams.

        • "disabled": el cliente de Microsoft Teams está deshabilitado. No se permiten las integraciones de Microsoft Teams.

      • "tenants": lista separada por comas de los inquilinos permitidos de Microsoft Teams. En este ejemplo, el inquilino permitido es Microsoft-Teams-Tenant-Id.

        • Microsoft-Teams-Tenant-Id: lista separada por comas de los equipos permitidos dentro del inquilino. En este ejemplo, el equipo permitido es Microsoft-Teams-Team-Id.

      • "default": la configuración predeterminada de los equipos del inquilino.

        • supported_role_settings:

          • "user_role": los equipos incluidos en el ámbito de aplicación permiten roles de IAM de usuario de forma predeterminada.

          • "channel_role": los equipos incluidos en el ámbito de aplicación permiten roles de IAM de canal de forma predeterminada.

      • "overrides": la configuración de anulación para los inquilinos de Microsoft Teams.

        • Microsoft-Teams-Tenant-Id: lista de inquilinos separados por comas a los que se aplica la configuración de anulación. En este ejemplo, el inquilino es Microsoft-Teams-Tenant-Id.

          • Microsoft-Teams-Team-Id: lista separada por comas de los equipos del inquilino. En este ejemplo, el equipo permitido es Microsoft-Teams-Team-Id.

            • supported_role_settings:

              • "user_role": anula la configuración de si los equipos incluidos en el ámbito de aplicación permiten roles de IAM de usuario.

              • "channel_role": anula la configuración de si los equipos incluidos en el ámbito de aplicación permiten roles de IAM de canal.

    • Para Amazon Chime, están disponibles los siguientes campos:

      • "client":

        • "enabled": el cliente Amazon Chime está habilitado. Se permiten las integraciones de Amazon Chime.

        • "disabled": el cliente Amazon Chime está deshabilitado. No se permiten las integraciones de Amazon Chime.

  • En chatbot, hay un bloque de default que deshabilita AWS Chatbot en toda la organización a menos que se anule en un nivel inferior. Este valor predeterminado también deshabilita cualquier aplicación de chat nueva que sea compatible con AWS Chatbot. Por ejemplo, si AWS Chatbot es compatible con una nueva aplicación de chat, esta opción predeterminada también deshabilita esa aplicación de chat recién admitida.

nota

Para obtener más información sobre los roles de IAM de canal y los roles de IAM de usuario, consulte Understanding AWS Chatbot permissions en la Guía del administrador de AWS Chatbot.

Ejemplos de políticas de chatbots

Las políticas de copia de seguridad siguientes son solo para fines informativos.

Ejemplo 1: permitir solo los canales privados de Slack en un espacio de trabajo específico, deshabilitar Microsoft Teams y admitir todos los modos de autenticación

La siguiente política se centra en controlar las configuraciones permitidas para las integraciones de chatbots de Slack y Microsoft Teams.

{ "chatbot": { "platforms": { "slack": { "client": { "@@assign": "enabled" }, "workspaces": { "@@assign": [ "Slack-Workspace-Id" ] }, "default": { "supported_channel_types": { "@@assign": [ "private" ] }, "supported_role_settings": { "@@assign": [ "channel_role", "user_role" ] } } }, "microsoft_teams": { "client": { "@@assign": "disabled" } }, "chime":{ "client":{ "@@assign":"disabled" } }, "default":{ "client":{ "@@assign":"disabled" } } } } }

Para Slack

  • El cliente de Slack está habilitado.

  • Solo se permite el espacio de trabajo específico de Slack Slack-Workspace-Id.

  • La configuración predeterminada es permitir solo los canales privados de Slack, los roles de IAM de canal y los roles de IAM de usuario.

Para Microsoft Teams

  • El cliente de Microsoft Teams está deshabilitado.

Para Amazon Chime

  • El cliente Amazon Chime está deshabilitado.

Detalles adicionales

  • El bloque default de la parte inferior establece la desactivación del cliente, lo que se deshabilita AWS Chatbot en toda la organización a menos que se anule en un nivel inferior. Este valor predeterminado también deshabilita cualquier aplicación de chat nueva que sea compatible con AWS Chatbot. Por ejemplo, si AWS Chatbot es compatible con una nueva aplicación de chat, esta opción predeterminada también deshabilita esa aplicación de chat recién admitida.

Ejemplo 2: permitir solo las integraciones de Slack con roles de IAM de usuario

La siguiente política adopta un enfoque más permisivo con respecto a Slack, ya que permite todos los espacios de trabajo de Slack, pero restringe el modo de autenticación solo a los roles de IAM de usuario.

{ "chatbot":{ "platforms":{ "slack":{ "client":{ "@@assign":"enabled" }, "workspaces": { "@@assign":[ "*" ] }, "default":{ "supported_role_settings":{ "@@assign":[ "user_role" ] } } }, "microsoft_teams":{ "client":{ "@@assign":"disabled" } }, "chime":{ "client":{ "@@assign":"disabled" } } }, "default":{ "client":{ "@@assign":"disabled" } } } }

Para Slack

  • El cliente de Slack está habilitado.

  • No se define ningún espacio de trabajo específico de Slack mediante el comodín "*", por lo que todos los espacios de trabajo están permitidos.

  • La configuración predeterminada es permitir solo los roles de IAM de usuario.

Para Microsoft Teams

  • El cliente de Microsoft Teams está deshabilitado.

Para Amazon Chime

  • El cliente Amazon Chime está deshabilitado.

Detalles adicionales

  • El bloque default de la parte inferior establece la desactivación del cliente, lo que se deshabilita AWS Chatbot en toda la organización a menos que se anule en un nivel inferior. Este valor predeterminado también deshabilita cualquier aplicación de chat nueva que sea compatible con AWS Chatbot. Por ejemplo, si AWS Chatbot es compatible con una nueva aplicación de chat, esta opción predeterminada también deshabilita esa aplicación de chat recién admitida.

Ejemplo 3: permitir solo las integraciones de Microsoft Teams en un inquilino específico

El siguiente ejemplo de política bloquea la organización para que solo permita las integraciones de chatbots de Microsoft Teams dentro del inquilino especificado, al tiempo que bloquea por completo las integraciones de Slack.

{ "chatbot":{ "platforms":{ "slack":{ "client": { "@@assign": "disabled" }, }, "microsoft_teams":{ "client": { "@@assign": "enabled" }, "tenants":{ "Microsoft-Teams-Tenant-Id":{ "@@assign":[ "*" ] } } }, "chime": { "client":{ "@@assign": "disabled" } } } } }

Para Slack

  • El cliente de Slack está deshabilitado.

Para Microsoft Teams

  • Solo se permite el inquilino específico Microsoft-Teams-Tenant-Id, y se utiliza el comodín "*" para permitir la entrada a todos los equipos de ese inquilino.

Para Amazon Chime

  • El cliente Amazon Chime está deshabilitado.

Detalles adicionales

  • El bloque default de la parte inferior establece la desactivación del cliente, lo que se deshabilita AWS Chatbot en toda la organización a menos que se anule en un nivel inferior. Este valor predeterminado también deshabilita cualquier aplicación de chat nueva que sea compatible con AWS Chatbot. Por ejemplo, si AWS Chatbot es compatible con una nueva aplicación de chat, esta opción predeterminada también deshabilita esa aplicación de chat recién admitida.

Ejemplo 4: permitir el acceso restringido de AWS Chatbot a los espacios de trabajo de Slack y a un inquilino de Microsoft Teams

La siguiente política permite el acceso restringido de AWS Chatbot a determinados espacios de trabajo de Slack y a un inquilino de Microsoft Teams.

{ "chatbot":{ "platforms":{ "slack":{ "client":{ "@@assign":"enabled" }, "workspaces": { "@@assign":[ "Slack-Workspace-Id1", "Slack-Workspace-Id2" ] }, "default":{ "supported_channel_types":{ "@@assign":[ "private" ] }, "supported_role_settings":{ "@@assign":[ "user_role" ] } }, "overrides":{ "Slack-Workspace-Id2":{ "supported_channel_types":{ "@@assign":[ "public", "private" ] }, "supported_role_settings":{ "@@assign":[ "channel_role", "user_role" ] } } } }, "microsoft_teams":{ "client":{ "@@assign":"enabled" }, "tenants":{ "Microsoft-Teams-Tenant-Id":{ "@@assign":[ "Microsoft-Teams-Team-Id" ] } }, "default":{ "supported_role_settings":{ "@@assign":[ "user_role" ] } }, "overrides":{ "Microsoft-Teams-Tenant-Id":{ "Microsoft-Teams-Team-Id":{ "supported_role_settings":{ "@@assign":[ "channel_role", "user_role" ] } } } } } }, "default":{ "client":{ "@@assign":"disabled" } } } }

Para Slack

  • El cliente de Slack está habilitado.

  • Los espacios de trabajo de Slack permitidos son Slack-Workspace-Id1 y Slack-Workspace-Id2.

  • La configuración predeterminada de Slack es permitir solo los canales privados y los roles de IAM de usuario.

  • Hay una modificación para el espacio de trabajo Slack-Workspace-Id2 que permite tanto los canales públicos como los privados, así como los roles de IAM de canal y los roles de IAM de usuario.

Para Microsoft Teams

  • Microsoft Teams está habilitado.

  • Los inquilinos de Teams permitidos son Microsoft-Teams-Tenant-Id con el equipo Microsoft-Teams-Team-Id.

  • La configuración predeterminada es permitir únicamente los roles de IAM de usuario.

  • Hay una modificación para el inquilino Microsoft-Teams-Tenant-Id que permite tanto los roles IAM de canal como los roles de IAM de usuario para el equipo Microsoft-Teams-Team-Id.

Detalles adicionales

  • El bloque default de la parte inferior establece la desactivación del cliente, lo que se deshabilita AWS Chatbot en toda la organización a menos que se anule en un nivel inferior. Esto significa que Amazon Chime está deshabilitado en este ejemplo. Este valor predeterminado también deshabilita cualquier aplicación de chat nueva que sea compatible con AWS Chatbot. Por ejemplo, si AWS Chatbot es compatible con una nueva aplicación de chat, esta opción predeterminada también deshabilita esa aplicación de chat recién admitida.