[java-idp-oidc] branch main updated: Deprecate duplicate interface and rebase chaining claims validator.

Scott Cantor cantor.2 at osu.edu
Thu Dec 30 21:24:46 UTC 2021


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

scantor pushed a commit to branch main
in repository java-idp-oidc.

View the commit online:
http://git.shibboleth.net/view/?p=java-idp-oidc.git;a=commit;h=572c038c04e18d16d1021e2b854cfa114c1d40e8

The following commit(s) were added to refs/heads/main by this push:
     new 572c038c Deprecate duplicate interface and rebase chaining claims validator.
572c038c is described below

commit 572c038c04e18d16d1021e2b854cfa114c1d40e8
Author: Scott Cantor <cantor.2 at osu.edu>
AuthorDate: Thu Dec 30 16:24:43 2021 -0500

    Deprecate duplicate interface and rebase chaining claims validator.
---
 .../oidc/op/authn/impl/JWTCredentialValidator.java | 10 ++++----
 .../op/profile/impl/ValidateRequestObject.java     | 30 +++++++++++-----------
 .../authn/OAuth2Client/OAuth2Client-beans.xml      |  2 +-
 .../idp/flows/oidc/authorize/authorize-beans.xml   |  8 +++---
 .../op/authn/impl/JWTCredentialValidatorTest.java  | 10 ++++----
 .../op/profile/impl/ValidateRequestObjectTest.java | 22 ++++++++--------
 6 files changed, 41 insertions(+), 41 deletions(-)

diff --git a/idp-oidc-extension-impl/src/main/java/net/shibboleth/idp/plugin/oidc/op/authn/impl/JWTCredentialValidator.java b/idp-oidc-extension-impl/src/main/java/net/shibboleth/idp/plugin/oidc/op/authn/impl/JWTCredentialValidator.java
index 47fe1e68..9bb5d6ee 100644
--- a/idp-oidc-extension-impl/src/main/java/net/shibboleth/idp/plugin/oidc/op/authn/impl/JWTCredentialValidator.java
+++ b/idp-oidc-extension-impl/src/main/java/net/shibboleth/idp/plugin/oidc/op/authn/impl/JWTCredentialValidator.java
@@ -31,7 +31,7 @@ import net.shibboleth.idp.authn.context.AuthenticationContext;
 import net.shibboleth.idp.authn.principal.UsernamePrincipal;
 import net.shibboleth.idp.plugin.oidc.op.authn.context.OAuth2ClientAuthenticationContext;
 import net.shibboleth.idp.profile.context.RelyingPartyContext;
-import net.shibboleth.oidc.jwt.claims.JWTClaimsValidation;
+import net.shibboleth.oidc.jwt.claims.ClaimsValidator;
 import net.shibboleth.oidc.jwt.claims.JWTValidationException;
 import net.shibboleth.oidc.security.impl.JWTSignatureValidationUtil;
 import net.shibboleth.utilities.java.support.annotation.constraint.NonnullAfterInit;
