diff --git a/unix_integration/resolver/src/idprovider/kanidm.rs b/unix_integration/resolver/src/idprovider/kanidm.rs index 63cedb4d5..b72fd289b 100644 --- a/unix_integration/resolver/src/idprovider/kanidm.rs +++ b/unix_integration/resolver/src/idprovider/kanidm.rs @@ -458,7 +458,7 @@ impl IdProvider for KanidmProvider { Ok(AuthResult::Denied) } Err(ClientError::Transport(err)) => { - error!(?err); + error!(?err, "A client transport error occured."); Err(IdpError::Transport) } Err(ClientError::Http(StatusCode::UNAUTHORIZED, reason, opid)) => { diff --git a/unix_integration/resolver/src/resolver.rs b/unix_integration/resolver/src/resolver.rs index 00eea4661..7bc12edbd 100644 --- a/unix_integration/resolver/src/resolver.rs +++ b/unix_integration/resolver/src/resolver.rs @@ -1069,8 +1069,17 @@ impl Resolver { Ok(PamAuthResponse::Denied) } Ok(AuthResult::Next(req)) => Ok(req.into()), - Err(IdpError::NotFound) => Ok(PamAuthResponse::Unknown), - _ => Err(()), + Err(IdpError::NotFound) => { + *auth_session = AuthSession::Denied; + + Ok(PamAuthResponse::Unknown) + } + Err(err) => { + *auth_session = AuthSession::Denied; + + error!(?err, "Unable to proceed, failing the session"); + Err(()) + } } }