Automatizando o provisionamento de usuários no Slack com o Microsoft Entra ID

Observação

Não há suporte para a integração com o Slack utilizando um aplicativo personalizado/BYOA. Há suporte para o uso do aplicativo da galeria, conforme descrito neste artigo. O aplicativo de galeria foi personalizado para funcionar com o servidor SCIM v1 do Slack.

O objetivo deste artigo é mostrar as etapas que você precisa executar no Slack e na ID do Microsoft Entra para provisionar e desprovisionar automaticamente as contas de usuário do Microsoft Entra ID para o Slack. Para obter detalhes importantes sobre o que esse serviço faz, como ele funciona e perguntas frequentes, confira Automatizar o provisionamento e o desprovisionamento de usuários para aplicativos SaaS com o Microsoft Entra ID.

Capacidades com suporte

  • Criar usuários no Slack
  • Remover usuários no Slack quando eles não precisarem mais de acesso
  • Manter os atributos de usuário sincronizados entre o Microsoft Entra ID e o Slack
  • Provisionar grupos e associações a um grupo no Slack
  • Logon único para o Slack (recomendado)

Pré-requisitos

O cenário descrito neste artigo pressupõe que você já tenha os seguintes itens:

Observação

Essa integração também está disponível para uso no ambiente de Nuvem do Governo dos EUA do Microsoft Entra. Você pode encontrar esse aplicativo na Galeria de Aplicativos de Nuvem do Governo dos EUA do Microsoft Entra e configurá-lo da mesma forma que você faz isso na nuvem pública.

Etapa 1: Planeje a implantação de provisionamento

  1. Saiba mais sobre como funciona o serviço de provisionamento.
  2. Determine quem está incluído no escopo de provisionamento.
  3. Determine quais dados devem ser mapeados entre o Microsoft Entra ID e o Slack.

Adicione o Slack por meio da galeria de aplicativos do Microsoft Entra para começar a gerenciar o provisionamento para o Slack. Se você já configurou o Slack para SSO, use o mesmo aplicativo. No entanto, recomendamos que você crie um aplicativo separado ao testar a integração inicialmente. Saiba mais sobre como adicionar um aplicativo da galeria aqui.

Etapa 3: Definir quem está no escopo do provisionamento

O serviço de provisionamento do Microsoft Entra permite definir o escopo de quem é provisionado com base na atribuição ao aplicativo ou com base em atributos do usuário ou do grupo. Se você optar por determinar quem será provisionado para seu aplicativo com base em atribuições, poderá seguir as etapas para atribuir usuários e grupos ao aplicativo. Se você optar por definir o escopo de quem é provisionado com base apenas em atributos do usuário ou grupo, poderá usar um filtro de escopo.

  • Comece pequeno. Teste com um pequeno conjunto de usuários e grupos antes de implementar para todos. Quando o escopo de provisionamento é definido para usuários e grupos atribuídos, é possível controlar isso atribuindo um ou dois usuários ou grupos ao aplicativo. Quando o escopo é definido para todos os usuários e grupos, é possível especificar um atributo com base no filtro de escopo.

  • Se precisar de funções extras, você poderá atualizar o manifesto do aplicativo para adicionar novas funções.

Etapa 4: configurar o provisionamento automático de usuário para o Slack

Esta seção explica como conectar o Microsoft Entra ID à API de provisionamento de contas de usuário do Slack e a configurar o serviço de provisionamento para criar, atualizar e desabilitar contas de usuário atribuídas no Slack com base na atribuição de usuários e grupos no Microsoft Entra ID.

