Lightweight Directory Access Protocol (LDAP) é um padrão da internet que fornece acesso às informações de diferentes sistemas e aplicativos de computador. O LDAP usa um conjunto de protocolos para acessar diretórios de informações e recuperar as informações. Um diretório é como uma base de dados, mas contém informações mais descritivas e por atributos. As informações em um diretório geralmente são lidas com mais frequência do que são gravadas ou modificadas. O LDAP permite que um aplicativo, executado na plataforma do computador de uma escola, obtenha informações como nomes de usuário e senhas.

Centralizar esse tipo de informação simplifica seu trabalho, fornecendo um único ponto de administração. As informações do usuário são fornecidas em um único local, reduzindo o armazenamento de informações duplicadas. Isso, por sua vez, reduz as necessidades de manutenção. A autenticação LDAP também permite que os usuários tenham um único logon e senha para acessar uma série de aplicativos diferentes.

Mais informações sobre como criar provedores de autenticação


Sobre LDAPS e LDAP com StartTLS

Versões anteriores do Learn permitiam adicionar LDAP simples sem criptografia ("NoSSL"). A partir da versão 3900.84, não é possível criar novos provedores "NoSSL". Embora os existentes continuem funcionando, se forem atualizados para usar LDAPS/StartTLS, não será possível revertê-los para NoSSL. A Anthology recomenda que os clientes que ainda usam o NoSSL façam a migração rapidamente para uma configuração segura.

A versão original do LDAP data da década de 1980 e não suportava nenhuma segurança de conexão. O LDAPS foi a primeira tentativa de "encaixar" o que na época era conhecido como "SSL" (hoje: TLS). O LDAPS usa uma porta especial exclusiva para conexões seguras. O estabelecimento da conexão requer o uso da porta correta, dependendo se ela é segura ou insegura. Isso se tornou menos relevante ao longo do tempo à medida que o uso de conectividade insegura caía.

O LDAPS nunca foi padronizado formalmente. O IETF padronizava "LDAP com criptografia" por meio de uma abordagem completamente diferente na RFC 2830 usando StartTLS. Na configuração descrita, o servidor LDAP escuta apenas uma porta. O cliente LDAP se conecta sem segurança, depois envia um comando "STARTLS" e o servidor LDAP e o cliente negociam o TLS.

A escolha de LDAPS ou StartTLS precisa ser feita por cada instituição conforme as necessidades e o que é suportado pelo servidor do diretório ou outras considerações arquitetônicas. Se uma das opções puder ser escolhida, geralmente o StartTLS é a preferência, pois foi padronizada pelo IETF e é mais recente. Alguns especialistas em segurança consideram o LDAPS ultrapassado e implicitamente descontinuado pela disseminação do RFC 2830. No entanto, não existe um consenso uniforme sobre essa questão.

Pré-requisitos de segurança

Para que a conexão funcione corretamente, é necessário um certificado assinado comercialmente com uma cadeia completa de confiança até uma autoridade certificadora confiável pelo armazenamento de chaves "CACerts" padrão do Java 11. Não é possível instalar certificados adicionais nos armazenamentos de chaves. Certificados com assinatura automática não são compatíveis.

Sua Autoridade Certificadora (CA) normalmente não assina seu certificado com o certificado original altamente confiável, e sim com um certificado intermediário assinado pelo original. Esse intermediário deve ser enviado junto com o certificado do servidor porque a presença dele é necessária para concluir a cadeia de verificação em uma fonte segura. Normalmente, isso é feito anexando os certificados intermediários ao certificado do servidor. Consulte a documentação do servidor do diretório LDAP e o do emissor de certificados para ver mais informações.

  • O servidor de diretório LDAP e todos os intermediários precisam suportar conjuntos de cifras aceitos pelo Java 11 e versões posteriores. Por exemplo: O TLS 1.0 não é mais compatível.
  • O servidor de diretório LDAP e todos os intermediários precisam aceitar conexões recebidas dos IPs de saída do software como serviço para a sua região. Entre em contato com o suporte do Blackboard para ver essas informações.

