You are viewing the Portuguese (Brazil) site, but your language preference is set to English. Switch to English site →

Menu

Configuração de SSO e IdP no Flex

O Twilio Flex integra‐se ao provedor de identidade existente para autenticar usuários (agentes, supervisores ou administradores) e possibilitar o SSO. O Flex permite a integração com qualquer provedor de identidade compatível com SAML 2.0 (como Google, Active Directory, Okta etc.), possibilitando usar a conta corporativa principal como o provedor de identidade do Flex.

Definições

  • IdP é uma entidade confiável que permite habilitar o logon único para acessar outros sites ou serviços, como o Twilio Flex, com um único login. Os usuários podem continuar usando as identidades de usuário corporativo sem que precisem se lembrar de muitas senhas nem digitar novamente as senhas sempre que acessarem um serviço diferente conectado ao mesmo provedor de identidade. Um provedor de identidade de exemplo é a Okta.
  • SAML (Security Assertion Markup Language) – é um padrão aberto para a troca de dados de autenticação e autorização entre as partes, em especial, entre um provedor de identidade e um provedor de serviços. SAML é uma linguagem de marcação baseada em XML para asserções de segurança (declarações que os provedores de serviços usam para tomar decisões de controle de acesso). O Twilio Flex usa SAML versão 2.0.
  • SP (Service Provider, Provedor de serviços) – neste contexto, o Twilio Flex é o provedor de serviços configurado como um aplicativo em um provedor de identidade para permitir o logon único.

Configurar o provedor de identidade para dar suporte ao Twilio Flex

As etapas para configurar o Flex como um aplicativo (provedor de serviços) no provedor de identidade serão diferentes, dependendo do provedor de identidade usado pela organização. Abaixo, é possível encontrar a documentação necessária para configurar o Flex como um provedor de serviços em alguns provedores de identidade populares:

Atributos de identidade e funções do Flex

O provedor de identidade pode fornecer qualquer número de solicitações (pares de chave/valor) ao Flex. Quatro delas são obrigatórias: ID exclusivo/ID do usuário, lista de funções do usuário, nome completo e e‐mail. Como o ID exclusivo deve ser fornecido no cabeçalho da solicitação, é provável que você não precise defini‐lo explicitamente.

O Flex inclui as seguintes funções:

Função Descrição
admin Concede acesso a todas as páginas na interface do usuário. Os administradores podem usar Flex Admin, Agent Desktop, Teams, Queue Stats, Dashboard, Analyse e também Questionnaires (recursos do Flex Insights), além de Flex Dialpad (se ativado).
supervisor Concede acesso a Agent Desktop, Teams, Queue Stats e Dialpad (se ativado).
agente Concede acesso a Agent Desktop e Dialpad (se ativado)

Os dados do usuário enviados ao Flex pelo provedor de identidade são armazenados nos atributos Worker do TaskRouter. Isso permite a você, como desenvolvedor do contact center, adaptar o Flex UI (IU do Flex) usando dados sobre o usuário conectado pelo provedor de identidade. Os atributos de funcionário criados para o usuário conectado são atualizados a cada login SSO bem‐sucedido, de maneira que todas as alterações feitas nos dados do usuário no provedor de identidade também sejam representadas como atributos worker.

Os atributos podem ser divididos em três categorias.

  • Obrigatório: A lista de parâmetros obrigatórios necessários para autenticação e autorização
  • Flexível – Agente: Esses são parâmetros usados pelo Agent Desktop do Flex
  • Flex Insights: Esses parâmetros serão altamente recomendados se você estiver usando os recursos do Flex Insights do Flex

Conversão de atributos e tipos de dados

Por padrão, todos os atributos serão transformados como strings em atributos TaskRouter, exceto o atributo Roles, que assume como padrão stringarray (vírgula como separador).

É possível indicar o tipo no nome do atributo da seguinte forma:

name[.type]

em que type seja {string | int | boolean | array | stringarray | intarray | booleanarray}

Exemplos

Nome do atributo Tipo Valor de exemplo
name.string String Mary
skill.int Inteiro 1
sales.boolean Booliano verdadeiro
languages.stringarray Matriz de strings en,de,fr
skills.intarray Matriz de inteiros 1,2,3,4

A definição incorreta do tipo e do valor do atributo (por exemplo, skill.int definido como "a" ou skill.int definido como "1.23") resultará no lançamento de um – Erro 400 Formato de atributo inválido. Nenhuma alteração será feita em TaskRouter se as definições de atributo estiverem incorretas.

