diff --git a/data-access/servlet/pom.xml b/data-access/servlet/pom.xml
index 58a2466d8ca4f025e9e3f09673fc457677b77c71..e9afeba46b18ed82cb752e395a73ba1f18b50fc7 100644
--- a/data-access/servlet/pom.xml
+++ b/data-access/servlet/pom.xml
@@ -68,11 +68,11 @@
                   <version>0.9.5</version>
           </dependency>
 
-          <dependency>
+          <!-- dependency>
                   <groupId>auth</groupId>
                   <artifactId>vlkb-auth</artifactId>
                   <version>0.1-SNAPSHOT</version>
-          </dependency>
+          </dependency -->
 
           <!-- needed in Regrid for merge -->
           <dependency>
@@ -81,8 +81,6 @@
                   <version>1.0</version>
           </dependency>
 
-
-
           <dependency>
                   <groupId>com.googlecode.json-simple</groupId>
                   <artifactId>json-simple</artifactId>
@@ -96,6 +94,108 @@
                   <scope>test</scope>
           </dependency>
 
+
+          <!-- auth dependencies (mostly caused by jjwt lib) -->
+
+          <!-- https://mvnrepository.com/artifact/io.jsonwebtoken/jjwt-jackson -->
+          <dependency>
+                  <groupId>io.jsonwebtoken</groupId>
+                  <artifactId>jjwt-jackson</artifactId>
+                  <version>0.12.3</version>
+                  <scope>runtime</scope>
+          </dependency>
+          <!-- https://mvnrepository.com/artifact/io.jsonwebtoken/jjwt-api -->
+          <dependency>
+                  <groupId>io.jsonwebtoken</groupId>
+                  <artifactId>jjwt-api</artifactId>
+                  <version>0.12.3</version>
+          </dependency>
+          <!-- https://mvnrepository.com/artifact/io.jsonwebtoken/jjwt-api -->
+          <dependency>
+                  <groupId>io.jsonwebtoken</groupId>
+                  <artifactId>jjwt-impl</artifactId>
+                  <version>0.12.3</version>
+          </dependency>
+
+          <dependency>
+                  <groupId>com.fasterxml.jackson.core</groupId>
+                  <artifactId>jackson-core</artifactId>
+                  <version>2.9.10</version>
+          </dependency>
+          <!-- https://mvnrepository.com/artifact/com.fasterxml.jackson.core/jackson-annotations -->
+          <dependency>
+                  <groupId>com.fasterxml.jackson.core</groupId>
+                  <artifactId>jackson-annotations</artifactId>
+                  <version>2.9.10</version>
+          </dependency>
+          <!-- https://mvnrepository.com/artifact/com.fasterxml.jackson.core/jackson-databind -->
+          <dependency>
+                  <groupId>com.fasterxml.jackson.core</groupId>
+                  <artifactId>jackson-databind</artifactId>
+                  <version>2.9.10</version>
+          </dependency>
+          <!-- https://mvnrepository.com/artifact/jakarta.xml.bind/jakarta.xml.bind-api -->
+          <dependency>
+                  <groupId>jakarta.xml.bind</groupId>
+                  <artifactId>jakarta.xml.bind-api</artifactId>
+                  <version>2.3.2</version>
+          </dependency>
+
+          <!-- https://mvnrepository.com/artifact/org.slf4j/slf4j-api -->
+          <dependency>
+                  <groupId>org.slf4j</groupId>
+                  <artifactId>slf4j-api</artifactId>
+                  <version>1.7.36</version>
+          </dependency>
+          <!-- https://mvnrepository.com/artifact/org.slf4j/slf4j-simple -->
+          <dependency>
+                  <groupId>org.slf4j</groupId>
+                  <artifactId>slf4j-simple</artifactId>
+                  <version>1.7.36</version>
+                  <scope>test</scope>
+          </dependency>
+ 
+          <!-- https://mvnrepository.com/artifact/ch.qos.logback/logback-classic -->
+          <!-- dependency>
+                  <groupId>ch.qos.logback</groupId>
+                  <artifactId>logback-classic</artifactId>
+                  <version>1.4.7</version>
+                  <scope>test</scope>
+          </dependency -->
+          <!-- https://mvnrepository.com/artifact/ch.qos.logback/logback-core -->
+          <!-- dependency>
+                  <groupId>ch.qos.logback</groupId>
+                  <artifactId>logback-core</artifactId>
+                  <version>1.4.7</version>
+          </dependency -->
+
+          <!-- https://mvnrepository.com/artifact/org.cache2k/cache2k-api -->
+          <dependency>
+                  <groupId>org.cache2k</groupId>
+                  <artifactId>cache2k-api</artifactId>
+                  <version>1.2.4.Final</version>
+          </dependency>
+          <!-- https://mvnrepository.com/artifact/org.cache2k/cache2k-core -->
+          <dependency>
+                  <groupId>org.cache2k</groupId>
+                  <artifactId>cache2k-core</artifactId>
+                  <version>1.2.4.Final</version>
+          </dependency>
+
+          <!-- IA2 local -->
+          <dependency>
+                  <groupId>auth</groupId>
+                  <artifactId>auth-lib</artifactId>
+                  <version>2.0.0-SNAPSHOT</version>
+          </dependency>
+          <dependency>
+                  <groupId>auth</groupId>
+                  <artifactId>rap-client</artifactId>
+                  <version>1.0-SNAPSHOT</version>
+          </dependency>
+
+
+
   </dependencies>
 
 
