You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@tomee.apache.org by jl...@apache.org on 2021/04/26 09:27:20 UTC
[tomee-jakarta] branch master updated: Improve fix of the
JaspicCallbackHandler
This is an automated email from the ASF dual-hosted git repository.
jlmonteiro pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/tomee-jakarta.git
The following commit(s) were added to refs/heads/master by this push:
new 190e66f Improve fix of the JaspicCallbackHandler
190e66f is described below
commit 190e66f079deb1228b499cace52c5f6bf5bf458e
Author: Jean-Louis Monteiro <jl...@tomitribe.com>
AuthorDate: Mon Apr 26 11:23:55 2021 +0200
Improve fix of the JaspicCallbackHandler
Signed-off-by: Jean-Louis Monteiro <jl...@tomitribe.com>
---
tomee/apache-tomee/pom.xml | 8 ++++++++
.../apache/catalina/authenticator/jaspic/CallbackHandlerImpl.java | 7 ++++++-
2 files changed, 14 insertions(+), 1 deletion(-)
diff --git a/tomee/apache-tomee/pom.xml b/tomee/apache-tomee/pom.xml
index 25d0c89..25a1965 100644
--- a/tomee/apache-tomee/pom.xml
+++ b/tomee/apache-tomee/pom.xml
@@ -140,6 +140,14 @@
<version>${tomee.version}</version>
<type>jar</type>
</dependency>
+
+ <!-- needed to compile in intellij for tomcat patches -->
+ <dependency>
+ <groupId>org.apache.tomcat</groupId>
+ <artifactId>tomcat-catalina</artifactId>
+ <version>${tomcat.version}</version>
+ <scope>provided</scope>
+ </dependency>
</dependencies>
<build>
diff --git a/tomee/apache-tomee/src/patch/java/org/apache/catalina/authenticator/jaspic/CallbackHandlerImpl.java b/tomee/apache-tomee/src/patch/java/org/apache/catalina/authenticator/jaspic/CallbackHandlerImpl.java
index 294a783..55c0ec8 100644
--- a/tomee/apache-tomee/src/patch/java/org/apache/catalina/authenticator/jaspic/CallbackHandlerImpl.java
+++ b/tomee/apache-tomee/src/patch/java/org/apache/catalina/authenticator/jaspic/CallbackHandlerImpl.java
@@ -119,6 +119,11 @@ public class CallbackHandlerImpl implements CallbackHandler, Contained {
}
subject.getPrivateCredentials().add(new GenericPrincipal(mergeName, null, mergeRoles, mergePrincipal));
+
+ // may come from CallerPrincipalCallback and we need to being to get it from the Subject
+ if (principal != null) {
+ subject.getPrincipals().add(principal);
+ }
}
}
}
@@ -141,7 +146,7 @@ public class CallbackHandlerImpl implements CallbackHandler, Contained {
roles = Arrays.asList(groups);
}
- return new GenericPrincipal(name, null, roles, principal);
+ return new GenericPrincipal(name, roles, principal);
}
// Contained interface methods