As funções são um atributo especial que aceita uma lista separada por vírgulas de funções e não requer fusão com stringarray.

Atributo contact_uri

contact_uri é usado por TaskRouter e pelo SDK do Twilio Voice para desenfileirar uma chamada (informações adicionais). Por padrão, a chamada é desenfileirada para o atributo contact_uri do worker usando o JavaScript Voice Client do Twilio (exemplo: client:userId). O contact_uri é configurado automaticamente pelo Flex e não precisa ser definido no provedor de identidade. Haverá escape do valor da identidade específico para só incluir caracteres alfanuméricos e sublinhados.

A chamada recebida também pode ser desenfileirada para uma interface SIP (SIP:someone@somedomain.com) ou um número de telefone definindo‐se contact_uri como um número de telefone (formato +14151112222 - E.164). Para desenfileirar essas identidades, o contact_uri deve ser definido no provedor de identidade.

Ao desenfileirar a chamada para um número internacional, verifique se o país de destino está habilitado em Twilio Console > Programmable Voice > Calls e Geo Permissions.

Atributos obrigatórios

Nome do atributo Tipo Valor/exemplo

funções

Stringarray

agente, admin

full_name

String

Bob Bobson

e‐mail

String

john@company.com

Flex - Agent

Atributo Tipo Valor/exemplo

image_url

String

http://www.someurl.com/bob_bobson.jpg

Flex Insights

Atributo Tipo Valor/exemplo

departamento

String

Vendas

e‐mail

String

mary.smith@company.com

local

String

Londres

gerente

String

Adam Shepherd

telefone

String

+15555555555

funções

Stringarray

wfo.team_leader

team_id

String

1

team_name

String

Vice‐presidente de vendas

team_name_in_hierarchy

String

Londres, vendas, vice-presidente

Capacidade do usuário

Também é possível definir a capacidade de TaskRouter por canal por meio desses atributos. Por exemplo, um novo usuário adicionado ao Flex pode estar disponível para tarefas voice e ter uma capacidade chat padrão de 1. Elas podem ser modificadas usando‐se atributos personalizados:

Atributo Tipo Valor/exemplo

channel.voice.availability

Booliano

falso

channel.chat.capacity

Inteiro

3

Esses atributos especiais podem ser formados para qualquer um dos TaskChannels definidos no espaço de trabalho do Flex TaskRouter.

PERGUNTAS FREQUENTES

Como o Twilio gerencia identidades?

Cada usuário conectado no Twilio Flex por meio do provedor de identidade SAML se tornará automaticamente um usuário Flex. Para saber mais, consulte Gerenciar usuários do Flex UI (IU do Flex).

Ao habilitar novos usuários do Flex por meio de SSO, você incorrerá em cobranças assim que eles fizerem login. Os preços são anotados no contrato do Twilio se você estiver trabalhando com a equipe de vendas do Twilio. Para obter informações gerais sobre preços do Flex, consulte Como funcionam os preços do Twilio Flex?

O Flex também provisionará automaticamente um worker do TaskRouter para essa identidade – TaskRouter está no centro do Flex e é necessário para habilitar o encaminhamento inteligente com base em habilidades de tarefas para agentes ou supervisores.

Sempre que um usuário faz login no Flex, todas as solicitações aprovadas são verificadas e atualizadas, se necessário, usando‐se o provedor de identidade como fonte fidedigna. Caso você queira atualizar diretamente um atributo Worker específico, não o configure nos atributos/solicitações do provedor de identidade.

Posso fazer login no Flex usando o login iniciado pelo provedor de identidade? (exemplo: bloco Okta)

Sim. A configuração SSO no Twilio Console tem um campo opcional "Default Redirect URL" (URL de redirecionamento padrão). Quando fornecido, isso permite que o login iniciado pelo IdP seja encaminhado para o Flex. Caso os agentes usem o Flex de flex.twilio.com, forneça o link de login listado na Configuração SSO. Por exemplo:

https://flex.twilio.com/dancing-owl-1234

Do contrário, você usaria o próprio URL do Flex auto‐hospedado.

Como faço login em um domínio auto‐hospedado?

Para fins de segurança, todos os domínios auto‐hospedados devem ser registrados no Twilio para habilitar o login SSO. Esses domínios confiáveis podem ser fornecidos com a configuração SSO no Twilio Console. Os seguintes padrões podem ser usados durante o fornecimento de um domínio confiável:

example.com permite example.com, mas não email.example.com
flex.example.com permite flex.example.com, mas não example.com
*.example.com permite one.example.com ou two.example.com, mas não example.com ou one.two.example.com
127.0.0.1 ou ::1 permite o endereço IP

