Aktualnie pracuję nad aplikacją internetową w węźle node.js, w której użytkownik musi się zalogować, aby uzyskać dostęp do informacji. Chcę sprawdzić login użytkownika i hasło za pomocą zewnętrznego aktywnego serwera katalogów. Próbowałem przy użyciu węzła ldapauth, ale nie mogę go uruchomić (nie wiem, czy działa dla aktywnych katalogów, może po prostu openLdap). Jakieś sugestie?Uwierzytelnianie aktywnego katalogu ldap nodejs
Odpowiedz
Użyłem biblioteki ruby, aby rozwiązać problem dzięki!
Aktualizacja: Zgodnie z wnioskiem jest to biblioteka użyłem, aby rozwiązać problem https://github.com/ruby-ldap/ruby-net-ldap/
Po zainstalowaniu biblioteki ruby na serwerze, używając gem install (szukać go nie jest to zbyt trudne)
require 'rubygems'
require 'net/ldap'
ldap = Net::LDAP.new :host => server_ip_address,
:port => 389,
:auth => {
:method => :simple,
:username => "cn=manager, dc=example, dc=com",
:password => "opensesame"
}
filter = Net::LDAP::Filter.eq("cn", "George*")
treebase = "dc=example, dc=com"
ldap.search(:base => treebase, :filter => filter) do |entry|
puts "DN: #{entry.dn}"
entry.each do |attribute, values|
puts " #{attribute}:"
values.each do |value|
puts " --->#{value}"
end
end
end
p ldap.get_operation_result
Skonfiguruj plik ruby, jak pokazano powyżej.
można uruchomić biblioteki ruby za pomocą
var ldap = 'ruby '+process.cwd()+'/src/ruby/ruby_file_name '+ user+' '+password;
chwycić i hasło użytkownika w ruby używać argv [0] i ARGV 1. można pobrać rubin zwrócony wynik w node.js przy użyciu funkcji oddzwaniania
var result = exec(ldap, theCallBack);
w funkcji theCallBack można chwycić zwróconych wyników bibliotecznych rubin przepuszczając stdout
ex:
function theCallBack(err,stdout) {
----your code here, stdout is what you PUT in the ruby library.
Mam nadzieję, że to pomoże!
Czy możesz opublikować snipet swojego kodu i błąd, który otrzymasz?
Próbuję zrobić podobne i natknąłem się na bibliotekę ldapjs. Pozwala to zaimplementować połączenie klienta LDAP z serwerem LDAP i podczas wykonywania połączenia można zweryfikować nazwę użytkownika i hasło.
Próbowałem ustawić go w oknach z 0.8.2 i wpadłem w pewne problemy, co brzmi jak programista szuka. Miłym aspektem tej biblioteki jest to, że nie polega ona na powiązaniu OpenLDAP, z którym się odwołuje.
https://github.com/mcavage/node-ldapjs/issues/81 jest problemem, o którym wspomniał problem z instalacją w systemie Windows. – Christophe
Więc fragment kodu wygląda jak ldapauth libary https://github.com/trentm/node-ldapauth prawie użył kodu przykładowego – Denis
Jeśli konsola.log (LDAP) i dostać coś takiego w zamian gra: {pary: [Obiekt] zapisu: prawda, czytelny: true, _paused: false, _needDrain: false, _pending: [], _pendingCallbacks: [], _pendingBytes: 0, gniazdo: [object] szyfrowane: [object] tak dalej i tak dalej – Denis
Dla konieczności instalacji ldapjs pracuje na systemie Windows, pisałem kroki I przestrzegać tutaj http://tochedev.blogspot.be/2012/07/i-wanted-to-add-ldapjs-to-my-windows.html
nadzieję, że to pomaga.
- 1. Uwierzytelnianie LDAP z JBoss 7
- 2. Uwierzytelnianie LDAP w Windows Phone
- 3. Uwierzytelnianie LDAP w ASP.Net MVC
- 4. Uwierzytelnianie NodeJS w Firebase
- 5. Uwierzytelnianie Gitweb z Gitosis bez autoryzacji LDAP?
- 6. Jak wykonać naprawdę proste uwierzytelnianie Sinatra LDAP?
- 7. Uwierzytelnianie użytkownika przy użyciu LDAP z PHP
- 8. C# dostęp do aktywnego katalogu z różnymi poświadczeniami użytkownika
- 9. Winform autoryzacja użytkownika za pomocą aktywnego katalogu
- 10. Jak wykonać uwierzytelnianie hasłem dla użytkownika korzystającego z LDAP?
- 11. konfiguracja gitlab Uwierzytelnianie LDAP bez specjalnego użytkownika gitlab
- 12. Uwierzytelnianie LDAP przy użyciu konta usługi w języku Java
- 13. Jak uzyskać uwierzytelnianie za pomocą django-auth-ldap?
- 14. Proste uwierzytelnianie użytkownika/hasła dla HiveServer2 (bez protokołu Kerberos/LDAP)
- 15. Używanie aktywnego katalogu do uwierzytelniania użytkowników na stronie intranetowej
- 16. Jak uzyskać listę użytkowników z katalogu LDAP za pomocą PHP?
- 17. Autoryzacja Ldap w symfony2
- 18. Autoryzacja LDAP a SAML
- 19. Najlepsze praktyki LDAP
- 20. Flask-login i LDAP
- 21. ASP.NET Wyszukiwanie katalogu Active Directory
- 22. Jak uruchomić zapytanie ldap za pomocą R?
- 23. Flask - Uwierzytelnianie Active Directory
- 24. Uwierzytelnianie ldapjs (konfiguracja logowania użytkownika)
- 25. Uwierzytelnianie lub błąd uprawnień, nie ma uprawnień do katalogu zdalnego
- 26. Ręczne uwierzytelnianie systemu Windows
- 27. Uzyskiwanie nazwy aktywnego okna
- 28. Uwierzytelnianie i uwierzytelnianie Vaadin
- 29. Nodejs: Kineticjs w nodejs
- 30. Podłączanie do systemu Windows Uwierzytelnianie poświadczeń podczas uwierzytelniania za pomocą LDAP
Świetne, jeśli możesz edytować tę odpowiedź, dodając trochę informacji/linków/kodu o rozwiązaniu, którego użyłeś, aby pomóc innym, którzy mogą mieć ten problem. – Dhaust
Zaktualizowałem moje rozwiązanie na żądanie – Denis
Doskonale, dzięki za to. – Dhaust