Sinatra belgelerine baktım ve yalnızca HTTP kimlik doğrulamasına başvuruyor gibi görünüyorlar. Bir LDAP sunucusu aracılığıyla yetkilendirilmiş/doğrulanmış bir kullanıcıya dayalı rotalara erişimi kontrol etmek için gerçekten basit bir yol arıyorum.Gerçekten basit bir Sinatra LDAP kimlik doğrulamasını nasıl yaparım?
Zaten onlar varsa, LDAP biraz yapar ve kullanıcı başarıyla doğrulanmış ve nil eğer bir LDAP nesnesi döndüren bir sınıf inşa ettik:
>>DirectoryUser.authenticate('user', 'password')
#<DirectoryUser:0x007ffb589a2328>
ben olmadığını belirlemek için kullanabilir onlar başarıyla doğrulanmış veya değil.
require 'directoryUser'
require 'sinatra'
enable :sessions
get '/form' do
username = params[:username]
password = params[:password]
haml :form
end
Sonra sadece 'DirectoryUser' nesne eğer yolları izin vermek istiyorum: Ben LDAP kullanıcı ve parola toplamak için form sağlayan basit Sinatra app içine bu kesikler istediğiniz bir sonraki adım olarak
var: Ben şimdiye kadar bu ancak bir cevap bulmaya çalışırken saatleri geçirdim ve benim için çalışıyor bir şey bulmak gibi olamaz
get '/protected' do # Only if DirectoryUser object exists
"This route is protected"
end
get '/unprotected' do
"This route is unprotected"
end
.
Süper! - Şimdi deneyeceğim ve nasıl gittiğini anlatayım. Cevap verdiğin için teşekkürler. – user1513388
Bu mükemmel çalıştı - yardım ettiğin için teşekkürler! – user1513388