O * só pode ser usado em subdomínios curinga. Por exemplo, example.*.com ou example*.com não são compatíveis.

Posso fazer login no Flex Agent Desktop sem um provedor de identidade?

If you have logged in through Twilio Console, avoid logging in using an SSO provider to prevent a secondary account created that will incur charges overtime. Likewise, logging in with your SSO provider and then logging into Twilio Console will grant you two separate profiles that will each be billed.

Sim, os usuários do Twilio Console (exceto aqueles que só são funções Billing ou Support no Console) têm acesso ao Flex. Eles podem iniciar o Flex pelo Twilio Console e farão login usando a função admin do Flex. Recomendaremos essa abordagem para administradores e desenvolvedores quando o aplicativo estiver em desenvolvimento.

O Flex cria usuários diferentes dependendo do método de login. Por exemplo, um usuário com o mesmo endereço de e‐mail criará duas personas Flex se fizer login usando dois métodos alternativos. Por exemplo, se fizer login com SSO e, em seguida, diretamente pelo Console usando credenciais do Twilio.

É possível acionar a opção 'Login with Twilio' (Fazer login com o Twilio) de duas maneiras:

  1. Ao selecionar 'Launch Flex' (Iniciar Flex) pelo Twilio Console. Isso está disponível na página Flex Overview (Visão geral do Flex).
  2. Ao selecionar "Login com Twilio" (Fazer login com o Twilio) na exibição de login do Flex padrão.

Runtime Login View

A opção 1 sempre fará login no Flex em flex.twilio.com. Se você estiver hospedando automaticamente o Flex UI (IU do Flex), isso não carregará o destino privado.

A opção 2 está disponível para locais auto‐hospedados e para desenvolvimento local, como fazer login em localhost durante o desenvolvimento de plug‐ins.

Conforme mencionado nas perguntas frequentes para fazer login em um domínio auto‐hospedado, você deve registrar o destino como um domínio confiável. Do contrário, o login SSO e a opção "Login with Twilio" (Fazer login com o Twilio) não funcionarão.

Carregamento da exibição de login do Flex

The login view only loads if you have not provided the sso attribute within your application configuration. If the sso attribute is provided (or you are using your flex.twilio.com Login Link), then you will bypass the login view and immediately trigger SSO login.

After logging out, users will always be sent to the Flex login view. You cannot use the afterLogout action to redirect to another page.

Posso usar o atributo SessionNotOnOrAfter do meu provedor de identidade?

O atributo SessionNotOnOrAfter pode ser configurado no provedor de identidade para garantir um TTL (Time-To-Live, Tempo de vida) máximo para uma sessão autenticada. Depois do tempo configurado, um usuário será forçado a se autenticar no provedor de identidade para prorrogar a sessão com aplicativos conectados.

Não recomendamos usar esse atributo com o Twilio Flex. Quando um usuário estiver conectado ao aplicativo Flex UI (IU do Flex), o Flex atualizará regularmente o Flex Token do usuário (o token autenticado que concede acesso à interface do usuário). Se a expiração da sessão do provedor de identidade ocorrer antes do período de atualização esperado do Flex Token, o Flex não conseguirá atualizar a sessão do usuário. Toda comunicação ativa poderá ser fechada prematuramente assim que a autenticação do usuário expirar, e o usuário precisará atualizar o aplicativo Flex e refazer a autenticação por meio do provedor de identidade.

Se optar por usar SessionNotOnOrAfter, você deverá usar um valor maior que uma hora (o TTL padrão do Flex Token autenticado pelo usuário). Recomendamos definir esse valor acima do turno para um agente (por exemplo, de oito a dez horas); do contrário, o agente poderá ser inesperadamente desconectado do Flex. Mesmo se você usar um TTL longo, o usuário poderá ser afetado se fizer o primeiro login no Flex no meio da sessão autenticada ativa.

Helpful Articles

Classifique esta página:

Precisa de ajuda?

Às vezes, todos nós precisamos; a programação é difícil. Receba ajuda agora da nossa equipe de suporte, ou confie na sabedoria da multidão navegando pelo Stack Overflow Collective da Twilio ou buscando a tag Twilio no Stack Overflow.

Obrigado pelo seu feedback!

Selecione o(s) motivo(s) para seu feedback. As informações adicionais que você fornece nos ajudam a melhorar nossa documentação:

Enviando seu feedback...
🎉 Obrigado pelo seu feedback!
Algo deu errado. Tente novamente.

Obrigado pelo seu feedback!

thanks-feedback-gif