diff --git a/auth/src/main/java/AuthPolicy.java b/data-access/servlet/src/main/java/auth/authz/AuthPolicy.java
similarity index 100%
rename from auth/src/main/java/AuthPolicy.java
rename to data-access/servlet/src/main/java/auth/authz/AuthPolicy.java
diff --git a/auth/src/main/java/AuthPolicyDb.java b/data-access/servlet/src/main/java/auth/authz/AuthPolicyDb.java
similarity index 88%
rename from auth/src/main/java/AuthPolicyDb.java
rename to data-access/servlet/src/main/java/auth/authz/AuthPolicyDb.java
index 7eeb8a5b316e554c8e0201cb73506b03da700630..8c42103732f7bcdf9c25bc49473c89d287859f14 100644
--- a/auth/src/main/java/AuthPolicyDb.java
+++ b/data-access/servlet/src/main/java/auth/authz/AuthPolicyDb.java
@@ -32,8 +32,8 @@ public class AuthPolicyDb
    private static final Logger LOGGER = Logger.getLogger(AuthPolicyDb.class.getName());
 
    private static final String DB_DRIVER = "org.postgresql.Driver";
-   //private static final Settings settings = Settings.getInstance();
-   //static public Settings.DBConn dbconn = settings.dbConn;
+   private static final Settings settings = Settings.getInstance();
+   static public Settings.DBConn dbconn = settings.dbConn;
    static public String dbConnUrl;
    static public String dbUserName;
    static public String dbPassword;
@@ -184,7 +184,7 @@ public class AuthPolicyDb
          DriverManager.registerDriver(new org.postgresql.Driver());
          */
 
-      LOGGER.finest(getRegisteredDriverList());
+      //LOGGER.finest(getRegisteredDriverList());
 
       // FIXME seems DriverManager expects jdbc:postgresql driver scheme, it does not support postgresql:// scheme
       // additionally:
@@ -209,17 +209,25 @@ public class AuthPolicyDb
                  String password = userInfo[1];
 
                  String dbConnJdbcUrl = "jdbc:" + dbConnUrl.replace(userInfoString + "@", "");
-                 */       LOGGER.finest("DBMS URL: " + dbConnUrl);
-      LOGGER.finest("DBMS userName: " + dbUserName);
-      LOGGER.finest("DBMS password: " + dbPassword);
+   //              */       LOGGER.finest("DBMS URL: " + dbConnUrl);
+   //   LOGGER.finest("DBMS userName: " + dbUserName);
+   //   LOGGER.finest("DBMS password: " + dbPassword);
 
-      conn = DriverManager.getConnection(dbConnUrl, dbUserName, dbPassword);
+   //   conn = DriverManager.getConnection(dbConnUrl, dbUserName, dbPassword);
 
