From ee8784b9df78b96781388962e9644c5510fdcf89 Mon Sep 17 00:00:00 2001
From: Daniel <daniel@harvey>
Date: Mon, 10 Feb 2020 16:02:54 +0100
Subject: [PATCH] FIX: Workaround: do not check if user exists in OS.

---
 src/main/java/caosdb/server/accessControl/Pam.java | 8 ++++++--
 1 file changed, 6 insertions(+), 2 deletions(-)

diff --git a/src/main/java/caosdb/server/accessControl/Pam.java b/src/main/java/caosdb/server/accessControl/Pam.java
index aef25d0e..606fddb6 100644
--- a/src/main/java/caosdb/server/accessControl/Pam.java
+++ b/src/main/java/caosdb/server/accessControl/Pam.java
@@ -24,6 +24,7 @@
  */
 package caosdb.server.accessControl;
 
+import caosdb.server.caching.Cache;
 import java.io.File;
 import java.io.IOException;
 import java.util.HashSet;
@@ -36,7 +37,6 @@ import org.apache.logging.log4j.Logger;
 import org.apache.shiro.authz.AuthorizationException;
 import org.jvnet.libpam.PAMException;
 import org.jvnet.libpam.UnixUser;
-import caosdb.server.caching.Cache;
 
 /**
  * PAM UserSource for authenticating users via the Host's pam module.
@@ -254,7 +254,11 @@ public class Pam implements UserSource {
    */
   private boolean isUserExistingNoCache(final String username) {
     logger.trace("Check UnixUser.exists", username);
-    return username != null && UnixUser.exists(username) && isIncorporated(username);
+    // TODO Decide what to do here.  Checking for existence may not always be possible without
+    // credentials.
+
+    // return username != null && UnixUser.exists(username) && isIncorporated(username);
+    return username != null && isIncorporated(username);
   }
 
   /** @see {@link UserSource#isValid(String, String)}. */
-- 
GitLab