Configurar um provedor LDAP

  1. Forneça o URL do seu servidor LDAP, por exemplo, ldaps://directory.example.edu:636 para LDAPS ou ldap://directory.example.edu:389 para LDAP com StartTLS.
  2. Defina a versão SSL para StartTLS ou LDAPS.
  3. Forneça o DN de pesquisa base – o ponto de partida na estrutura do diretório LDAP para procurar um usuário do Learn. Uma pesquisa de subárvore é realizada a partir daqui, por exemplo, dc=people,dc=example,dc=edu. Você pode criar e configurar dois provedores LDAP totalmente diferentes com DNs de pesquisa base diferentes que apontam para o mesmo servidor LDAP físico. Você pode fazer isso se quiser reduzir a carga no servidor LDAP usando a "marca" para education.blackboard.com e, em seguida, configurando o provedor LDAP para pesquisar somente dc=people,dc=education, dc=example,dc=edu em vez da árvore inteira.

    Você pode adicionar vários provedores LDAP com os mesmos DNs de pesquisa base que apontam para diferentes servidores físicos. Se um servidor LDAP não responder, a estrutura consultará o próximo. Mais informações sobre a ordem de provedor.

  4. Forneça o Atributo de pesquisa – o atributo LDAP que contém o valor que mapeia para o Nome de usuário ou Uid de lote do Learn configurado na etapa Criar provedor. Essa propriedade é específica do domínio. Para o Active Directory (AD), a propriedade usada normalmente é sAMAccountName e, para Novell, normalmente é uid. Para o Active Directory, a maioria dos clientes que integram usa sAMAccountName como Atributo de pesquisa. Isso mapeia o nome de logon de estilo antigo (pré-win2k) com um máximo de 20 caracteres. O administrador de Domínio do AD pode confirmar se esse é o atributo correto ou se você pode ou deve usar userPrincipalName.

    Alguns servidores LDAP, como o Active Directory, exigem que um usuário privilegiado se conecte ao diretório. O provedor LDAP requer o Nome diferenciado (DN) e a senha do usuário. As duas opções usuais para a conexão com o uso de um usuário privilegiado incluem:

    • Criar um novo usuário dentro do diretório. Atribuir a esse usuário somente o direito de acesso de leitura. Usar essa conta de usuário como o usuário privilegiado.
    • Usar um usuário de diretório existente como o usuário privilegiado.

    Essa conta precisa acessar o servidor LDAP para cada usuário que tentar fazer logon na Blackboard. Como melhor prática, selecione as opções Usuário não pode alterar senha e Senha nunca expira.

    Isso é chamado de uma conta de serviço, para que o administrador LDAP possa ter um local especial no diretório para esses tipos de contas.

    Ao configurar pela primeira vez a conta, use uma senha básica e, somente depois de confirmar que a configuração está funcionando, altere a senha para algo mais forte. Lembre-se de que podem ocorrer problemas com os caracteres especiais, como # e @.

  5. Como opção, defina:
    • Buscar usando usuário privilegiado como Sim. O padrão é Não. Ao pesquisar o FDN do usuário para autenticar, o provedor LDAP se associa ao servidor LDAP como um usuário privilegiado (especificado).
    • Forneça o DN de usuário privilegiado. Se Buscar usando usuário privilegiado estiver configurado como Sim, isso deverá ser configurado. Por exemplo: cn=BlackboardLDAP,ou=Special Users, dc= example,dc=edu ou BlackboardLDAP@example.edu
    • Forneça a Senha do usuário privilegiado. Se Buscar usando usuário privilegiado estiver configurado como Sim, isso deverá ser configurado. Representa a senha do usuário no DN de usuário privilegiado.
  6. Como opção, faça as Configurações avançadas.
    • O tempo limite de conexão precisa de um mínimo de 15.000 milissegundos. Representa o tempo em milissegundos para aguardar antes de cancelar uma solicitação LDAP.
    • Desreferenciar pseudônimos como Sempre, Encontrando ou Pesquisando. O padrão é Nunca. Essa propriedade define como os pseudônimos são desreferenciados durante as operações de pesquisa.
      • Nunca: Nunca desreferenciar pseudônimos.
      • Sempre: Sempre desreferenciar pseudônimos.
      • Encontrando: Desreferenciar pseudônimos somente durante a resolução de nomes, isto é, ao encontrar o item de destino.
      • Pesquisando: Desreferenciar pseudônimos assim que a resolução de nomes estiver concluída, isto é, depois de encontrar o item de destino.
    • Indicações como Seguir ou Lançar. O padrão é Ignorar. Essa propriedade especifica como as indicações devem ser tratadas pelo provedor.
      • Ignorar: Ignorar as indicações se elas aparecerem nos resultados.
      • Seguir: Seguir automaticamente as indicações.
      • Lançar: Lance um Java ReferralException para cada indicação. Isso resulta em uma condição de erro.
    • Limite de indicação como 5 é o padrão. Essa propriedade especifica o número máximo de referências a serem seguidas. Uma configuração de zero é um valor inválido. Você poderá configurar essa propriedade somente se a propriedade Indicações estiver configurada como Seguir ou Lançar.
  7. Selecione Enviar para salvar a configuração.

    Antes de tornar o novo provedor de autenticação Ativo, selecione Testar definições de conexão no menu contextual para confirmar que a configuração funciona como esperado.