-      st = conn.createStatement();
+    //  st = conn.createStatement();
 
       // } catch (Exception e){ e.printStackTrace();}
 
-      return st.executeQuery(TheQuery);
+      // new
+      LOGGER.finer("Connecting to: " + dbconn.uri() + " with optional user/pwd: " + dbconn.userName() + " / " + dbconn.password() );
+
+            Connection conn = DriverManager.getConnection(dbconn.uri(), dbconn.userName(), dbconn.password());
+            Statement  st   = conn.createStatement();
+            ResultSet  res  = st.executeQuery(TheQuery);
+         return res;
+      // new end
+      // return st.executeQuery(TheQuery);
    }
 
 
diff --git a/auth/src/main/java/webapi/AuthZFilter.java b/data-access/servlet/src/main/java/auth/authz/webapi/AuthZFilter.java
similarity index 100%
rename from auth/src/main/java/webapi/AuthZFilter.java
rename to data-access/servlet/src/main/java/auth/authz/webapi/AuthZFilter.java
diff --git a/auth/src/main/java/webapi/AuthZSettings.java b/data-access/servlet/src/main/java/auth/authz/webapi/AuthZSettings.java
similarity index 100%
rename from auth/src/main/java/webapi/AuthZSettings.java
rename to data-access/servlet/src/main/java/auth/authz/webapi/AuthZSettings.java
diff --git a/auth/src/main/java/IamSigningKeyResolver.java b/data-access/servlet/src/main/java/auth/oidc/IamSigningKeyResolver.java
similarity index 100%
rename from auth/src/main/java/IamSigningKeyResolver.java
rename to data-access/servlet/src/main/java/auth/oidc/IamSigningKeyResolver.java
diff --git a/auth/src/main/java/IntrospectResponse.java b/data-access/servlet/src/main/java/auth/oidc/IntrospectResponse.java
similarity index 100%
rename from auth/src/main/java/IntrospectResponse.java
rename to data-access/servlet/src/main/java/auth/oidc/IntrospectResponse.java
diff --git a/auth/src/main/java/InvalidTokenException.java b/data-access/servlet/src/main/java/auth/oidc/InvalidTokenException.java
similarity index 100%
rename from auth/src/main/java/InvalidTokenException.java
rename to data-access/servlet/src/main/java/auth/oidc/InvalidTokenException.java
diff --git a/auth/src/main/java/Ivoid.java b/data-access/servlet/src/main/java/auth/oidc/Ivoid.java
similarity index 100%
rename from auth/src/main/java/Ivoid.java
rename to data-access/servlet/src/main/java/auth/oidc/Ivoid.java
diff --git a/auth/src/main/java/NeaSigningKeyResolver.java b/data-access/servlet/src/main/java/auth/oidc/NeaSigningKeyResolver.java
similarity index 100%
rename from auth/src/main/java/NeaSigningKeyResolver.java
rename to data-access/servlet/src/main/java/auth/oidc/NeaSigningKeyResolver.java
diff --git a/auth/src/main/java/VlkbUser.java b/data-access/servlet/src/main/java/auth/oidc/VlkbUser.java
similarity index 100%
rename from auth/src/main/java/VlkbUser.java
rename to data-access/servlet/src/main/java/auth/oidc/VlkbUser.java
diff --git a/auth/src/main/java/IA2TokenConvFilter.java b/data-access/servlet/src/main/java/auth/oidc/webapi/IA2TokenConvFilter.java
similarity index 100%
rename from auth/src/main/java/IA2TokenConvFilter.java
rename to data-access/servlet/src/main/java/auth/oidc/webapi/IA2TokenConvFilter.java
diff --git a/auth/src/main/java/IamTokenFilter.java b/data-access/servlet/src/main/java/auth/oidc/webapi/IamTokenFilter.java
similarity index 100%
rename from auth/src/main/java/IamTokenFilter.java
rename to data-access/servlet/src/main/java/auth/oidc/webapi/IamTokenFilter.java
diff --git a/auth/src/main/java/IamTokenSettings.java b/data-access/servlet/src/main/java/auth/oidc/webapi/IamTokenSettings.java
similarity index 100%
rename from auth/src/main/java/IamTokenSettings.java
rename to data-access/servlet/src/main/java/auth/oidc/webapi/IamTokenSettings.java
diff --git a/auth/src/main/java/NeaTokenFilter.java b/data-access/servlet/src/main/java/auth/oidc/webapi/NeaTokenFilter.java
similarity index 100%
rename from auth/src/main/java/NeaTokenFilter.java
rename to data-access/servlet/src/main/java/auth/oidc/webapi/NeaTokenFilter.java
diff --git a/auth/src/main/java/NeaTokenSettings.java b/data-access/servlet/src/main/java/auth/oidc/webapi/NeaTokenSettings.java
similarity index 100%
rename from auth/src/main/java/NeaTokenSettings.java
rename to data-access/servlet/src/main/java/auth/oidc/webapi/NeaTokenSettings.java
diff --git a/data-access/servlet/src/main/java/common/engine/amqp/JsonEncoder.java b/data-access/servlet/src/main/java/common/json/JsonEncoder.java
similarity index 100%
rename from data-access/servlet/src/main/java/common/engine/amqp/JsonEncoder.java
rename to data-access/servlet/src/main/java/common/json/JsonEncoder.java
diff --git a/data-access/servlet/src/main/java/cutout/webapi/Settings.java b/data-access/servlet/src/main/java/common/webapi/Settings.java
similarity index 100%
rename from data-access/servlet/src/main/java/cutout/webapi/Settings.java
rename to data-access/servlet/src/main/java/common/webapi/Settings.java
diff --git a/data-access/servlet/src/main/java/common/Soda.java b/data-access/servlet/src/main/java/cutout/Soda.java
similarity index 100%
rename from data-access/servlet/src/main/java/common/Soda.java
rename to data-access/servlet/src/main/java/cutout/Soda.java
diff --git a/data-access/servlet/src/main/java/common/SodaImpl.java b/data-access/servlet/src/main/java/cutout/SodaImpl.java
similarity index 100%
rename from data-access/servlet/src/main/java/common/SodaImpl.java
rename to data-access/servlet/src/main/java/cutout/SodaImpl.java
diff --git a/data-access/servlet/src/main/java/common/engine/cli/ExecCmd.java b/data-access/servlet/src/main/java/cutout/engine/cli/ExecCmd.java
similarity index 100%
rename from data-access/servlet/src/main/java/common/engine/cli/ExecCmd.java
rename to data-access/servlet/src/main/java/cutout/engine/cli/ExecCmd.java
diff --git a/data-access/servlet/src/main/java/merge/Regrid.java b/data-access/servlet/src/main/java/vlkb/Regrid.java
similarity index 100%
rename from data-access/servlet/src/main/java/merge/Regrid.java
rename to data-access/servlet/src/main/java/vlkb/Regrid.java
diff --git a/data-access/servlet/src/main/java/merge/Reproject.java b/data-access/servlet/src/main/java/vlkb/Reproject.java
similarity index 100%
rename from data-access/servlet/src/main/java/merge/Reproject.java
rename to data-access/servlet/src/main/java/vlkb/Reproject.java
diff --git a/data-access/servlet/src/main/java/Vlkb.java b/data-access/servlet/src/main/java/vlkb/Vlkb.java
similarity index 100%
rename from data-access/servlet/src/main/java/Vlkb.java
rename to data-access/servlet/src/main/java/vlkb/Vlkb.java
diff --git a/data-access/servlet/src/main/java/merge/VlkbAmqp.java b/data-access/servlet/src/main/java/vlkb/VlkbAmqp.java
similarity index 100%
rename from data-access/servlet/src/main/java/merge/VlkbAmqp.java
rename to data-access/servlet/src/main/java/vlkb/VlkbAmqp.java
diff --git a/data-access/servlet/src/main/java/common/engine/amqp/JsonDecoder.java b/data-access/servlet/src/main/java/vlkb/amqp/JsonDecoder.java
similarity index 100%
rename from data-access/servlet/src/main/java/common/engine/amqp/JsonDecoder.java
rename to data-access/servlet/src/main/java/vlkb/amqp/JsonDecoder.java
diff --git a/data-access/servlet/src/main/java/common/engine/amqp/JsonEncoderMerge.java b/data-access/servlet/src/main/java/vlkb/amqp/JsonEncoderMerge.java
similarity index 100%
rename from data-access/servlet/src/main/java/common/engine/amqp/JsonEncoderMerge.java
rename to data-access/servlet/src/main/java/vlkb/amqp/JsonEncoderMerge.java
diff --git a/data-access/servlet/src/main/java/common/engine/amqp/RpcOverAmqp.java b/data-access/servlet/src/main/java/vlkb/amqp/RpcOverAmqp.java
similarity index 100%
rename from data-access/servlet/src/main/java/common/engine/amqp/RpcOverAmqp.java
rename to data-access/servlet/src/main/java/vlkb/amqp/RpcOverAmqp.java
diff --git a/data-access/servlet/src/main/java/merge/webapi/UWSMerge.java b/data-access/servlet/src/main/java/vlkb/webapi/UWSMerge.java
similarity index 100%
rename from data-access/servlet/src/main/java/merge/webapi/UWSMerge.java
rename to data-access/servlet/src/main/java/vlkb/webapi/UWSMerge.java
diff --git a/data-access/servlet/src/main/java/merge/webapi/UWSMergeWork.java b/data-access/servlet/src/main/java/vlkb/webapi/UWSMergeWork.java
similarity index 100%
rename from data-access/servlet/src/main/java/merge/webapi/UWSMergeWork.java
rename to data-access/servlet/src/main/java/vlkb/webapi/UWSMergeWork.java
diff --git a/auth/resources/auth.properties b/data-access/servlet/src/main/resources/auth.properties
similarity index 100%
rename from auth/resources/auth.properties
rename to data-access/servlet/src/main/resources/auth.properties
diff --git a/auth/resources/authpolicy.properties b/data-access/servlet/src/main/resources/authpolicy.properties
similarity index 100%
rename from auth/resources/authpolicy.properties
rename to data-access/servlet/src/main/resources/authpolicy.properties
diff --git a/auth/resources/iamtoken.properties b/data-access/servlet/src/main/resources/iamtoken.properties
similarity index 100%
rename from auth/resources/iamtoken.properties
rename to data-access/servlet/src/main/resources/iamtoken.properties
diff --git a/auth/resources/neatoken.properties b/data-access/servlet/src/main/resources/neatoken.properties
similarity index 100%
rename from auth/resources/neatoken.properties
rename to data-access/servlet/src/main/resources/neatoken.properties
diff --git a/docker/Dockerfile.soda b/docker/Dockerfile.soda
index 5a2bf4ff30a0d09f5cf4e2e2524e442799ce17a4..5dc88fa25e30e57cabc9e3cb838782fda91acd3a 100644
--- a/docker/Dockerfile.soda
+++ b/docker/Dockerfile.soda
@@ -37,6 +37,7 @@ RUN dpkg -i vlkb-${VLKB_VERSION}.deb \
  && rm -f $WEBAPP_DIR/WEB-INF/lib/jjwt-*0.11*.jar
 # remove jjwt used by IA2 (IA2 and IAM token filters used different ver of jjwt)
 
