Este artigo contém informações para ajudar na migração de diretivas existentes que usam o módulo mod_ibm_ldap para o uso dos módulos LDAP de software livre (mod_authnz_ldap e mod_ldap). A migração assegurará suporte futuro para sua configuração LDAP.
Os recursos LDAP de software livre são fornecidos por dois módulos. As diretivas AuthLDAP são fornecidas pelo módulo mod_authnz_ldap e as diretivas LDAP são fornecidas pelo módulo mod_ldap. Ambos os módulos precisam ser carregados para que os recursos LDAP estejam disponíveis. Por toda a seção a seguir, o nome genérico, mod_ldap, é usado para referenciar os módulos LDAP de software livre.
O módulo mod_ldap não fornece uma diretiva para especificar um diretório de páginas de código. O diretório de páginas de código é instalado automaticamente no diretório correto e o diretório de páginas de código não pode ser movido a partir de seu local de instalação.
ldapCodePageDir /location/of/codepages
O módulo mod_ldap não fornece uma diretiva para especificar um arquivo de configuração LDAP. Embora não haja diretiva mod_ldap para especificar o arquivo de configuração LDAP, se desejar colocar sua configuração de LDAP em um arquivo separado, será possível usar a diretiva include do Apache.
ldapConfigFile ldap.propnisto:
Include /location/of/ldap_conf/apache_ldap.conf
Uma outra alternativa para migrar a diretiva mod_ibm_ldap LDAPConfigfile é usar o contêiner AuthnProviderAlias do módulo mod_authn_alias para criar um ou mais agrupamentos de diretivas ldap e, em seguida, usá-las referenciando as etiquetas de alias onde necessário
O módulo mod_ldap fornece a diretiva require, com extensões de LDAP, para segurança de autenticação LDAP.
Se você usou usuário válido de require anteriormente para o IBM HTTP Server, poderá deixar esta diretiva require no local sem modificação. Para o nível mais alto de segurança de autenticação de LDAP, você deve migrar o usuário válido de require para um formato mais específico. Para obter informações adicionais, consulte a documentação Apache para estas diretivas require: ldap-user, ldap-dn, ldap-attribute, ldap-group, ldap-filter e valid-user.
LdapRequire filter "(&(objectclass=person)(cn=*)(ou=OurUnit)(o=OurOrg))" LdapRequire group MyDepartmentnisto:
require ldap-filter &(objectclass=person)(cn=*)(ou=OurUnit)(o=OurOrg) require ldap-group cn=MyDepartment,o=OurOrg,c=US
O módulo mod_ldap não fornece uma diretiva que especifica um tipo de autenticação. Se um valor for especificado para a diretiva AuthLDAPBindDN, a autenticação básica será ativada. Se um valor não for especificado para a diretiva AuthLDAPBindDN, o que era anteriormente o tipo de autenticação None para o módulo mod_ibm_ldap, ou anônimo, será ativado.
ldap.application.authType=[None | Basic | Cert]
O módulo mod_ldap fornece a diretiva AuthLDAPBindDN para determinar o tipo de autenticação de aplicativo.
Se um valor for especificado para a diretiva AuthLDAPBindDN, o valor da diretiva authTyp é Básico. Se a diretiva AuthLDAPBindDN não estiver ativada, o valor para a diretiva authType será None. Se um valor for especificado para a diretiva LDAPTrustedClientCert, o valor para a diretiva authType será Cert.
ldap.application.DN=cn=ldapadm,ou=OurDirectory,o=OurCompany,c=USnisto:
AuthLDAPBindDN "cn=ldapadm,ou=OurDirectory,o=OurCompany,c=US"
O módulo mod_ldap fornece a diretiva AuthLDAPBindPassword para especificar uma senha de ligação. O valor é armazenado no arquivo de configuração em texto simples. Portanto, você deve restringir o acesso ao arquivo de configuração
ldap.application.password=mypasswordnisto:
AuthLDAPBindPassword mypassword
O módulo mod_ldap não fornece uma diretiva para efetuar stash na senha. A diretiva AuthLDAPBindPassword é o único meio para especificar uma senha e o valor é armazenado no arquivo de configuração em texto simples. Portanto, você deve restringir acesso ao arquivo de configuração.
ldap.application.password.stashfile=/path/to/stashfile.sth
O módulo mod_ldap fornece a diretiva LDAPCacheTTL para especificar um tempo limite para o cache LDAP. A diretiva LDAPCacheTTL tem o escopo definido globalmente e deve ser localizada no nível superior do arquivo de configuração. Isto é diferente do módulo mod_ibm_ldap, porque a diretiva ldap.cache.timeout poderia estar localizada em qualquer lugar no arquivo de configuração.
ldap.cache.timeout=60nisto:
LDAPCacheTTL 60O valor padrão é 600 segundos.
O módulo mod_ldap fornece a diretiva AuthLDAPSubGroupClass para especificar as classes de objeto que identificam grupos. Para o módulo mod_ibm_ldap, todos os valores foram especificados em uma única linha de diretiva; mas, para o módulo mod_ldap, os valores podem ser todos especificados em uma linha ou em diversas linhas, com a diretiva e um valor em cada linha.
ldap.group.dnattributes=groupOfNames GroupOfUniqueNamesnisto:
AuthLDAPSubGroupClass groupOfNames AuthLDAPSubGroupClass groupOfUniqueNamesEstes são os valores padrão.
O módulo mod_ldap fornece a diretiva AuthLDAPSubGroupAttribute para especificar as etiquetas que identificam os membros do subgrupo do grupo atual. Para o módulo mod_ibm_ldap, será possível especificar apenas uma etiqueta; mas, para o módulo mod_ldap, é possível especificar diversas etiquetas listando todas as etiquetas em uma linha de diretiva ou fornecendo diversas linhas de diretiva, com cada etiqueta em uma linha de diretiva separada.
ldap.group.memberattribute=membernisto:
AuthLDAPSubGroupAttribute member AuthLDAPSubGroupAttribute uniqueMember
O módulo mod_ldap fornece a diretiva AuthLDAPGroupAttribute para especificar as etiquetas que identificam qualquer membro do grupo atual, tal como um usuário ou subgrupo. Para o módulo mod_ibm_ldap, você especificou todas as etiquetas em uma linha de diretiva; mas, para o módulo mod_ldap, é possível especificar todas elas em uma linha de diretiva ou especificar cada etiqueta em uma linha de diretiva separada.
ldap.group.membreattributes=member uniqueMembernisto:
AuthLDAPGroupAttribute member AuthLDAPGroupAttribute uniqueMember
O módulo mod_ldap não fornece uma diretiva para especificar filtros de usuário e grupo separados. O módulo mod_ldap usa o filtro que é fornecido no final da diretiva AuthLDAPURL. É possível usar a diretiva de contêiner AuthnProviderAlias, que é fornecida pelo módulo mod_authn_alias, para criar aliases my_ldap_user_alias e my_ldap_group_alias separados contendo as diretivas ldap necessárias. É possível, então, usar seu alias de grupo em locais nos quais a autorização é controlada por meio da associação ao grupo.
ldap.group.name.filter=(&(cn=%v1)(|(objectclass=groupofnames)(objectclass=groupofuniquenames)))
O módulo mod_ldap fornece a diretiva AuthLDAPMaxSubGroupDepth para limitar a profundidade recursiva buscada antes de parar as tentativas de localizar um usuário dentro dos grupos aninhados.
ldap.group.search.depth=5nisto:
AuthLDAPMaxSubGroupDepth 5O valor padrão é 10.
O módulo mod_ldap não fornece uma diretiva para especificar um servidor LDAP para autorizar uma associação ao grupo que é diferente do servidor LDAP que é usado para autenticar usuários.
Você também deve especificar o servidor do grupo LDAP na diretiva AuthLDAPURL para o contêiner. Assegure-se de especificar o filtro correto para cada grupo.
ldap.group.URL=ldap://groups_ldap.server.org:389/o=OurOrg,c=US ldap.group.URL=ldaps://groups_ldap.server.org:636/o=OurOrg,c=US
O módulo mod_ldap não fornece uma diretiva para especificar quando conexões estabelecidas com o servidor LDAP, que ficaram inativas, devem expirar. O módulo mod_ldap detecta automaticamente quando o servidor LDAP expira as conexões, mas não faz com que as conexões expirem.
ldap.idleConnection.timeout=60
Se nenhuma senha for especificada na diretiva LDAPTrustedGlobalCert, o módulo mod_ldap usará automaticamente um arquivo /path/to/keyfile.sth (assumindo que /path/to/keyfile.kdb é o arquivo-chave especificado na diretiva LDAPTrustedGlobalCert).
Para obter informações sobre como especificar a senha de arquivo-chave, consulte as informações da Apache para a diretiva LDAPTrustedGlobalCert. O valor é armazenado no arquivo de configuração em texto simples. Portanto, você deve restringir acesso ao arquivo de configuração.
ldap.key.file.password.stashfile=/path/to/ldap.sth
O módulo mod_ldap fornece a diretiva LDAPTrustedGlobalCert para especificar o arquivo-chave a ser usado ao carregar certificados. O módulo mod_ldap também usa estas diretivas para especificar a senha em texto simples no arquivo de configuração. Portanto, você deve restringir acesso ao arquivo de configuração.
ldap.key.filename=/path/to/keyfile.kdbnisto:
LDAPTrustedGlobalCert CMS_KEYFILE /path/to/keyfile.kdb myKDBpassword
LDAPTrustedGlobalCert SAF saf_keyring
O módulo mod_ldap fornece a diretiva LDAPTrustedClientCert para especificar qual certificado usar a partir do arquivo-chave KDB. Se o certificado padrão for usado, não será necessário especificar um valor para estas diretivas.
ldap.key.label=certname_from_kdbnisto:
LDAPTrustedClientCert CMS_LABEL certname_from_kdb
O módulo mod_ldap fornece a diretiva LDAPReferralHopLimit para limitar o número de indicações para procurar antes de parar as tentativas de localizar um usuário em uma árvore de diretórios distribuídos.
ldapReferralHopLimit 5nisto:
LDAPReferralHopLimit 5O valor padrão é 5.
O módulo mod_ldap fornece a diretiva LDAPReferrals para ativar ou desativar a procura de indicação ao localizar usuários em uma árvore de diretórios distribuídos.
ldapReferrals Onnisto:
LDAPReferrals OnO valor padrão é On.
O módulo mod_ldap fornece a diretiva AuthName para especificar a região de autorização.
ldap.realm=Some identifying textnisto:
AuthName "Algum texto de identificação"
O módulo mod_ldap fornece a diretiva LDAPSearchTimeout para especificar quando uma solicitação de procura deve ser abandonada.
ldap.search.timeout=10para
LDAPSearchTimeout 10O valor padrão é 10 segundos.
O módulo mod_ldap fornece a diretiva LDAPTrustedMode para especificar o tipo de transporte de rede a usar ao se comunicar com o servidor LDAP.
Se nenhuma porta for especificada na diretiva AuthLDAPURL, o módulo mod_ldap ignorará a diretiva LDAPTrustedMode e especificará um valor de transporte de rede de SSL. Para obter informações adicionais, consulte a documentação da Apache para as diretivas LDAPTrustedMode e AuthLDAPURL.
ldap.transport=TCP (ou SSL)nisto:
LDAPTrustedMode NONE (ou SSL)Se uma ldaps://URL for especificada, o modo se tornará SSL e a configuração de LDAPTrustedMode será ignorada.
O módulo mod_ldap fornece a diretiva AuthLDAPURL para especificar o nome do host e a porta do servidor LDAP bem como o DN base para usar ao se conectar ao servidor. O módulo mod_ldap também fornece um meio para especificar o atributo do usuário, o escopo, o filtro do usuário e o modo de transporte. Para obter informações adicionais, consulte a documentação da Apache para as diretivas AuthLDAPURL.
ldap.URL=ldap://our_ldap.server.org:389/o=OurOrg,c=US ldap.URL=ldaps://our_ldap.server.org:636/o=OurOrg,c=USnisto:
AuthLDAPURL ldap://our_ldap.server.org:389/o=OurOrg,c=US?cn?sub?(objectclass=person) AuthLDAPURL ldaps://our_ldap.server.org:636/o=OurOrg,c=US?cn?sub?(objectclass=person)
O módulo mod_ldap não fornece uma diretiva para especificar um tipo de autenticação do usuário. O módulo mod_ldap autentica usuários com base no ID do usuário e nas credenciais de senha fornecidos.
ldap.user.authType=Basic [Basic | Cert | BasicIfNoCert]
O módulo mod_ldap não fornece uma diretiva para filtrar certificados de cliente. O módulo mod_ldap não funciona diretamente com certificados de cliente.
ldap.user.cert.filter=(&(objectclass=person)(cn=%v1)(ou=%v2)(o=%v3)(c=%v4))
O módulo mod_ldap não fornece uma diretiva para análise fornecidas credenciais nos subcomponentes. O módulo mod_ibm_ldap usa a diretiva ldap.user.name.fieldSep para especificar os caracteres separadores usados para analisar as credenciais nos tokens %v1, %v2, ...%vN.
ldap.user.name.fieldSep=/ ,
O módulo mod_ldap não fornece uma diretiva para especificar o filtro de nome de usuário. O módulo mod_ldap especifica o filtro de nome de usuário como parte da diretiva AuthLDAPURL.
A diretiva AuthLDAPURL combina o atributo do usuário especificado na diretiva com o filtro fornecido para criar o filtro de procura. O filtro fornecido segue a especificação de filtro de procura padrão. O módulo mod_ldap também não fornece a função de análise de token %vx disponível para o módulo mod_ibm_ldap.
ldap.user.name.filter=(&(objectclass=person)(cn=%v1 %v2))
O módulo mod_ldap não fornece uma diretiva para especificar a versão de LDAP. O módulo mod_ldap usa somente LDAP versão 3.
ldap.version=2 (ou 3)
O módulo mod_ldap não fornece uma diretiva para especificar uma quantidade de tempo antes de tentar novamente uma tentativa de conexão com falha. O módulo mod_ldap não possui um atraso cronometrado entre novas tentativas de conexão quando uma tentativa de conexão falha. A tentativa de conexão é tentada novamente automaticamente para um máximo de 10 vezes antes de uma solicitação falhar.
Quando uma nova solicitação precisa acessar o mesmo servidor LDAP, a conexão é tentada novamente para um máximo de 10 vezes novamente. O regulador de novas tentativas é baseado no volume de novas solicitações enviadas ao servidor LDAP.
ldap.waitToRetryConnection.interval=300