html šŸ” SCIM 2.0: Provisionamento automatizado de usuĆ”rios | Nullcore
Pule para o conteĆŗdo principal

Suporte SCIM 2.0

O Nullcore suporta o SCIM 2.0 (Sistema para gerenciamento de identidade de domƭnio cruzado) para o provisionamento automatizado de usuƔrios e grupos de provedores de identidade como Okta, Azure AD e Google Workspace.

Visão geral

O SCIM é um padrão aberto que permite a automação do provisionamento do usuÔrio. Quando ativado, seu provedor de identidade pode automaticamente:

  • Crie usuĆ”rios em webui aberto quando forem adicionados Ć  sua organização
  • Atualize as informaƧƵes do usuĆ”rio quando as alteraƧƵes sĆ£o feitas
  • Desative os usuĆ”rios quando eles sĆ£o removidos de sua organização
  • Gerenciar associaƧƵes de grupo

Configuração

O SCIM Ć© configurado inteiramente atravĆ©s de variĆ”veis ​​de ambiente. NĆ£o hĆ” configuração de interface do usuĆ”rio para configuraƧƵes do SCIM.

VariĆ”veis ​​de ambiente

Configure o SCIM definindo essas variĆ”veis ​​de ambiente:

  • SCIM_ENABLED: Definido comotruePara ativar o suporte SCIM (padrĆ£o:false
  • SCIM_TOKEN: O token do portador para autenticação SCIM (exigido quando o SCIM estiver ativado)
Nota de seguranƧa

O token SCIM deve ser uma string segura e gerada aleatoriamente. VocĆŖ pode gerar um usando:

OpenSSL rand -base64 32

Mantenha esse token seguro, pois fornece acesso Ơs operaƧƵes de gerenciamento de usuƔrios.

Exemplo de configuração

# Enable scim
exportar scim_enabled = true

# Defina um token seguro (substitua por seu próprio token gerado)
exportar scim_token = "sua teta-token-here"

Configuração do SCIM API

Ao configurar seu provedor de identidade, use as seguintes configuraƧƵes:

  • Scim Base URL<your-nullcore-url>/api/v1/scim/v2/
  • Autenticação: Token do portador
  • TokenBearer <your-scim-token>

OKTA

  1. Em Okta, adicione o aplicativo SCIM
  2. Defina o URL da base do conector SCIM como:https://your-domain.com/api/v1/scim/v2/
  3. Defina a autenticação como "Cabeçalho HTTP"
  4. Adicione o cabeçalho da autorização com valor:Bearer your-scim-token

OperaƧƵes SCIM suportadas

A implementação SCIM da Nullcore suporta as seguintes operações:

OperaƧƵes do usuƔrio

  • Criar usuĆ”rioPOST /Users): Crie uma nova conta de usuĆ”rio
  • Obtenha usuĆ”rioGET /Users/{id}): Recupere as informaƧƵes do usuĆ”rio
  • Atualize o usuĆ”rioPUT /Users/{id}, Assim,PATCH /Users/{id}): Atualize os atributos do usuĆ”rio
  • Excluir usuĆ”rioDELETE /Users/{id}): Desative uma conta de usuĆ”rio
  • Liste os usuĆ”riosGET /Users): Liste todos os usuĆ”rios com suporte de filtragem

OperaƧƵes de grupo

  • Criar grupoPOST /Groups): Crie um novo grupo
  • Obtenha grupoGET /Groups/{id}): Recuperar informaƧƵes do grupo
  • Grupo de atualizaçãoPUT /Groups/{id}, Assim,PATCH /Groups/{id}): Atualizar associação ao grupo
  • Excluir grupoDELETE /Groups/{id}): Remova um grupo
  • Grupos de listasGET /Groups): Liste todos os grupos com suporte de filtragem

Atributos suportados

