[java-oidc-common] 01/02: Revert "Adjust UserInfo profile config to add claims validator."

Scott Cantor cantor.2 at osu.edu
Wed Apr 20 15:40:46 UTC 2022


This is an automated email from the git hooks/post-receive script.

scantor pushed a commit to branch dev/JOIDC-7
in repository java-oidc-common.

View the commit online:
http://git.shibboleth.net/view/?p=java-oidc-common.git;a=commit;h=8609e76f41d55625433fae3eb9f86b0caf06eb3d

commit 8609e76f41d55625433fae3eb9f86b0caf06eb3d
Author: Scott Cantor <cantor.2 at osu.edu>
AuthorDate: Tue Apr 19 19:47:46 2022 -0400

    Revert "Adjust UserInfo profile config to add claims validator."
    
    This reverts commit 9ed2f0a83ad53edf5ec2178e3f4358befd9b4acb.
---
 .../profile/config/OIDCUserInfoConfiguration.java  | 36 ++++++++++++++++++++--
 1 file changed, 33 insertions(+), 3 deletions(-)

diff --git a/oidc-common-profile-api/src/main/java/net/shibboleth/oidc/profile/config/OIDCUserInfoConfiguration.java b/oidc-common-profile-api/src/main/java/net/shibboleth/oidc/profile/config/OIDCUserInfoConfiguration.java
index 284ab67..997be95 100644
--- a/oidc-common-profile-api/src/main/java/net/shibboleth/oidc/profile/config/OIDCUserInfoConfiguration.java
+++ b/oidc-common-profile-api/src/main/java/net/shibboleth/oidc/profile/config/OIDCUserInfoConfiguration.java
@@ -30,8 +30,9 @@ import org.opensaml.profile.context.ProfileRequestContext;
 
 import com.google.common.base.Predicates;
 
+import net.shibboleth.idp.profile.config.AbstractConditionalProfileConfiguration;
 import net.shibboleth.idp.profile.config.AttributeResolvingProfileConfiguration;
-import net.shibboleth.oidc.profile.oauth2.config.AbstractOAuth2TokenValidatingConfiguration;
+import net.shibboleth.idp.profile.config.OverriddenIssuerProfileConfiguration;
 import net.shibboleth.utilities.java.support.annotation.constraint.NonnullElements;
 import net.shibboleth.utilities.java.support.annotation.constraint.NotEmpty;
 import net.shibboleth.utilities.java.support.annotation.constraint.NotLive;
@@ -42,8 +43,9 @@ import net.shibboleth.utilities.java.support.primitive.StringSupport;
 /**
  * Profile configuration for the OpenID Connect core protocol userinfo endpoint.
  */
-public class OIDCUserInfoConfiguration extends AbstractOAuth2TokenValidatingConfiguration
-        implements AttributeResolvingProfileConfiguration {
+public class OIDCUserInfoConfiguration extends AbstractConditionalProfileConfiguration
+        implements OIDCProfileConfiguration, OverriddenIssuerProfileConfiguration, 
+                        AttributeResolvingProfileConfiguration {
 
     /** OIDC base protocol URI. */
     @Nonnull @NotEmpty public static final String PROTOCOL_URI = "http://openid.net/specs/openid-connect-core-1_0.html";
@@ -51,6 +53,9 @@ public class OIDCUserInfoConfiguration extends AbstractOAuth2TokenValidatingConf
     /** ID for this profile configuration. */
     @Nonnull @NotEmpty public static final String PROFILE_ID = "http://shibboleth.net/ns/profiles/oidc/userinfo";
 
+    /** Lookup function to override issuer value. */
+    @Nonnull private Function<ProfileRequestContext,String> issuerLookupStrategy;
+
     /** Whether attributes should be resolved in the course of the profile. */
     @Nonnull private Predicate<ProfileRequestContext> resolveAttributesPredicate;
 
@@ -75,11 +80,36 @@ public class OIDCUserInfoConfiguration extends AbstractOAuth2TokenValidatingConf
     public OIDCUserInfoConfiguration(@Nonnull @NotEmpty final String profileId) {
         super(profileId);
         
+        issuerLookupStrategy = FunctionSupport.constant(null);
         resolveAttributesPredicate = Predicates.alwaysTrue();
         encryptionOptionalPredicate = Predicates.alwaysTrue();
         deniedUserInfoAttributesLookupStrategy = FunctionSupport.constant(null);
     }
 
+    /** {@inheritDoc} */
+    @Override
+    @Nullable @NotEmpty public String getIssuer(@Nullable final ProfileRequestContext profileRequestContext) {
+        return issuerLookupStrategy.apply(profileRequestContext);
+    }
+    
+    /**
+     * Set overridden issuer value.
+     * 
+     * @param issuer issuer value
+     */
+    public void setIssuer(@Nullable @NotEmpty final String issuer) {
+        issuerLookupStrategy = FunctionSupport.constant(issuer);
+    }
+    
+    /**
+     * Sets lookup strategy for overridden issuer value.
+     * 
+     * @param strategy lookup strategy
+     */
+    public void setIssuerLookupStrategy(@Nonnull final Function<ProfileRequestContext,String> strategy) {
+        issuerLookupStrategy = Constraint.isNotNull(strategy, "Issuer lookup strategy cannot be null");
+    }
+
     /** {@inheritDoc} */
     @Override
     public boolean isResolveAttributes(@Nullable final ProfileRequestContext profileRequestContext) {

-- 
To stop receiving notification emails like this one, please contact
the administrator of this repository.


More information about the commits mailing list