This is an automated email from the ASF dual-hosted git repository.
zehnder pushed a commit to branch dev
in repository https://gitbox.apache.org/repos/asf/streampipes.git
The following commit(s) were added to refs/heads/dev by this push:
new b3a37e6d4f feat: Make OAuth userinfo request optional (#4205)
b3a37e6d4f is described below
commit b3a37e6d4f296772b972cdb193c0eac2720a2e25
Author: Dominik Riemer <[email protected]>
AuthorDate: Fri Feb 27 08:34:29 2026 +0100
feat: Make OAuth userinfo request optional (#4205)
---
.../service/core/oauth2/CustomOidcUserService.java | 16 ++++++++++++++++
1 file changed, 16 insertions(+)
diff --git
a/streampipes-service-core/src/main/java/org/apache/streampipes/service/core/oauth2/CustomOidcUserService.java
b/streampipes-service-core/src/main/java/org/apache/streampipes/service/core/oauth2/CustomOidcUserService.java
index 881b333379..558fb870c3 100755
---
a/streampipes-service-core/src/main/java/org/apache/streampipes/service/core/oauth2/CustomOidcUserService.java
+++
b/streampipes-service-core/src/main/java/org/apache/streampipes/service/core/oauth2/CustomOidcUserService.java
@@ -19,6 +19,7 @@
package org.apache.streampipes.service.core.oauth2;
+import org.apache.streampipes.commons.environment.Environments;
import
org.apache.streampipes.rest.security.OAuth2AuthenticationProcessingException;
import org.springframework.security.core.AuthenticationException;
@@ -28,9 +29,24 @@ import
org.springframework.security.oauth2.core.OAuth2AuthenticationException;
import org.springframework.security.oauth2.core.oidc.user.OidcUser;
import org.springframework.stereotype.Service;
+import java.util.Objects;
+
@Service
public class CustomOidcUserService extends OidcUserService {
+ public CustomOidcUserService() {
+ var env = Environments.getEnvironment();
+ this.setRetrieveUserInfo(req -> {
+ var config = env.getOAuthConfigurations()
+ .stream()
+ .filter(c ->
c.getRegistrationId().equals(req.getClientRegistration().getRegistrationId()))
+ .findFirst();
+ return config
+ .filter(oAuthConfiguration ->
Objects.nonNull(oAuthConfiguration.getUserInfoUri()))
+ .isPresent();
+ });
+ }
+
@Override
public OidcUser loadUser(OidcUserRequest userRequest) throws
OAuth2AuthenticationException {
OidcUser oidcUser = super.loadUser(userRequest);