Plugin SCIM

:information_source: Resumo Adicionar endpoints de provedor de serviço SCIM
:hammer_and_wrench: Link do Repositório https://forge.libre.sh/libre.sh/discourse-scim
:open_book: Guia de Instalação Como instalar plugins no Discourse

Funcionalidades

Um plugin que adiciona endpoints SCIM ao Discourse. SCIM é um padrão proposto pelo IETF através da RFC7644 e RFC7643 que visa fornecer uma solução para gerenciamento de usuários/grupos através de uma simples API Rest.

Além de qualquer SSO e criação centralizada de contas existente, o SCIM tem as seguintes vantagens:

  • atribuir usuários a grupos;
  • alterar informações do usuário imediatamente em vários aplicativos;
  • excluir o usuário quando ele for removido do SSO;
  • obter a lista de usuários ou grupos de forma padronizada;

Testamos este plugin com o plugin SCIM do keycloak e o provedor SCIM do authentik como clientes. A ideia é que você possa adicionar/editar usuários no keycloak ou authentik e as alterações sejam refletidas automaticamente no Discourse.

Configuração

Para consultar os endpoints SCIM, você precisa primeiro criar uma chave de API. Você pode ter uma chave de API global para todos os usuários ou uma chave de API granular (com escopo) para todos os usuários, conforme descrito aqui: Create and configure an API key
Por favor, use o escopo scim. Atualmente, você precisa permitir o acesso a todos os endpoints juntos.

Em seguida, para consultar todos os usuários com curl, por exemplo:

$ curl -H 'Authorization: Bearer <your_api_key>' -H 'Content-Type: application/scim+json' -v http://localhost:4200/scim_v2/Users
6 curtidas