Esta é uma tradução da página de documentação original em inglês. Ajude-nos a torná-la melhor.

11 Configuração SAML com Okta

Esta seção descreve como configurar o Okta para habilitar o SAML 2.0 autenticação para Zabbix.

Configuração do Okta

1. Acesse https://okta.com e registre-se ou faça login na sua conta.

2. Na interface web do Okta, navegue até Aplicativos → Aplicativos e pressione o botão "Adicionar aplicativo" ().

3. Pressione o botão "Criar novo aplicativo" (). Em uma janela pop-up, selecione Platform: Web, Sign on method: SAML 2.0 e pressione o botão "Criar".

4. Preencha os campos na guia Configurações gerais (a primeira guia que aparece) de acordo com suas preferências e pressione "Avançar".

5. Na guia Configure SAML, insira os valores fornecidos abaixo e, em seguida, pressione "Próximo".

  • Na seção GERAL:
    • Single sign on URL: https://<your-zabbix-url>/ui/index_sso.php?acs
      A caixa de seleção Usar isso para URL de destinatário e URL de destino deve ser marcado)
    • URI do público-alvo (ID da entidade SP): zabbix
      Observe que esse valor será usado na declaração SAML como um identificador exclusivo do provedor de serviços (se não corresponder, o operação será rejeitada). É possível especificar um URL ou qualquer string de dados neste campo.
    • Estado de retransmissão padrão:
      Deixe este campo em branco; se for necessário um redirecionamento personalizado, ele pode ser adicionado no Zabbix nas configurações de Administração → Usuários.
    • Preencha outros campos de acordo com suas preferências.

Se estiver planejando usar uma conexão criptografada, gere e certificados de criptografia públicos e, em seguida, carregue o certificado público para Ok. O formulário de upload de certificado aparece quando Assertion Encryption é definido para Criptografado (clique em Mostrar Configurações Avançadas para encontrar este parâmetro).

  • Na seção ATTRIBUTE STATEMENTS (OPTIONAL), adicione um atributo declaração com:
    • Nome: usrEmail
    • Formato do nome: Não especificado
    • Valor: user.email

6. Na próxima guia, selecione "Sou um fornecedor de software. Gostaria de integrar meu aplicativo com Okta" e pressione "Concluir".

7. Agora, navegue até a guia Atribuições e pressione o botão "Atribuir", em seguida, selecione Atribuir a Pessoas na lista suspensa.

8. Em um pop-up que aparece, atribua o aplicativo criado às pessoas que usarão SAML 2.0 para autenticar com o Zabbix, então pressione "Salvar e voltar".

9. Navegue até a guia Sign On e pressione o botão "View Setup Instruções". As instruções de configuração serão exibidas em uma nova guia; mantenha esta aba aberta enquanto configura o Zabbix.

Configuração do Zabbix

1. No Zabbix, vá para as configurações de SAML em Administration → Seção de autenticação e informações de cópia da configuração do Okta instruções nos campos correspondentes:

  • URL de logon único do provedor de identidade → URL do serviço SSO
  • Emissor do provedor de identidade → ID da entidade IdP
  • Atributo de nome de usuário → Nome do atributo (usrEmail)
  • ID da entidade SP → URI do público-alvo

2. Baixe o certificado fornecido nas instruções de configuração do Okta page na pasta ui/conf/certs como idp.crt e defina a permissão 644 por correndo:

chmod 644 idp.crt

Observe que se você atualizou para o Zabbix 5.0 de uma versão mais antiga, você também precisará adicionar manualmente essas linhas ao arquivo zabbix.conf.php (localizado no diretório //ui/conf/ //):

// Usado para autenticação SAML.
       $SSO['SP_KEY'] = 'conf/certs/sp.key'; // Caminho para sua chave privada.
       $SSO['SP_CERT'] = 'conf/certs/sp.crt'; // Caminho para sua chave pública.
       $SSO['IDP_CERT'] = 'conf/certs/idp.crt'; // Caminho para a chave pública do IdP.
       $SSO['CONFIGURAÇÕES'] = []; // Configurações adicionais

Ver genérico SAML Autenticação instruções para obter mais detalhes.

3. Se Assertion Encryption foi definido como Criptografado no Okta, um A caixa de seleção "Assertions" do parâmetro Encrypt deve ser marcada em Zabbix também.

4. Pressione o botão "Atualizar" para salvar essas configurações.

Para entrar com SAML, o nome de usuário no Zabbix deve corresponder o e-mail Okta. Essas configurações podem ser alteradas em Administração → Seção Usuários da interface web do Zabbix.

SCIM provisioning

1. To turn on SCIM provisioning, go to "General" -> "App Settings" of the application in Okta.

Mark the Enable SCIM provisioning checkbox. As a result, a new Provisioning tab appears.

2. Go to the "Provisioning" tab to set up a SCIM connection:

  • In SCIM connector base URL specify the path to the Zabbix frontend and append api_scim.php to it, i.e.:
    https://<your-zabbix-url>/zabbix/api_scim.php
  • Unique identifier field for users: email
  • Authentication mode: HTTP header
  • In Authorization enter a valid API token with Super admin rights

If you are using Apache, you may need to change the default Apache configuration in /etc/apache2/apache2.conf by adding the following line:

SetEnvIf Authorization "(.*)" HTTP_AUTHORIZATION=$1

Otherwise Apache does not send the Authorization header in request.

3. Click on Test Connector Configuration to test the connection. If all is correct a success message will be displayed.

4. In "Provisioning" -> "To App", make sure to mark the following checkboxes:

  • Create Users
  • Update User Attributes
  • Deactivate Users

This will make sure that these request types will be sent to Zabbix.

5. Make sure that all attributes defined in SAML are defined in SCIM. You can access the profile editor for your app in "Provisioning" -> "To App", by clicking on Go to Profile Editor.

Click on Add Attribute. Fill the values for Display name, Variable name, External name with the SAML attribute name, for example, user_name.

Extenal namespace should be the same as user schema: urn:ietf:params:scim:schemas:core:2.0:User

6. Go to "Provisioning" -> "To App" -> "Attribute Mappings" of your application. Click on Show Unmapped Attributes at the bottom. Newly added attributes appear.

7. Map each added attribute.

8. Add users in the "Assignments" tab. The users previously need to be added in Directory -> People. All these assignments will be sent as requests to Zabbix.

9. Add groups in the "Push Groups" tab. The user group mapping pattern in Zabbix SAML settings must match a group specified here. If there is no match, the user cannot be created in Zabbix.

Information about group members is sent every time when some change is made.