Para configurar o provisionamento automático de contas de usuário para o Slack no Microsoft Entra ID:

  1. Entre no Centro de administração do Microsoft Entra como pelo menos Administrador de Aplicativo de nuvem.

  2. Navegar para Entra ID>Aplicativos corporativos

    Folha de aplicativos empresariais

  3. Na lista de aplicativos, escolha Slack.

    Captura de tela do link do Slack na lista Aplicativos.

  4. Selecione a guia Provisionamento.

    Captura de tela das opções Gerenciar com a opção Provisionamento destacada.

  5. Selecione + Nova configuração.

    Captura de tela automática da guia Provisionamento.

  6. No campo URL do Tenant, insira a URL do Tenant do Slack e o Token Secreto. Selecione Test Connection para garantir que Microsoft Entra ID possa se conectar ao Slack. Se a conexão falhar, verifique se sua conta do Slack tem as permissões de administrador necessárias e tente novamente.

    Captura de tela da conexão de teste de provisionamento.

  7. Na nova janela, entre no Slack usando sua conta de Administrador de Equipe. Na caixa de diálogo de autorização resultante, selecione a equipe do Slack para a qual você deseja habilitar o provisionamento e selecione Autorizar. Depois de concluído, retorne ao centro de administração do Microsoft Entra para concluir a configuração de provisionamento.

    Caixa de diálogo de Autorização

  8. Selecione Criar para criar sua configuração.

  9. Selecione Propriedades na página Visão Geral .

  10. No campo Email de Notificação, insira o endereço de email de uma pessoa que deve receber as notificações de erros de provisionamento e selecione a caixa de seleção Enviar uma notificação por email quando ocorrer uma falha.

    Captura de tela da página Propriedades de provisionamento mostrando as configurações de notificação e exclusão.

  11. Selecione Mapeamento de Atributos no painel esquerdo e selecione usuários.

  12. Examine os atributos de usuário sincronizados do Microsoft Entra ID com o Slack na seção Attribute-Mapping. Os atributos selecionados como propriedades correspondentes são usados para corresponder às contas de usuário no Slack para operações de atualização. Se você optar por alterar o atributo de destino correspondente, precisará garantir que a API do Slack dê suporte à filtragem de usuários com base nesse atributo. Selecione o botão Salvar para confirmar as alterações.

    Atributo Tipo
    ativo booleano
    externalId fio
    displayName fio
    name.familyName fio
    name.givenName fio
    título fio
    emails[type eq "work"].value fio
    nome do usuário fio
    nickName fio
    addresses[type eq "untyped"].streetAddress fio
    addresses[type eq "untyped"].locality fio
    addresses[type eq "untyped"].region fio
    addresses[type eq "untyped"].postalCode fio
    addresses[type eq "untyped"].country fio
    phoneNumbers[type eq "mobile"].value fio
    phoneNumbers[type eq "work"].value fio
    roles[primary eq "True"].value fio
    localidade fio
    name.honorificPrefix fio
    photos[type eq "photo"].value fio
    URL do perfil fio
    fuso horário fio
    tipoDeUsuário fio
    idiomaPreferido fio
    urn:scim:schemas:extension:enterprise:1.0.department fio
    urn:scim:schemas:extension:enterprise:1.0.manager Referência
    urn:scim:schemas:extension:enterprise:1.0.employeeNumber fio
    urn:scim:schemas:extension:enterprise:1.0.costCenter fio
    urn:scim:schemas:extension:enterprise:1.0.organization fio
    urn:scim:schemas:extension:enterprise:1.0.division fio
  13. Na seção Mapeamentos de Atributos , examine os atributos de grupo sincronizados da ID do Microsoft Entra com o Slack. Os atributos selecionados como propriedades Correspondentes são usados para corresponder os grupos do Slack em operações de atualização. Selecione o botão Salvar para confirmar as alterações.

    Atributo Tipo
    displayName fio
    membros Referência
  14. Para configurar filtros de escopo, consulte as instruções fornecidas no artigo de filtro de escopo.

  15. Use o provisionamento sob demanda para validar a sincronização com um pequeno número de usuários antes de implantar de forma mais ampla em sua organização.

  16. Quando estiver pronto para provisionar, selecione Iniciar Provisionamento na página Visão Geral .

Etapa 5: Monitorar a implantação

Depois de configurar o provisionamento, use os seguintes recursos para monitorar sua implantação:

  1. Utilize os logs de provisionamento para determinar quais usuários foram provisionados com sucesso ou sem sucesso.
  2. Verifique a barra de progresso para ver o status do ciclo de provisionamento e o quão perto está da conclusão
  3. Se a configuração de provisionamento parecer estar em um estado não íntegro, o aplicativo entrará em quarentena. Saiba mais sobre os estados de quarentena no artigo estado de quarentena de provisionamento de aplicativos.

Dicas de solução de problemas

  • Ao configurar o atributo displayName do Slack, esteja ciente dos seguintes comportamentos:

    • Os valores não são totalmente exclusivos (como dois usuários podem ter o mesmo nome de exibição)

    • Suporta caracteres não ingleses, espaços e letras maiúsculas.

    • A pontuação permitida inclui pontos, sublinhados, hífens, apóstrofos, colchetes (por exemplo, ( [ { } ] )) e separadores (por exemplo, , / ;).

    • A propriedade displayName não pode ter um caractere '@'. Se um '\@' for incluído, você poderá encontrar um evento ignorado nos logs de provisionamento com a descrição "AttributeValidationFailed".

    • Só será atualizado se essas duas configurações estiverem configuradas no local de trabalho/organização do Slack – a sincronização de perfil está habilitada e os usuários não podem alterar o nome de exibição.

  • O atributo userName do Slack precisa ter menos de 21 caracteres e ter um valor exclusivo.

  • O Slack só permite a correspondência com os atributos userName e email.

  • Os códigos de erros comuns são listados na documentação oficial do Slack: https://api.slack.com/scim#errors

Log de alterações

  • 16/06/2020: modificação do atributo DisplayName para que ele seja atualizado somente durante a criação de usuário.

Mais recursos