[java-oidc-common] branch main updated: JCOMOIDC-28 - Support for metadata policies
Henri Mikkonen
henri.mikkonen at iki.fi
Wed Feb 23 06:30:47 UTC 2022
This is an automated email from the git hooks/post-receive script.
hjmikkon 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=280f4db90dda4b3959ebd5ee392e132b6da36bff
The following commit(s) were added to refs/heads/main by this push:
new 280f4db JCOMOIDC-28 - Support for metadata policies
280f4db is described below
commit 280f4db90dda4b3959ebd5ee392e132b6da36bff
Author: Henri Mikkonen <henri.mikkonen at iki.fi>
AuthorDate: Wed Feb 23 08:29:55 2022 +0200
JCOMOIDC-28 - Support for metadata policies
https://shibboleth.atlassian.net/browse/JCOMOIDC-28
Improved unit testing: policy resolver now handles non-specified
filenames.
---
.../policy/impl/OIDCMetadataPolicyResolverTest.java | 19 +++++++++++++++++--
.../oidc/metadata/impl/metadata-policy-invalid.json | 6 ++++++
2 files changed, 23 insertions(+), 2 deletions(-)
diff --git a/oidc-common-metadata-impl/src/test/java/net/shibboleth/oidc/metadata/policy/impl/OIDCMetadataPolicyResolverTest.java b/oidc-common-metadata-impl/src/test/java/net/shibboleth/oidc/metadata/policy/impl/OIDCMetadataPolicyResolverTest.java
index 5ae1209..6095433 100644
--- a/oidc-common-metadata-impl/src/test/java/net/shibboleth/oidc/metadata/policy/impl/OIDCMetadataPolicyResolverTest.java
+++ b/oidc-common-metadata-impl/src/test/java/net/shibboleth/oidc/metadata/policy/impl/OIDCMetadataPolicyResolverTest.java
@@ -19,7 +19,6 @@ package net.shibboleth.oidc.metadata.policy.impl;
import java.io.IOException;
import java.time.Duration;
-import java.time.Instant;
import java.util.Iterator;
import java.util.List;
import java.util.Map;
@@ -34,6 +33,7 @@ import net.shibboleth.oidc.metadata.cache.impl.BatchMetadataCacheBuilder;
import net.shibboleth.oidc.metadata.cache.impl.BatchMetadataCacheBuilderSpec;
import net.shibboleth.oidc.metadata.cache.impl.DefaultFileLoadingStrategy;
import net.shibboleth.oidc.metadata.cache.impl.DefaultJSONMapParsingStrategy;
+import net.shibboleth.oidc.metadata.cache.impl.DefaultSourceMetadataExpirationTimeStrategy;
import net.shibboleth.oidc.metadata.policy.MetadataPolicy;
import net.shibboleth.utilities.java.support.component.ComponentInitializationException;
import net.shibboleth.utilities.java.support.resolver.CriteriaSet;
@@ -62,9 +62,10 @@ public class OIDCMetadataPolicyResolverTest {
spec.setParsingStrategy(new DefaultJSONMapParsingStrategy<>(MetadataPolicy.class));
spec.setMinRefreshDelay(Duration.ofMinutes(5));
spec.setMaxRefreshDelay(Duration.ofMinutes(10));
- spec.setSourceMetadataExpiryStrategy(m -> Instant.now().plus(Duration.ofMinutes(5)));
+ spec.setSourceMetadataExpiryStrategy(new DefaultSourceMetadataExpirationTimeStrategy(Duration.ofMinutes(5)));
spec.setCriteriaToIdentifierStrategy(crit -> "id");
spec.setIdentifierExtractionStrategy(crit -> "id");
+ spec.setMetadataValidPredicate(new DefaultMetadataPolicyValidator());
spec.setMatchRequired(true);
@@ -73,6 +74,20 @@ public class OIDCMetadataPolicyResolverTest {
return builder.build(spec);
}
+ @Test
+ public void testNoPolicyFile() throws Exception {
+ initTest("");
+ final Iterator<Map<String, MetadataPolicy>> iter = resolver.resolve(new CriteriaSet()).iterator();
+ Assert.assertFalse(iter.hasNext());
+ }
+
+ @Test
+ public void testInvalidPolicy() throws Exception {
+ initTest("/net/shibboleth/oidc/metadata/impl/metadata-policy-invalid.json");
+ final Iterator<Map<String, MetadataPolicy>> iter = resolver.resolve(new CriteriaSet()).iterator();
+ Assert.assertFalse(iter.hasNext());
+ }
+
@Test
public void testFound() throws Exception {
initTest("/net/shibboleth/oidc/metadata/impl/metadata-policy1.json");
diff --git a/oidc-common-metadata-impl/src/test/resources/net/shibboleth/oidc/metadata/impl/metadata-policy-invalid.json b/oidc-common-metadata-impl/src/test/resources/net/shibboleth/oidc/metadata/impl/metadata-policy-invalid.json
new file mode 100644
index 0000000..f88f347
--- /dev/null
+++ b/oidc-common-metadata-impl/src/test/resources/net/shibboleth/oidc/metadata/impl/metadata-policy-invalid.json
@@ -0,0 +1,6 @@
+{
+ "grant_types": {
+ "one_of": ["authorization_code","implicit"],
+ "superset_of": ["invalid"]
+ }
+}
\ No newline at end of file
--
To stop receiving notification emails like this one, please contact
the administrator of this repository.
More information about the commits
mailing list