[java-oidc-common] branch main updated: Fix incorrect annotation on API, and fix NPE in logger.

Scott Cantor cantor.2 at osu.edu
Mon Jan 31 23:03:30 UTC 2022


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

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

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

The following commit(s) were added to refs/heads/main by this push:
     new 6e88939  Fix incorrect annotation on API, and fix NPE in logger.
6e88939 is described below

commit 6e889393109f729b29399bfc62c26fe0599c33b8
Author: Scott Cantor <cantor.2 at osu.edu>
AuthorDate: Mon Jan 31 18:03:24 2022 -0500

    Fix incorrect annotation on API, and fix NPE in logger.
---
 .../oidc/security/credential/BasicJWKCredential.java     | 16 ++++++++--------
 .../oidc/security/credential/JWKCredential.java          |  9 +++------
 .../oidc/security/impl/JWTSignatureValidationUtil.java   |  5 +++--
 3 files changed, 14 insertions(+), 16 deletions(-)

diff --git a/oidc-common-crypto-api/src/main/java/net/shibboleth/oidc/security/credential/BasicJWKCredential.java b/oidc-common-crypto-api/src/main/java/net/shibboleth/oidc/security/credential/BasicJWKCredential.java
index 0d29194..1669c32 100644
--- a/oidc-common-crypto-api/src/main/java/net/shibboleth/oidc/security/credential/BasicJWKCredential.java
+++ b/oidc-common-crypto-api/src/main/java/net/shibboleth/oidc/security/credential/BasicJWKCredential.java
@@ -17,6 +17,8 @@
 
 package net.shibboleth.oidc.security.credential;
 
+import javax.annotation.Nullable;
+
 import org.opensaml.security.credential.BasicCredential;
 import com.nimbusds.jose.Algorithm;
 
@@ -26,23 +28,22 @@ import com.nimbusds.jose.Algorithm;
 public class BasicJWKCredential extends BasicCredential implements JWKCredential {
 
     /** jwk algorithm. */
-    private Algorithm jwkAlgorithm;
+    @Nullable private Algorithm jwkAlgorithm;
 
     /** jwk kid. */
-    private String jwkKid;
+    @Nullable private String jwkKid;
 
     /**
      * Set the kid of jwk.
      * 
      * @param kid kid of jwk
      */
-    public void setKid(final String kid) {
+    public void setKid(@Nullable final String kid) {
         jwkKid = kid;
     }
 
     /** {@inheritDoc} */
-    @Override
-    public String getKid() {
+    @Nullable public String getKid() {
         return jwkKid;
     }
 
@@ -51,13 +52,12 @@ public class BasicJWKCredential extends BasicCredential implements JWKCredential
      * 
      * @param algorithm algorithm of jwk.
      */
-    public void setAlgorithm(final Algorithm algorithm) {
+    public void setAlgorithm(@Nullable final Algorithm algorithm) {
         jwkAlgorithm = algorithm;
     }
 
     /** {@inheritDoc} */
-    @Override
-    public Algorithm getAlgorithm() {
+    @Nullable public Algorithm getAlgorithm() {
         return jwkAlgorithm;
     }
 
diff --git a/oidc-common-crypto-api/src/main/java/net/shibboleth/oidc/security/credential/JWKCredential.java b/oidc-common-crypto-api/src/main/java/net/shibboleth/oidc/security/credential/JWKCredential.java
index f503078..043c49a 100644
--- a/oidc-common-crypto-api/src/main/java/net/shibboleth/oidc/security/credential/JWKCredential.java
+++ b/oidc-common-crypto-api/src/main/java/net/shibboleth/oidc/security/credential/JWKCredential.java
@@ -17,7 +17,6 @@
 
 package net.shibboleth.oidc.security.credential;
 
-import javax.annotation.Nonnull;
 import javax.annotation.Nullable;
 import org.opensaml.security.credential.Credential;
 import com.nimbusds.jose.Algorithm;
@@ -30,15 +29,13 @@ public interface JWKCredential extends Credential {
      * 
      * @return kid parameter.
      */
-    @Nullable
-    public String getKid();
+    @Nullable public String getKid();
 
     /**
      * Get algorithm of JWK.
      * 
      * @return algorithm of JWK.
      */
-    @Nonnull
-    public Algorithm getAlgorithm();
+    @Nullable public Algorithm getAlgorithm();
 
-}
+}
\ No newline at end of file
diff --git a/oidc-common-crypto-impl/src/main/java/net/shibboleth/oidc/security/impl/JWTSignatureValidationUtil.java b/oidc-common-crypto-impl/src/main/java/net/shibboleth/oidc/security/impl/JWTSignatureValidationUtil.java
index 70f809b..810fb6c 100644
--- a/oidc-common-crypto-impl/src/main/java/net/shibboleth/oidc/security/impl/JWTSignatureValidationUtil.java
+++ b/oidc-common-crypto-impl/src/main/java/net/shibboleth/oidc/security/impl/JWTSignatureValidationUtil.java
@@ -132,7 +132,8 @@ public final class JWTSignatureValidationUtil {
         final Iterator<? extends Credential> it = credentials.iterator();
         while (it.hasNext()) {
             final Credential credential = it.next();
-            if (credential instanceof JWKCredential && !algorithm.equals(((JWKCredential) credential).getAlgorithm())) {
+            if (credential instanceof JWKCredential && ((JWKCredential) credential).getAlgorithm() != null
+                    && !algorithm.equals(((JWKCredential) credential).getAlgorithm())) {
                 log.debug("Credential alg {} not matching jwt header alg {}",
                         ((JWKCredential) credential).getAlgorithm().getName(), algorithm.getName());
                 continue;
@@ -154,7 +155,7 @@ public final class JWTSignatureValidationUtil {
                     }
                     return null;
                 }
-                log.debug("Unable to validate given JWT with credential, picking next key");
+                log.debug("Unable to validate given JWT with credential");
             } catch (final JOSEException | IllegalStateException e) {
                 final String kid = credential instanceof JWKCredential ?
                         ((JWKCredential) credential).getKid() : null;

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


More information about the commits mailing list