Come posso impostare l'autenticazione Redmine => Active Directory?


9

Innanzitutto, non sono un amministratore AD sul sito, ma il mio manager mi ha chiesto di provare a integrare la mia installazione Redmine personale con ActiveDirectory al fine di testarlo per un'implementazione su larga scala.

Il nostro server AD è nell'host: port ims.example.com:389e ho un utente IMS/me.

In questo momento, ho anche un utente mein Redmine che utilizza l'autenticazione locale.

Ho creato un metodo di autenticazione LDAP ActiveDirectory in RedMine con i seguenti parametri:

Host: ims.example.com
Port: 389
Base DN: cn=Users,dc=ims,dc=example,dc=com

On-The-Fly User Creation: YES
Login: sAMAccountName
Firstname: givenName
Lastname: sN
Email: mail

Testare questa connessione funziona bene.

Tuttavia, non mi sono autenticato con successo.

Ho creato un utente amministratore di backup in modo da poter rientrare menell'account in caso di errore, quindi ho provato a cambiare meper utilizzare le credenziali di ActiveDirectory. Tuttavia, una volta fatto, non funziona nulla per accedere. Ho provato tutte queste opzioni per il nome di accesso:

  • me
  • IMS/me
  • IMS\me

Ho usato la mia password di dominio conosciuta, ma nessuna gioia.

Quindi, quale impostazione ho sbagliato o quali informazioni devo acquisire per farlo funzionare?

Risposte:


13

Ok, quindi ecco le impostazioni specifiche di cui avevo bisogno per far funzionare questo:

Host: ims.example.com
Port: 389
User: MYDOMAIN\accountName
Password: *******
Base DN: dc=mydomain,dc=example,dc=com

On-The-Fly User Creation: YES
Login: sAMAccountName
Firstname: givenName
Lastname: sN
Email: mail

Il trucco stava rimuovendo cn=Usersdal DN di base, dopodiché tutto si è unito.

L'altra cosa degna di nota è stata l'inclusione di un utente di leggere la directory.

Infine, l'utente che accede utilizza il proprio nome utente senza qualifica di dominio e la propria password di dominio come al solito. Il nostro dominio non richiede un indirizzo e-mail, quindi c'è un passaggio aggiuntivo in cui l'indirizzo e-mail deve essere impostato durante la creazione dell'utente, ma è piuttosto semplice.


Ahh ... Non ho nemmeno pensato di chiederti se i tuoi account utente fossero o meno nel contenitore predefinito "CN = Users, ...".
Evan Anderson,

Sarebbe più utile sapere come avrei potuto determinarlo. Sono arrivato a questa configurazione solo attraverso tentativi ed errori.
Chris R,

Questo è stato in gran parte prova ed errore anche per me, poiché ho eseguito manualmente il rollup del mio plug-in di autenticazione AD per Devise che non richiede nemmeno un account di lettura AD specifico; si lega e si autentica ad AD utilizzando il nome utente / la password di accesso. Questo è stato di grande aiuto, Chris, grazie.
Ben Kreeger,

Un chiarimento (mi ci è voluto un intero pomeriggio): l'account deve essere formattato come nome distinto, non come nome di accesso.
coz

Per me la correzione è stata l'aggiunta del dominio all'account utente della query, ad esempio la parte MYDOMAIN.
Andy Arismendi,

6

Un trucco per trovare il DN di base per l'autenticazione LDAP di ActiveDirectory è verificare qual è il nome di dominio completo degli utenti. puoi verificarlo con:

whoami /FQDN

se hai effettuato l'accesso come quell'utente, che restituisce qualcosa di simile

CN=John Doe,OU=users,OU=department,DC=corp,DC=domain,DC=com

e il DN di base può essere trovato rimuovendo il primo CN.

OU=users,OU=department,DC=corp,DC=domain,DC=com

Grazie per questo. Non ero a conoscenza di questo comando, molto utile.
jasonmmiraglia,

4

Non ho familiarità con Redmine, ma sembra che tu stia cercando di fare un collegamento anonimo ad Active Directory per convalidare le credenziali. Non funzionerà. Avendo configurato più prodotti per l'integrazione LDAP con AD, questo è un problema comune che ho visto.

Per impostazione predefinita, AD richiede che i client eseguano l'autenticazione durante l'associazione alla directory per eseguire query.

Dai un'occhiata a questa pubblicazione wiki Redmine relativa alla configurazione dell'autenticazione LDAP. Stanno parlando di specificare un account e una password da utilizzare per Redmine (uno che ha i diritti di leggere la directory - farà un semplice "Utente di dominio") per collegarsi alla directory.


In quale modulo devo inserire il nome utente? In realtà non lo spiegano nel post del wiki (che comunque era il mio punto di partenza per questo processo)
Chris R,

In particolare, ci ho provato IMS\mee non sembrava funzionare. Non riesco a ottenere alcun dettaglio sul motivo per cui sta fallendo.
Chris R,

Specificherei il nome utente di bind nella sintassi DOMAIN \ samAccountName. Per capire perché non funziona, consiglierei di far uscire uno sniffer (tcpdump, WireShark, Microsoft "Network Monitor" integrato, ecc.) E di far che questo affronti il ​​problema. Non c'è modo più rapido per capire cosa viene detto sul filo che guardare ciò che viene detto sul filo. (Sembra sciocco, ma molte persone non pensano mai di guardare lì ...) Quindi, almeno, puoi vedere se i parametri che hai specificato vengono passati come previsto.
Evan Anderson,

Wireshark si sta rivelando una manna dal cielo qui. Grazie per quel suggerimento. Ho trovato alcuni problemi per questo, e arriverò e pubblicherò i dettagli a breve.
Chris R,

Vedere ciò che le scatole si dicono l'un l'altro rende immediatamente chiara la causa di molti problemi. Sono contento di sentire che hai funzionato!
Evan Anderson,

3

Usa un browser ldap e controlla visivamente la struttura ... luma su Ubuntu funziona bene, anche ldapper per Mac.


In realtà non ha funzionato con il mio server LDAP, ma posso vedere come sarebbe utile.
Chris R,

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.