+
 # configure instance
 
 ENV INST_DIR=/usr/local
@@ -51,6 +52,11 @@ COPY deps/setenv.sh ${CATALINA_BASE}/bin/
 
 COPY deps/context.xml ${WEBAPP_DIR}/META-INF/context.xml
 
+# DB used for authorization
+# Tomcat must load DB-driver (postgresql_*.jar), vlkb-soda does not explicitely load DB-drivers
+COPY deps/postgresql-*.jar  /var/lib/tomcat9/lib
+
+
 # modif permissions to allow run as non-root: need to config TSL and ROOT-CONTEXT
 WORKDIR ${CATALINA_BASE}
 RUN chmod -R a+rwX conf
diff --git a/docker/start-soda.sh.soda b/docker/start-soda.sh.soda
index 064d75f42a21b46aba540b8b803575abfc189f00..b8f912f5016aa0238b74f675c50cb5292e451e39 100755
--- a/docker/start-soda.sh.soda
+++ b/docker/start-soda.sh.soda
@@ -15,10 +15,10 @@ SKAIAM_INTROSPECT=${SKAIAM_INTROSPECT:-}
 SKAIAM_CLIENT=${SKAIAM_CLIENT:-}
 SKAIAM_PASSWORD=${SKAIAM_PASSWORD:-}
 