@@ -74,7 +74,7 @@ public class JWTCredentialValidator extends AbstractCredentialValidator {
     @Nonnull private Function<ProfileRequestContext,SecurityParametersContext> securityParametersLookupStrategy;
 
     /** The claims validation to be applied for validating the incoming JWTs. */
-    @NonnullAfterInit private JWTClaimsValidation claimsValidation;
+    @NonnullAfterInit private ClaimsValidator claimsValidation;
     
     /** Whether to save the JWT in the Java Subject's public credentials. */
     private boolean saveTokenToCredentialSet;
@@ -118,12 +118,12 @@ public class JWTCredentialValidator extends AbstractCredentialValidator {
     /**
      * Set the claims validator used for validating the incoming JWTs.
      * 
-     * @param validation claims validator
+     * @param validator claims validator
      */
-    public void setClaimsValidation(@Nonnull final JWTClaimsValidation validation) {
+    public void setClaimsValidation(@Nonnull final ClaimsValidator validator) {
         ComponentSupport.ifInitializedThrowUnmodifiabledComponentException(this);
         
-        claimsValidation = Constraint.isNotNull(validation, "JWTClaimsValidation cannot be null");
+        claimsValidation = Constraint.isNotNull(validator, "JWTClaimsValidation cannot be null");
     }
     
     /**
diff --git a/idp-oidc-extension-impl/src/main/java/net/shibboleth/idp/plugin/oidc/op/profile/impl/ValidateRequestObject.java b/idp-oidc-extension-impl/src/main/java/net/shibboleth/idp/plugin/oidc/op/profile/impl/ValidateRequestObject.java
index 853e218c..fe2fde82 100644
--- a/idp-oidc-extension-impl/src/main/java/net/shibboleth/idp/plugin/oidc/op/profile/impl/ValidateRequestObject.java
+++ b/idp-oidc-extension-impl/src/main/java/net/shibboleth/idp/plugin/oidc/op/profile/impl/ValidateRequestObject.java
@@ -38,7 +38,7 @@ import com.nimbusds.oauth2.sdk.ResponseType;
 import com.nimbusds.oauth2.sdk.id.ClientID;
 
 import net.shibboleth.idp.plugin.oidc.op.profile.OidcEventIds;
-import net.shibboleth.oidc.jwt.claims.JWTClaimsValidation;
+import net.shibboleth.oidc.jwt.claims.ClaimsValidator;
 import net.shibboleth.oidc.jwt.claims.JWTValidationException;
 import net.shibboleth.oidc.security.impl.JWTSignatureValidationUtil;
 import net.shibboleth.oidc.security.impl.OIDCSignatureValidationParameters;
@@ -67,10 +67,10 @@ public class ValidateRequestObject extends AbstractOIDCAuthenticationResponseAct
     @Nullable private JWT requestObject;
 
     /** The claims validator to be applied for validating the signed request object. */
-    @NonnullAfterInit private JWTClaimsValidation signedClaimsValidation;
+    @NonnullAfterInit private ClaimsValidator signedClaimsValidator;
 
     /** The claims validator to be applied for validating the plain/unsigned request object. */
-    @NonnullAfterInit private JWTClaimsValidation plainClaimsValidation;
+    @NonnullAfterInit private ClaimsValidator plainClaimsValidator;
 
     /** Constructor. */
     public ValidateRequestObject() {
@@ -93,21 +93,21 @@ public class ValidateRequestObject extends AbstractOIDCAuthenticationResponseAct
     /**
      * Set the claims validator used for validating the signed request object.
      * 
-     * @param validators What to set.
+     * @param validator What to set
      */
-    public void setSignedClaimsValidation(@Nonnull final JWTClaimsValidation validation) {
+    public void setSignedClaimsValidator(@Nonnull final ClaimsValidator validator) {
         ComponentSupport.ifInitializedThrowUnmodifiabledComponentException(this);
-        signedClaimsValidation = Constraint.isNotNull(validation, "Signed claims validator cannot be null");
+        signedClaimsValidator = Constraint.isNotNull(validator, "Signed claims validator cannot be null");
     }
 
     /**
      * Set the claims validator used for validating the plain/unsigned request object.
      * 
-     * @param validators What to set.
+     * @param validator What to set
      */
-    public void setPlainClaimsValidation(@Nonnull final JWTClaimsValidation validation) {
+    public void setPlainClaimsValidator(@Nonnull final ClaimsValidator validator) {
         ComponentSupport.ifInitializedThrowUnmodifiabledComponentException(this);
-        plainClaimsValidation = Constraint.isNotNull(validation, "Plain claims validator cannot be null");
+        plainClaimsValidator = Constraint.isNotNull(validator, "Plain claims validator cannot be null");
     }
 
     /** {@inheritDoc} */
@@ -115,12 +115,12 @@ public class ValidateRequestObject extends AbstractOIDCAuthenticationResponseAct
     protected void doInitialize() throws ComponentInitializationException {
         super.doInitialize();
 
-        if (signedClaimsValidation == null) {
-            throw new ComponentInitializationException("ClaimsValidation for signed requests cannot be null");
+        if (signedClaimsValidator == null) {
+            throw new ComponentInitializationException("ClaimsValidator for signed requests cannot be null");
         }
 
-        if (plainClaimsValidation == null) {
-            throw new ComponentInitializationException("ClaimsValidation for plain requests cannot be null");
+        if (plainClaimsValidator == null) {
+            throw new ComponentInitializationException("ClaimsValidator for plain requests cannot be null");
         }
 }
 
@@ -193,9 +193,9 @@ public class ValidateRequestObject extends AbstractOIDCAuthenticationResponseAct
 
         try {
             if (requestObject instanceof SignedJWT) {
-                signedClaimsValidation.validate(claimsSet, profileRequestContext);
+                signedClaimsValidator.validate(claimsSet, profileRequestContext);
             } else {
-                plainClaimsValidation.validate(claimsSet, profileRequestContext);
+                plainClaimsValidator.validate(claimsSet, profileRequestContext);
             }
         } catch (final JWTValidationException e) {
             log.warn("{} JWT validation failed: {}", getLogPrefix(), e.getMessage());
diff --git a/idp-oidc-extension-impl/src/main/resources/META-INF/net/shibboleth/idp/flows/authn/OAuth2Client/OAuth2Client-beans.xml b/idp-oidc-extension-impl/src/main/resources/META-INF/net/shibboleth/idp/flows/authn/OAuth2Client/OAuth2Client-beans.xml
index b046a4a8..a5f9edd3 100644
--- a/idp-oidc-extension-impl/src/main/resources/META-INF/net/shibboleth/idp/flows/authn/OAuth2Client/OAuth2Client-beans.xml
+++ b/idp-oidc-extension-impl/src/main/resources/META-INF/net/shibboleth/idp/flows/authn/OAuth2Client/OAuth2Client-beans.xml
@@ -67,7 +67,7 @@
     <!-- JWT validation wiring. -->
 
     <bean id="DefaultJWTClaimsValidation"
-        class="net.shibboleth.oidc.security.jwt.claims.impl.ChainingJWTClaimsValidation"
+        class="net.shibboleth.oidc.security.jwt.claims.impl.ChainingJWTClaimsValidator"
         p:claimValidators-ref="ClaimsValidators" />
     
     <bean id="ClientIDFromOIDCMetadataContextLookupFunction"
diff --git a/idp-oidc-extension-impl/src/main/resources/META-INF/net/shibboleth/idp/flows/oidc/authorize/authorize-beans.xml b/idp-oidc-extension-impl/src/main/resources/META-INF/net/shibboleth/idp/flows/oidc/authorize/authorize-beans.xml
index 8738133e..91abf7b3 100644
--- a/idp-oidc-extension-impl/src/main/resources/META-INF/net/shibboleth/idp/flows/oidc/authorize/authorize-beans.xml
+++ b/idp-oidc-extension-impl/src/main/resources/META-INF/net/shibboleth/idp/flows/oidc/authorize/authorize-beans.xml
@@ -103,8 +103,8 @@
 
     <bean id="ValidateRequestObject" class="net.shibboleth.idp.plugin.oidc.op.profile.impl.ValidateRequestObject"
         scope="prototype"
-        p:plainClaimsValidation-ref="shibboleth.oidc.PlainRequestObjectClaimsValidation"
-        p:signedClaimsValidation-ref="shibboleth.oidc.SignedRequestObjectClaimsValidation">
+        p:plainClaimsValidator-ref="shibboleth.oidc.PlainRequestObjectClaimsValidation"
+        p:signedClaimsValidator-ref="shibboleth.oidc.SignedRequestObjectClaimsValidation">
         <property name="securityParametersLookupStrategy">
             <bean parent="shibboleth.Functions.Compose"
                 c:g-ref="shibboleth.ChildLookup.SecurityParameters"
@@ -113,11 +113,11 @@
     </bean>
 
     <bean id="shibboleth.oidc.PlainRequestObjectClaimsValidation"
-        class="net.shibboleth.oidc.security.jwt.claims.impl.ChainingJWTClaimsValidation"
+        class="net.shibboleth.oidc.security.jwt.claims.impl.ChainingJWTClaimsValidator"
         p:claimValidators-ref="PlainClaimsValidators" />
 
     <bean id="shibboleth.oidc.SignedRequestObjectClaimsValidation"
-        class="net.shibboleth.oidc.security.jwt.claims.impl.ChainingJWTClaimsValidation"
+        class="net.shibboleth.oidc.security.jwt.claims.impl.ChainingJWTClaimsValidator"
         p:claimValidators-ref="SignedClaimsValidators" />
 
     <bean id="ExpiryClaimsValidator"
diff --git a/idp-oidc-extension-impl/src/test/java/net/shibboleth/idp/plugin/oidc/op/authn/impl/JWTCredentialValidatorTest.java b/idp-oidc-extension-impl/src/test/java/net/shibboleth/idp/plugin/oidc/op/authn/impl/JWTCredentialValidatorTest.java
index 541617e5..ce8c780f 100644
--- a/idp-oidc-extension-impl/src/test/java/net/shibboleth/idp/plugin/oidc/op/authn/impl/JWTCredentialValidatorTest.java
+++ b/idp-oidc-extension-impl/src/test/java/net/shibboleth/idp/plugin/oidc/op/authn/impl/JWTCredentialValidatorTest.java
@@ -72,11 +72,11 @@ import net.shibboleth.idp.plugin.oidc.op.authn.context.OAuth2ClientAuthenticatio
 import net.shibboleth.idp.plugin.oidc.op.messaging.context.OIDCMetadataContext;
 import net.shibboleth.idp.plugin.oidc.op.profile.logic.ClientIDFromOIDCMetadataContextLookupFunction;
 import net.shibboleth.idp.profile.testing.ActionTestingSupport;
-import net.shibboleth.oidc.jwt.claims.JWTClaimsValidation;
+import net.shibboleth.oidc.jwt.claims.ClaimsValidator;
 import net.shibboleth.oidc.security.credential.BasicJWKCredential;
 import net.shibboleth.oidc.security.impl.OIDCSignatureValidationParameters;
 import net.shibboleth.oidc.security.jwt.claims.impl.AudienceClaimsValidator;
-import net.shibboleth.oidc.security.jwt.claims.impl.ChainingJWTClaimsValidation;
+import net.shibboleth.oidc.security.jwt.claims.impl.ChainingJWTClaimsValidator;
 import net.shibboleth.oidc.security.jwt.claims.impl.ExactMatchClaimsValidator;
 import net.shibboleth.oidc.security.jwt.claims.impl.ExpiryClaimsValidator;
 import net.shibboleth.oidc.security.jwt.claims.impl.IssuedAtClaimsValidator;
@@ -130,7 +130,7 @@ public class JWTCredentialValidatorTest extends BaseAuthenticationContextTest {
         validator.setId("test");
         validator.setSecurityParametersLookupStrategy(new ChildContextLookup<>(SecurityParametersContext.class));
         validator.setClaimsValidation(
-                constructClaimsValidation((HttpServletRequest) src.getExternalContext().getNativeRequest(), replayCache));
+                constructClaimsValidator((HttpServletRequest) src.getExternalContext().getNativeRequest(), replayCache));
         validator.initialize();
         
         action = new ValidateCredentials();
@@ -205,9 +205,9 @@ public class JWTCredentialValidatorTest extends BaseAuthenticationContextTest {
         completeSetup(new TokenRequest(null, clientAuth, authzGrant), method, sameSecret);
     }
     
-    protected JWTClaimsValidation constructClaimsValidation(final HttpServletRequest httpRequest,
+    protected ClaimsValidator constructClaimsValidator(final HttpServletRequest httpRequest,
             final ReplayCache replayCache) {
-        final ChainingJWTClaimsValidation claimsValidation = new ChainingJWTClaimsValidation();
+        final ChainingJWTClaimsValidator claimsValidation = new ChainingJWTClaimsValidator();
         final ExpiryClaimsValidator expValidator = new ExpiryClaimsValidator();
         final IssuedAtClaimsValidator iatValidator = new IssuedAtClaimsValidator();
         iatValidator.setRequiredRule(false);
diff --git a/idp-oidc-extension-impl/src/test/java/net/shibboleth/idp/plugin/oidc/op/profile/impl/ValidateRequestObjectTest.java b/idp-oidc-extension-impl/src/test/java/net/shibboleth/idp/plugin/oidc/op/profile/impl/ValidateRequestObjectTest.java
index f5ad9190..8e362523 100644
--- a/idp-oidc-extension-impl/src/test/java/net/shibboleth/idp/plugin/oidc/op/profile/impl/ValidateRequestObjectTest.java
+++ b/idp-oidc-extension-impl/src/test/java/net/shibboleth/idp/plugin/oidc/op/profile/impl/ValidateRequestObjectTest.java
@@ -26,7 +26,7 @@ import net.shibboleth.idp.profile.testing.RequestContextBuilder;
 import net.shibboleth.oidc.security.credential.BasicJWKCredential;
 import net.shibboleth.oidc.security.impl.OIDCSignatureValidationParameters;
 import net.shibboleth.oidc.security.jwt.claims.impl.AudienceClaimsValidator;
-import net.shibboleth.oidc.security.jwt.claims.impl.ChainingJWTClaimsValidation;
+import net.shibboleth.oidc.security.jwt.claims.impl.ChainingJWTClaimsValidator;
 import net.shibboleth.oidc.security.jwt.claims.impl.ExactMatchClaimsValidator;
 import net.shibboleth.oidc.security.jwt.claims.impl.ExpiryClaimsValidator;
 import net.shibboleth.oidc.security.jwt.claims.impl.NotBeforeClaimsValidator;
@@ -118,13 +118,13 @@ public class ValidateRequestObjectTest {
         params.setSignatureAlgorithm("RS256");
         secCtx.setSignatureSigningParameters(params);
         action = new ValidateRequestObject();
-        action.setPlainClaimsValidation(buildPlainClaimsValidation());
-        action.setSignedClaimsValidation(buildSignedClaimsValidation("000123"));
+        action.setPlainClaimsValidator(buildPlainClaimsValidation());
+        action.setSignedClaimsValidator(buildSignedClaimsValidation("000123"));
         action.initialize();
     }
     
-    protected ChainingJWTClaimsValidation buildSignedClaimsValidation(final String clientId) {
-        ChainingJWTClaimsValidation claimsValidation = new ChainingJWTClaimsValidation();
+    protected ChainingJWTClaimsValidator buildSignedClaimsValidation(final String clientId) {
+        ChainingJWTClaimsValidator claimsValidation = new ChainingJWTClaimsValidator();
         ExactMatchClaimsValidator issValidator = new ExactMatchClaimsValidator();
         issValidator.setClaimName("iss");
         issValidator.setValueToMatchLookupStrategy((prc, claimsSet) -> clientId);
@@ -138,8 +138,8 @@ public class ValidateRequestObjectTest {
         return claimsValidation;
     }
 
-    protected ChainingJWTClaimsValidation buildPlainClaimsValidation() {
-        ChainingJWTClaimsValidation claimsValidation = new ChainingJWTClaimsValidation();
+    protected ChainingJWTClaimsValidator buildPlainClaimsValidation() {
+        ChainingJWTClaimsValidator claimsValidation = new ChainingJWTClaimsValidator();
         claimsValidation.setClaimValidators(List.of(
                 new ExpiryClaimsValidator(),
                 new NotBeforeClaimsValidator()));
@@ -155,22 +155,22 @@ public class ValidateRequestObjectTest {
     @Test(expectedExceptions = ComponentInitializationException.class)
     public void testInitFailsNoPlainValidator() throws ComponentInitializationException {
         action = new ValidateRequestObject();
-        action.setSignedClaimsValidation(new ChainingJWTClaimsValidation());
+        action.setSignedClaimsValidator(new ChainingJWTClaimsValidator());
         action.initialize();
     }
 
     @Test(expectedExceptions = ComponentInitializationException.class)
     public void testInitFailsNoSignedValidators() throws ComponentInitializationException {
         action = new ValidateRequestObject();
-        action.setPlainClaimsValidation(new ChainingJWTClaimsValidation());
+        action.setPlainClaimsValidator(new ChainingJWTClaimsValidator());
         action.initialize();
     }
 
     @Test
     public void testInitSuccess() throws ComponentInitializationException {
         action = new ValidateRequestObject();
-        action.setPlainClaimsValidation(new ChainingJWTClaimsValidation());
-        action.setSignedClaimsValidation(new ChainingJWTClaimsValidation());
+        action.setPlainClaimsValidator(new ChainingJWTClaimsValidator());
+        action.setSignedClaimsValidator(new ChainingJWTClaimsValidator());
         action.initialize();
     }
 

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


More information about the commits mailing list