Como posso obter o LDAP para passar as credenciais do usuário atualmente conectado para um servidor Apache local?

2

Estou tentando fazer com que o SSO (logon único) funcione em uma instalação local do osTicket. Eu encontrei o plugin do HTTP passthru no site da osTicket e instalei-o no osTicket. Eu verifiquei se o plugin está funcionando, certificando-me de que eu tenha acesso às configurações do plugin. Então, o que deveria acontecer, como eu entendo, é que as credenciais do usuário são lidas do Windows e então passadas diretamente para o osTicket para que o usuário seja logado automaticamente. Por favor me corrija se eu estiver errado sobre como o plugin deve funcionar. Eu também me certifiquei de que o plugin LDAP está funcionando e instalado no osTicket. Fiz algumas pesquisas sobre por que o login automático não estava funcionando e percebi que a autenticação HTTP não era a mesma do Windows AD. Eu procurei SSPI, Kerberos e muito mais para ver se eu poderia obter credenciais do Windows para o servidor Apache e assumi que o módulo LDAP deveria ser capaz de obter essas credenciais. Novamente, por favor corrija-me se eu estiver errado sobre como o módulo LDAP funciona. Eventualmente, eu acabei de eliminar minha instalação do XAMPP e comecei com uma instalação do WAMP. Tenho o LDAP trabalhando nisso e agora estou tentando encontrar uma maneira de obter credenciais para o Apache. Eu escrevi um script simples que deve ecoar o usuário atualmente logado.

<?php
$user = $_SERVER['REMOTE_USER'];
?>
<html>
<body>
<?php echo $user;?>
</body>
</html>

No entanto, quando executo esse script, recebo o seguinte erro.

(!) Aviso: Índice indefinido: REMOTE_USER em C: \ wamp \ www \ servertest.php na linha 2

Isso me diz que o superglobal de $ _SERVER não está obtendo credenciais do Windows para o usuário conectado no momento. Como posso preencher esse array superglobal com as credenciais do Windows? Existe alguma opção de configuração que precise ser adicionada ao meu HTTPD.conf?

    
por c0l0nelp0pc0rn 20.08.2015 / 17:28

1 resposta

1

você precisa configurar sua instalação wamp para autenticação ldap e / ou kerberos e essas variáveis estarão disponíveis para seus scripts php.

Para o Apache 2.2 (mais comumente encontrado hoje): link

Para o Apache 2.4: link

Se você precisar de single sign on, você precisará configurar o mod_kerberos também. Eu nunca usei xampp ou wamp, então não tenho idéia se eles têm mod_kerberos.

Se você quer algo que simplesmente funciona sem ter que aprender como funciona, então você pode instalar o IIS como você está executando o Windows de qualquer maneira. Uma versão moderna não doméstica da área de trabalho do Windows permitirá executá-la com algumas restrições quanto ao número de conexões simultâneas, enquanto uma versão do servidor não terá essa limitação.

    
por 20.08.2015 / 19:02