You are viewing a plain text version of this content. The canonical link for it is here.
Posted to notifications@james.apache.org by bt...@apache.org on 2022/11/21 03:39:13 UTC

[james-project] 03/03: JAMES-3756 Allow the use of OIDC without virtualHosting

This is an automated email from the ASF dual-hosted git repository.

btellier pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/james-project.git

commit b6839cdc8691649093a1f74596de6299d54fb0c9
Author: Benoit Tellier <bt...@linagora.com>
AuthorDate: Wed Nov 9 09:54:54 2022 +0700

    JAMES-3756 Allow the use of OIDC without virtualHosting
---
 .../apache/james/imap/processor/AuthenticateProcessor.java  | 13 +------------
 .../apache/james/smtpserver/UsersRepositoryAuthHook.java    | 12 +-----------
 2 files changed, 2 insertions(+), 23 deletions(-)

diff --git a/protocols/imap/src/main/java/org/apache/james/imap/processor/AuthenticateProcessor.java b/protocols/imap/src/main/java/org/apache/james/imap/processor/AuthenticateProcessor.java
index f9f35c65ae..a281fbf6b6 100644
--- a/protocols/imap/src/main/java/org/apache/james/imap/processor/AuthenticateProcessor.java
+++ b/protocols/imap/src/main/java/org/apache/james/imap/processor/AuthenticateProcessor.java
@@ -26,10 +26,7 @@ import java.util.List;
 import java.util.Optional;
 import java.util.StringTokenizer;
 
-import javax.mail.internet.AddressException;
-
 import org.apache.commons.lang3.tuple.Pair;
-import org.apache.james.core.MailAddress;
 import org.apache.james.core.Username;
 import org.apache.james.imap.api.display.HumanReadableText;
 import org.apache.james.imap.api.message.Capability;
@@ -221,15 +218,7 @@ public class AuthenticateProcessor extends AbstractAuthProcessor<AuthenticateReq
                 oidcSASLConfiguration.getIntrospectionEndpoint()
                     .map(endpoint -> new IntrospectionEndpoint(endpoint, oidcSASLConfiguration.getIntrospectionEndpointAuthorization()))))
             .blockOptional()
-            .flatMap(this::extractUserFromClaim);
-    }
-
-    private Optional<Username> extractUserFromClaim(String claimValue) {
-        try {
-            return Optional.of(Username.fromMailAddress(new MailAddress(claimValue)));
-        } catch (AddressException e) {
-            return Optional.empty();
-        }
+            .map(Username::of);
     }
 
     private static String extractInitialClientResponse(byte[] data) {
diff --git a/server/protocols/protocols-smtp/src/main/java/org/apache/james/smtpserver/UsersRepositoryAuthHook.java b/server/protocols/protocols-smtp/src/main/java/org/apache/james/smtpserver/UsersRepositoryAuthHook.java
index 882e4bf18c..9a38a06e47 100644
--- a/server/protocols/protocols-smtp/src/main/java/org/apache/james/smtpserver/UsersRepositoryAuthHook.java
+++ b/server/protocols/protocols-smtp/src/main/java/org/apache/james/smtpserver/UsersRepositoryAuthHook.java
@@ -21,9 +21,7 @@ package org.apache.james.smtpserver;
 import java.util.Optional;
 
 import javax.inject.Inject;
-import javax.mail.internet.AddressException;
 
-import org.apache.james.core.MailAddress;
 import org.apache.james.core.Username;
 import org.apache.james.jwt.OidcJwtTokenVerifier;
 import org.apache.james.jwt.introspection.IntrospectionEndpoint;
@@ -124,14 +122,6 @@ public class UsersRepositoryAuthHook implements AuthHook {
                 oidcSASLConfiguration.getIntrospectionEndpoint()
                     .map(endpoint -> new IntrospectionEndpoint(endpoint, oidcSASLConfiguration.getIntrospectionEndpointAuthorization()))))
             .blockOptional()
-            .flatMap(this::extractUserFromClaim);
-    }
-
-    private Optional<Username> extractUserFromClaim(String claimValue) {
-        try {
-            return Optional.of(Username.fromMailAddress(new MailAddress(claimValue)));
-        } catch (AddressException e) {
-            return Optional.empty();
-        }
+            .map(Username::of);
     }
 }


---------------------------------------------------------------------
To unsubscribe, e-mail: notifications-unsubscribe@james.apache.org
For additional commands, e-mail: notifications-help@james.apache.org