diff --git a/pom.xml b/pom.xml
index 35f1493..8142350 100644
--- a/pom.xml
+++ b/pom.xml
@@ -3,9 +3,8 @@
com.epimorphics
appbase-security
jar
- 3.0.6-SNAPSHOT
+ 4.0.0-SNAPSHOT
Appbase security
- http://maven.apache.org
scm:git:git@github.com:epimorphics/appbase-security.git
@@ -68,7 +67,7 @@
com.epimorphics
appbase
- 3.1.14
+ 4.0.0
org.openid4java
@@ -99,22 +98,35 @@
org.apache.derby
derby
- 10.14.3.0
+ 10.17.1.0
- junit
- junit
- 4.13.1
+ org.apache.derby
+ derbytools
+ 10.17.1.0
+
+
+
+ org.junit.jupiter
+ junit-jupiter-api
+ 5.13.2
test
- javax.servlet
- javax.servlet-api
- 3.1.0
+ jakarta.servlet
+ jakarta.servlet-api
+ 6.0.0
provided
+
+
+ ch.qos.logback
+ logback-classic
+ 1.5.21
+ test
+
@@ -134,6 +146,11 @@
nekohtml
1.9.22
+
+ org.apache.commons
+ commons-lang3
+ 3.20.0
+
@@ -145,8 +162,8 @@
maven-compiler-plugin
3.14.1
- 1.8
- 1.8
+ 21
+ 21
diff --git a/src/main/java/com/epimorphics/appbase/security/DBUserStore.java b/src/main/java/com/epimorphics/appbase/security/DBUserStore.java
index 8b378f9..abb04d1 100644
--- a/src/main/java/com/epimorphics/appbase/security/DBUserStore.java
+++ b/src/main/java/com/epimorphics/appbase/security/DBUserStore.java
@@ -33,6 +33,7 @@
import java.util.List;
import java.util.Set;
+import org.apache.jena.riot.system.stream.StreamManager;
import org.apache.shiro.util.ByteSource;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
@@ -71,8 +72,7 @@ public void setDbfile(String dbfile) {
protected boolean initstore() {
try {
- Class.forName(driver).newInstance();
-
+ Class.forName(driver).getDeclaredConstructor().newInstance();
conn = DriverManager.getConnection(protocol + dbfile + ";create=true");
ResultSet tables = conn.getMetaData().getTables(null, null, null, new String[]{"TABLE"});
@@ -353,4 +353,4 @@ public void shutdown() {
}
}
-}
\ No newline at end of file
+}
diff --git a/src/main/java/com/epimorphics/appbase/security/ProcessOpenID.java b/src/main/java/com/epimorphics/appbase/security/ProcessOpenID.java
index b3de6ff..d50319b 100644
--- a/src/main/java/com/epimorphics/appbase/security/ProcessOpenID.java
+++ b/src/main/java/com/epimorphics/appbase/security/ProcessOpenID.java
@@ -12,10 +12,10 @@
import java.util.List;
import java.util.Map;
-import javax.servlet.http.Cookie;
-import javax.servlet.http.HttpServletRequest;
-import javax.servlet.http.HttpServletResponse;
-import javax.servlet.http.HttpSession;
+import jakarta.servlet.http.Cookie;
+import jakarta.servlet.http.HttpServletRequest;
+import jakarta.servlet.http.HttpServletResponse;
+import jakarta.servlet.http.HttpSession;
import org.apache.shiro.SecurityUtils;
import org.apache.shiro.subject.Subject;
@@ -191,7 +191,6 @@ static public String verifyResponse(HttpServletRequest request, HttpServletRespo
String provider = (String)session.getAttribute(SA_OPENID_PROVIDER);
if (provider != null && !provider.isEmpty()) {
Cookie cookie = new Cookie(PROVIDER_COOKIE, provider);
- cookie.setComment("Records the openid provider you last used to log in to an appbase application");
cookie.setMaxAge(60 * 60 * 24 * 30);
cookie.setHttpOnly(true);
cookie.setPath("/");
diff --git a/src/test/java/com/epimorphics/appbase/security/TestRealm.java b/src/test/java/com/epimorphics/appbase/security/TestRealm.java
index b5772e9..608d144 100644
--- a/src/test/java/com/epimorphics/appbase/security/TestRealm.java
+++ b/src/test/java/com/epimorphics/appbase/security/TestRealm.java
@@ -9,24 +9,26 @@
package com.epimorphics.appbase.security;
-import static org.junit.Assert.assertEquals;
-import static org.junit.Assert.assertFalse;
-import static org.junit.Assert.assertTrue;
+import static org.junit.jupiter.api.Assertions.assertEquals;
+import static org.junit.jupiter.api.Assertions.assertFalse;
+import static org.junit.jupiter.api.Assertions.assertTrue;
import org.apache.shiro.SecurityUtils;
-import org.apache.shiro.config.IniSecurityManagerFactory;
+import org.apache.shiro.env.BasicIniEnvironment;
+import org.apache.shiro.env.Environment;
import org.apache.shiro.mgt.SecurityManager;
import org.apache.shiro.subject.Subject;
-import org.apache.shiro.util.Factory;
-import org.junit.Test;
+import org.junit.jupiter.api.Test;
public class TestRealm {
@Test
public void testRealmControls() {
// Set up Shiro from ini file
- Factory factory = new IniSecurityManagerFactory("file:test/shiro.ini");
- SecurityManager securityManager = factory.getInstance();
+ Environment env = new BasicIniEnvironment("file:test/shiro.ini");
+ SecurityManager securityManager = env.getSecurityManager();
+// Factory factory = new IniSecurityManagerFactory("file:test/shiro.ini");
+// SecurityManager securityManager = factory.getInstance();
SecurityUtils.setSecurityManager(securityManager);
AppRealm realm = AppRealm.getRealm();
diff --git a/src/test/java/com/epimorphics/appbase/security/TestUserStores.java b/src/test/java/com/epimorphics/appbase/security/TestUserStores.java
index beb18c4..52069de 100644
--- a/src/test/java/com/epimorphics/appbase/security/TestUserStores.java
+++ b/src/test/java/com/epimorphics/appbase/security/TestUserStores.java
@@ -9,14 +9,14 @@
package com.epimorphics.appbase.security;
-import static org.junit.Assert.*;
+import static org.junit.jupiter.api.Assertions.*;
import java.util.List;
import java.util.Set;
import org.apache.shiro.authc.SaltedAuthenticationInfo;
import org.apache.shiro.util.ByteSource;
-import org.junit.Test;
+import org.junit.jupiter.api.Test;
import com.epimorphics.appbase.security.BaseUserStore.UserRecord;
diff --git a/src/test/resources/logback-test.xml b/src/test/resources/logback-test.xml
new file mode 100644
index 0000000..8909054
--- /dev/null
+++ b/src/test/resources/logback-test.xml
@@ -0,0 +1,14 @@
+
+
+
+
+
+ %5p [%t] %logger - %m%n
+
+
+
+
+
+
+
+