-AUTH_RAP_URL=${AUTH_RAP_URL:-}
-AUTH_GMS_URL=${AUTH_GMS_URL:-}
-AUTH_CLIENT=${AUTH_CLIENT:-}
-AUTH_SECRET=${AUTH_SECRET:-}
+OIDC_RAP_URL=${OIDC_RAP_URL:-}
+OIDC_GMS_URL=${OIDC_GMS_URL:-}
+OIDC_CLIENT=${OIDC_CLIENT:-}
+OIDC_SECRET=${OIDC_SECRET:-}
 
 
 # configure CONTEXT_ROOT
@@ -75,20 +75,20 @@ fi
 
 # configure IA2 security
 
-if [ -z "$AUTH_RAP_URL" ] || [ -z "$AUTH_GMS_URL" ] || [ -z "$AUTH_CLIENT" ] || [ -z "$AUTH_SECRET" ];
+if [ -z "$OIDC_RAP_URL" ] || [ -z "$OIDC_GMS_URL" ] || [ -z "$OIDC_CLIENT" ] || [ -z "$OIDC_SECRET" ];
 then
-   echo "Some of AUTH_ is not set."
-   echo "rap: "$AUTH_RAP_URL
-   echo "gms: "$AUTH_GMS_URL
-   echo "cli: "$AUTH_CLIENT
-   echo "pwd: "$AUTH_SECRET
+   echo "Some of OIDC_ is not set."
+   echo "rap: "$OIDC_RAP_URL
+   echo "gms: "$OIDC_GMS_URL
+   echo "cli: "$OIDC_CLIENT
+   echo "pwd: "$OIDC_SECRET
 else
