66#include < queue>
77#include " ldap_auth_provider.h"
88#include " ldap_utils.h"
9+ #include " ldap_auth_provider_log.h"
910
1011// This temporary solution
1112// These lines should be declared outside ldap_compat.h
@@ -118,6 +119,7 @@ class TLdapAuthProvider : public NActors::TActorBootstrapped<TLdapAuthProvider>
118119 }
119120
120121 void Handle (TEvLdapAuthProvider::TEvEnrichGroupsRequest::TPtr& ev) {
122+ // LDAP_LOG_D("+++ TEvLdapAuthProvider::TEvEnrichGroupsRequest");
121123 TEvLdapAuthProvider::TEvEnrichGroupsRequest* request = ev->Get ();
122124 LDAP* ld = nullptr ;
123125 auto initAndBindResult = InitAndBind (&ld, [&request](const TEvLdapAuthProvider::EStatus& status, const TEvLdapAuthProvider::TError& error) {
@@ -174,6 +176,7 @@ class TLdapAuthProvider : public NActors::TActorBootstrapped<TLdapAuthProvider>
174176 if (Settings.GetScheme () != NKikimrLdap::LDAPS_SCHEME && Settings.GetUseTls ().GetEnable ()) {
175177 result = NKikimrLdap::StartTLS (*ld);
176178 if (!NKikimrLdap::IsSuccess (result)) {
179+ LDAP_LOG_D (" Could not start TLS. " + NKikimrLdap::ErrorToString (result));
177180 TEvLdapAuthProvider::TError error {
178181 .Message = " Could not start TLS\n " + NKikimrLdap::ErrorToString (result),
179182 .Retryable = NKikimrLdap::IsRetryableError (result)
@@ -187,6 +190,8 @@ class TLdapAuthProvider : public NActors::TActorBootstrapped<TLdapAuthProvider>
187190
188191 result = NKikimrLdap::Bind (*ld, Settings.GetBindDn (), Settings.GetBindPassword ());
189192 if (!NKikimrLdap::IsSuccess (result)) {
193+ LDAP_LOG_D (" Could not perform initial LDAP bind for dn " + Settings.GetBindDn () + " on server " + UrisCreator.GetUris () + " . "
194+ + NKikimrLdap::ErrorToString (result));
190195 TEvLdapAuthProvider::TError error {
191196 .Message = " Could not perform initial LDAP bind for dn " + Settings.GetBindDn () + " on server " + UrisCreator.GetUris () + " \n "
192197 + NKikimrLdap::ErrorToString (result),
@@ -249,6 +254,8 @@ class TLdapAuthProvider : public NActors::TActorBootstrapped<TLdapAuthProvider>
249254 TAuthenticateUserResponse AuthenticateUser (const TAuthenticateUserRequest& request) {
250255 char * dn = NKikimrLdap::GetDn (*request.Ld , request.Entry );
251256 if (dn == nullptr ) {
257+ LDAP_LOG_D (" Could not get dn for the first entry matching " + FilterCreator.GetFilter (request.Login ) + " on server " + UrisCreator.GetUris () + " . "
258+ + NKikimrLdap::LdapError (*request.Ld ));
252259 return {{TEvLdapAuthProvider::EStatus::UNAUTHORIZED,
253260 {.Message = " Could not get dn for the first entry matching " + FilterCreator.GetFilter (request.Login ) + " on server " + UrisCreator.GetUris () + " \n "
254261 + NKikimrLdap::LdapError (*request.Ld ),
@@ -257,6 +264,8 @@ class TLdapAuthProvider : public NActors::TActorBootstrapped<TLdapAuthProvider>
257264 TEvLdapAuthProvider::TError error;
258265 int result = NKikimrLdap::Bind (*request.Ld , dn, request.Password );
259266 if (!NKikimrLdap::IsSuccess (result)) {
267+ LDAP_LOG_D (" LDAP login failed for user " + TString (dn) + " on server " + UrisCreator.GetUris () + " . "
268+ + NKikimrLdap::ErrorToString ((result)));
260269 error.Message = " LDAP login failed for user " + TString (dn) + " on server " + UrisCreator.GetUris () + " \n "
261270 + NKikimrLdap::ErrorToString ((result));
262271 error.Retryable = NKikimrLdap::IsRetryableError (result);
@@ -278,6 +287,8 @@ class TLdapAuthProvider : public NActors::TActorBootstrapped<TLdapAuthProvider>
278287 &searchMessage);
279288 TSearchUserResponse response;
280289 if (!NKikimrLdap::IsSuccess (result)) {
290+ LDAP_LOG_D (" Could not search for filter " + searchFilter + " on server " + UrisCreator.GetUris () + " . "
291+ + NKikimrLdap::ErrorToString (result));
281292 response.Status = NKikimrLdap::ErrorToStatus (result);
282293 response.Error = {.Message = " Could not search for filter " + searchFilter + " on server " + UrisCreator.GetUris () + " \n "
283294 + NKikimrLdap::ErrorToString (result),
@@ -287,10 +298,14 @@ class TLdapAuthProvider : public NActors::TActorBootstrapped<TLdapAuthProvider>
287298 const int countEntries = NKikimrLdap::CountEntries (request.Ld , searchMessage);
288299 if (countEntries != 1 ) {
289300 if (countEntries == 0 ) {
301+ LDAP_LOG_D (" LDAP user " + request.User + " does not exist. "
302+ " LDAP search for filter " + searchFilter + " on server " + UrisCreator.GetUris () + " return no entries" );
290303 response.Error = {.Message = " LDAP user " + request.User + " does not exist. "
291304 " LDAP search for filter " + searchFilter + " on server " + UrisCreator.GetUris () + " return no entries" ,
292305 .Retryable = false };
293306 } else {
307+ LDAP_LOG_D (" LDAP user " + request.User + " is not unique. "
308+ " LDAP search for filter " + searchFilter + " on server " + UrisCreator.GetUris () + " return " + countEntries + " entries" );
294309 response.Error = {.Message = " LDAP user " + request.User + " is not unique. "
295310 " LDAP search for filter " + searchFilter + " on server " + UrisCreator.GetUris () + " return " + countEntries + " entries" ,
296311 .Retryable = false };
0 commit comments