Atributos do usuƔrio

  • userName: O endereƧo de e -mail do usuĆ”rio (necessĆ”rio, exclusivo)
  • name.givenName: Primeiro nome
  • name.familyName: Sobrenome
  • emails: EndereƧos de e -mail
  • active: Status do usuĆ”rio (ativo/inativo)
  • externalId: Identificador externo do provedor de identidade

Atributos do grupo

  • displayName: Nome do grupo (exigido)
  • members: Matriz de membros do usuĆ”rio
  • externalId: Identificador externo do provedor de identidade

Suporte de filtragem

A API SCIM suporta filtragem para usuƔrios e grupos:

Get/api/v1/scim/v2/usuƔrios? Filtro = nome de usuƔrio eq "user@example.com"
Get/api/v1/scim/v2/grupos? Filtro = displayname eq "engenharia"

Operadores de filtro suportados:

  • eq: Igual a
  • ne: NĆ£o Ć© igual
  • co: ContĆ©m
  • sw: ComeƧa com
  • ew: Termina com
  • pr: Presente (tem valor)
  • gt: Maior que
  • ge: Maior ou igual
  • lt: Menor que
  • le: Menos ou igual

Solução de problemas

QuestƵes comuns

  1. 401 erros não autorizados

    • Verifique issoSCIM_ENABLEDestĆ” definido comotrue
    • Verifique se o token do portador em seu provedor de identidade correspondeSCIM_TOKEN
    • Verifique se o formato do cabeƧalho da autorização Ć©:Bearer <token>
  2. 404 não encontrados erros

    • Verifique se o URL da base do SCIM termina com/api/v1/scim/v2/
    • Verifique se o caminho inclui o/api/v1prefixo
  3. Falhas de criação de usuÔrios

    • Garanta ouserNameO campo contĆ©m um endereƧo de e -mail vĆ”lido
    • Verifique se o email ainda nĆ£o estĆ” em uso

Testando pontos de extremidade SCIM

VocĆŖ pode testar os terminais do SCIM usando o CURL:

# Teste de autenticação e listar usuÔrios
Curl -H "Autorização: Portador Your-Scim-Token" \
https://your-domain.com/api/v1/scim/v2/users

# Obtenha um usuƔrio especƭfico
Curl -H "Autorização: Portador Your-Scim-Token" \
https://your-domain.com/api/v1/scim/v2/users/user-id

# Crie um usuƔrio de teste
Curl -x post \
-H "Autorização: Portador seu Scim-Token" \
-H "Tipo de ConteĆŗdo: Application/Scim+JSON" \
-d '{
"Esquemas": ["urn: IETF: params: scim: esquemas: nĆŗcleo: 2.0: user"],
"Nome de usuƔrio": "test@example.com",
"nome": {
"Givenname": "Teste",
"FamilyName": "UsuƔrio"

"E -mails": [{
"Valor": "test@example.com",
"PrimƔrio": verdadeiro

"Ativo": verdadeiro
} '\
https://your-domain.com/api/v1/scim/v2/users

ConsideraƧƵes de seguranƧa

  1. Use https: Sempre use https na produção para proteger o token do portador
  2. Armazenamento de token seguro: Armazene o token scim com seguranƧa e gire -o periodicamente
  3. Lista de permissƵes IP: Considere restringir o acesso da API SCIM aos endereƧos IP do seu provedor de identidade
  4. Auditoria log: Operações SCIM são registradas para auditoria de segurança

LimitaƧƵes

  • As extensƵes de esquema personalizadas nĆ£o sĆ£o atualmente suportadas
  • OperaƧƵes em massa nĆ£o sĆ£o implementadas
  • ETAGS para versĆ£o de recursos nĆ£o sĆ£o suportados

Integração com SSO

O SCIM funciona melhor quando combinado com o SSO (assinatura única). Uma configuração típica inclui:

  1. SCIM para provisionamento automatizado de usuƔrios
  2. OIDC para autenticação de usuÔrio

Isso garante que os usuƔrios sejam criados automaticamente e possam autenticar imediatamente usando suas credenciais corporativas.

Para configuração de SSO, consulte oDocumentação do SSO