-   echo "Config SKA IAM ..."
+   echo "Config IA2 OIDC ..."
    {
-      echo "rap_uri=$AUTH_RAP_URL"
-      echo "gms_uri=$AUTH_GMS_URL"
-      echo "client_id=$AUTH_CLIENT"
-      echo "client_secret=$AUTH_SECRET"
+      echo "rap_uri=$OIDC_RAP_URL"
+      echo "gms_uri=$OIDC_GMS_URL"
+      echo "client_id=$OIDC_CLIENT"
+      echo "client_secret=$OIDC_SECRET"
       echo "groups_autoload=true"
       echo "store_state_on_login_endpoint=true"
       echo "scope=openid email profile read:rap"
@@ -97,6 +97,24 @@ else
    cp $WEBAPP_DIR/WEB-INF/web-cutout-ia2token.xml $WEBAPP_DIR/WEB-INF/web.xml
 fi
 
+# VLKB authorization
+
+if [ -z "$AUTHZ_DB_URL" ] || [ -z "$AUTHZ_DB_SCHEMA" ] || [ -z "$AUTHZ_DB_USER" ] || [ -z "$AUTHZ_DB_PASSWORD" ];
+then
+   echo "Some of AUTHZ_DB_ is not set."
+else
+   echo "Config VLKB authorization ..."
+   {
+      echo "db_uri=$AUTHZ_DB_URL"
+      echo "db_schema=$AUTHZ_DB_SCHEMA"
+      echo "db_user_name=$AUTHZ_DB_USER"
+      echo "db_password=$AUTHZ_DB_PASSWORD"
+   } > $WEBAPP_DIR/WEB-INF/classes/authpolicy.properties
+   # cp $WEBAPP_DIR/WEB-INF/web-cutout-ia2token.xml $WEBAPP_DIR/WEB-INF/web.xml
+fi
+
+
+
 
 # config debug
 DBG_LEVEL=${DEBUG_LEVEL:-CONFIG}