Usando o Apache / Kerberos / Keytab para autenticar a redução de usuários no Active Directory

1

Por favor, descubram comigo, pois ainda estou atualizada para essas tecnologias.

Nós temos um servidor Debian (squeeze) para o qual eu tenho acesso root. Ele está executando o Apache e o Redmine é implementado no servidor (atualmente usando um banco de dados MySQL local para autenticação).

O Apache é configurado para usar o Kerberos e um arquivo keytab para autenticar usuários no Active Directory. Com a configuração atual, assim que um usuário tenta acessar qualquer coisa através de https, o usuário é solicitado a fornecer um nome de usuário / senha, que é autenticada com êxito no Active Directory.

Eu entendo (de alguma forma) que o Redmine tem sua própria configuração LDAP que pode ser usada para autenticar usuários em um Active Directory existente, mas isso exigiria que o usuário insira suas credenciais uma vez para o Apache e uma segunda vez para o Redmine.

Posso de alguma forma configurar o Redmine para compartilhar o método de autenticação Apache em vez de exigir que o usuário insira suas credenciais uma segunda vez? (Usar o Apache para autenticar no Active Directory é um requisito para um aplicativo separado no servidor)

    
por David Kaczynski 24.10.2012 / 00:08

3 respostas

2

Não tenho certeza se há suporte embutido no Redmine para esse recurso, pois todos os links que eu posso encontrar são bem antigos. No entanto, parece que não deve ser muito difícil de adicionar.

Basicamente, a maioria dos módulos de autenticação Apache irá definir uma variável de ambiente na solicitação chamada REMOTE_USER , que eles preenchem com o nome de usuário que o solicitante provou ser. Se você modificou o Redmine para aceitar REMOTE_USER em vez de um provedor de autenticação interno como em este relatório de bug , então você seria capaz de usar apenas Apache e Kerberos para autenticar usuários.

Parece que alguém já implementou um plugin que faz uma coisa parecida . Esta postagem no fórum também detalha essa solução.

Nota : Este método apenas fornece autenticação , não autorização ; você poderá confiar que um usuário é quem ele diz ser, mas você ainda pode precisar usar uma conexão LDAP direta com o Active Directory se quiser saber em que grupos um usuário está ou qualquer outro tipo de controle de acesso graduado.

    
por 26.10.2012 / 06:24
0

Na verdade, se o Redmine suportar o Kerberos, você está pronto e não tem nada a ver com o Apache, porque assim que o usuário obtém o ticket do Kerberos, ele pode obter acesso a serviços que suportam o Kerberos e configurados para isso. Eu não estou familiarizado com o Redmine, mas encontrei este plugin: link

    
por 31.10.2012 / 18:36
0

Acabei de postar uma solução usando o plugin single_auth e o NTLM: link

Você pode adaptá-lo para usar o kerberos em vez do NTLM no lado do apache.

Espero que ajude!

    
por 14.02.2016 / 17:10