[java-shib-profile] branch main updated: IDP-2126 - Admin flow to report on config settings
Scott Cantor
cantor.2 at osu.edu
Mon Jun 12 16:18:44 UTC 2023
This is an automated email from the git hooks/post-receive script.
scantor pushed a commit to branch main
in repository java-shib-profile.
View the commit online:
http://git.shibboleth.net/view/?p=java-shib-profile.git;a=commit;h=bd61e4b6782f7e5995c9993418beea85653fe27c
The following commit(s) were added to refs/heads/main by this push:
new bd61e4b IDP-2126 - Admin flow to report on config settings
bd61e4b is described below
commit bd61e4b6782f7e5995c9993418beea85653fe27c
Author: Scott Cantor <cantor.2 at osu.edu>
AuthorDate: Mon Jun 12 12:18:41 2023 -0400
IDP-2126 - Admin flow to report on config settings
https://shibboleth.atlassian.net/browse/IDP-2126
Annotate "exposable" config settings for admin flow.
---
shib-profile-api/pom.xml | 4 ++++
.../config/AttributeResolvingProfileConfiguration.java | 3 +++
.../profile/config/ConditionalProfileConfiguration.java | 3 +++
.../config/OverriddenIssuerProfileConfiguration.java | 2 ++
.../shibboleth/profile/config/ProfileConfiguration.java | 3 +++
.../profile/relyingparty/RelyingPartyConfiguration.java | 4 ++++
.../profile/config/BasicSAMLArtifactConfiguration.java | 17 ++++++++++++++++-
.../config/SAMLArtifactAwareProfileConfiguration.java | 3 +++
.../SAMLArtifactConsumerProfileConfiguration.java | 4 ++++
.../SAMLAssertionConsumingProfileConfiguration.java | 4 ++++
.../SAMLAssertionProducingProfileConfiguration.java | 6 +++++-
.../saml/profile/config/SAMLProfileConfiguration.java | 4 ++++
.../config/ArtifactResolutionProfileConfiguration.java | 2 ++
.../config/ArtifactResolutionProfileConfiguration.java | 4 ++++
.../profile/config/BrowserSSOProfileConfiguration.java | 9 +++++++++
.../SAML2AssertionProducingProfileConfiguration.java | 3 +++
.../saml2/profile/config/SAML2ProfileConfiguration.java | 4 ++++
.../config/SingleLogoutProfileConfiguration.java | 2 ++
18 files changed, 79 insertions(+), 2 deletions(-)
diff --git a/shib-profile-api/pom.xml b/shib-profile-api/pom.xml
index 8e6dcb3..302e71f 100644
--- a/shib-profile-api/pom.xml
+++ b/shib-profile-api/pom.xml
@@ -64,6 +64,10 @@
<groupId>${shib-shared.groupId}</groupId>
<artifactId>shib-spring</artifactId>
</dependency>
+ <dependency>
+ <groupId>${shib-shared.groupId}</groupId>
+ <artifactId>shib-support</artifactId>
+ </dependency>
<dependency>
<groupId>${spring.groupId}</groupId>
diff --git a/shib-profile-api/src/main/java/net/shibboleth/profile/config/AttributeResolvingProfileConfiguration.java b/shib-profile-api/src/main/java/net/shibboleth/profile/config/AttributeResolvingProfileConfiguration.java
index 6270225..362c435 100644
--- a/shib-profile-api/src/main/java/net/shibboleth/profile/config/AttributeResolvingProfileConfiguration.java
+++ b/shib-profile-api/src/main/java/net/shibboleth/profile/config/AttributeResolvingProfileConfiguration.java
@@ -21,6 +21,8 @@ import javax.annotation.Nullable;
import org.opensaml.profile.context.ProfileRequestContext;
+import net.shibboleth.shared.annotation.ConfigurationSetting;
+
/**
* {@link ProfileConfiguration} with optional resolution of attributes.
*
@@ -35,6 +37,7 @@ public interface AttributeResolvingProfileConfiguration extends ProfileConfigura
*
* @return true iff resolution should be done
*/
+ @ConfigurationSetting(name="resolveAttributes")
boolean isResolveAttributes(@Nullable final ProfileRequestContext profileRequestContext);
}
\ No newline at end of file
diff --git a/shib-profile-api/src/main/java/net/shibboleth/profile/config/ConditionalProfileConfiguration.java b/shib-profile-api/src/main/java/net/shibboleth/profile/config/ConditionalProfileConfiguration.java
index 3849dbb..73f9d7b 100644
--- a/shib-profile-api/src/main/java/net/shibboleth/profile/config/ConditionalProfileConfiguration.java
+++ b/shib-profile-api/src/main/java/net/shibboleth/profile/config/ConditionalProfileConfiguration.java
@@ -23,6 +23,8 @@ import javax.annotation.Nonnull;
import org.opensaml.profile.context.ProfileRequestContext;
+import net.shibboleth.shared.annotation.ConfigurationSetting;
+
/**
* A {@link ProfileConfiguration} supporting an activation condition.
*
@@ -35,6 +37,7 @@ public interface ConditionalProfileConfiguration extends ProfileConfiguration {
*
* @return condition controlling enablement of this profile
*/
+ @ConfigurationSetting(name="activationCondition")
@Nonnull Predicate<ProfileRequestContext> getActivationCondition();
}
\ No newline at end of file
diff --git a/shib-profile-api/src/main/java/net/shibboleth/profile/config/OverriddenIssuerProfileConfiguration.java b/shib-profile-api/src/main/java/net/shibboleth/profile/config/OverriddenIssuerProfileConfiguration.java
index dac6bdb..4bdd9b1 100644
--- a/shib-profile-api/src/main/java/net/shibboleth/profile/config/OverriddenIssuerProfileConfiguration.java
+++ b/shib-profile-api/src/main/java/net/shibboleth/profile/config/OverriddenIssuerProfileConfiguration.java
@@ -21,6 +21,7 @@ import javax.annotation.Nullable;
import org.opensaml.profile.context.ProfileRequestContext;
+import net.shibboleth.shared.annotation.ConfigurationSetting;
import net.shibboleth.shared.annotation.constraint.NotEmpty;
/**
@@ -37,6 +38,7 @@ public interface OverriddenIssuerProfileConfiguration extends ProfileConfigurati
*
* @return issuer or null to use usual default
*/
+ @ConfigurationSetting(name="issuer")
@Nullable @NotEmpty String getIssuer(@Nullable final ProfileRequestContext profileRequestContext);
}
\ No newline at end of file
diff --git a/shib-profile-api/src/main/java/net/shibboleth/profile/config/ProfileConfiguration.java b/shib-profile-api/src/main/java/net/shibboleth/profile/config/ProfileConfiguration.java
index c2b8663..a32c111 100644
--- a/shib-profile-api/src/main/java/net/shibboleth/profile/config/ProfileConfiguration.java
+++ b/shib-profile-api/src/main/java/net/shibboleth/profile/config/ProfileConfiguration.java
@@ -22,6 +22,7 @@ import javax.annotation.Nullable;
import org.opensaml.profile.context.ProfileRequestContext;
import org.opensaml.security.config.SecurityConfiguration;
+import net.shibboleth.shared.annotation.ConfigurationSetting;
import net.shibboleth.shared.component.IdentifiedComponent;
/** Represents the configuration of a particular communication profile. */
@@ -34,6 +35,7 @@ public interface ProfileConfiguration extends IdentifiedComponent {
*
* @return security configuration to use with this profile
*/
+ @ConfigurationSetting(name="securityConfiguration")
@Nullable SecurityConfiguration getSecurityConfiguration(
@Nullable final ProfileRequestContext profileRequestContext);
@@ -48,6 +50,7 @@ public interface ProfileConfiguration extends IdentifiedComponent {
*
* @since 5.0.0
*/
+ @ConfigurationSetting(name="disallowedFeatures")
int getDisallowedFeatures(@Nullable final ProfileRequestContext profileRequestContext);
/**
diff --git a/shib-profile-api/src/main/java/net/shibboleth/profile/relyingparty/RelyingPartyConfiguration.java b/shib-profile-api/src/main/java/net/shibboleth/profile/relyingparty/RelyingPartyConfiguration.java
index 981478f..a778448 100644
--- a/shib-profile-api/src/main/java/net/shibboleth/profile/relyingparty/RelyingPartyConfiguration.java
+++ b/shib-profile-api/src/main/java/net/shibboleth/profile/relyingparty/RelyingPartyConfiguration.java
@@ -27,6 +27,7 @@ import org.opensaml.profile.context.ProfileRequestContext;
import org.opensaml.security.config.SecurityConfiguration;
import net.shibboleth.profile.config.ProfileConfiguration;
+import net.shibboleth.shared.annotation.ConfigurationSetting;
import net.shibboleth.shared.annotation.constraint.NotEmpty;
import net.shibboleth.shared.annotation.constraint.NotLive;
import net.shibboleth.shared.annotation.constraint.Unmodifiable;
@@ -55,6 +56,7 @@ public interface RelyingPartyConfiguration extends InitializableComponent, Ident
*
* @since 5.0.0
*/
+ @ConfigurationSetting(name="issuer")
@Nullable @NotEmpty String getIssuer(@Nullable final ProfileRequestContext profileRequestContext);
/**
@@ -74,6 +76,7 @@ public interface RelyingPartyConfiguration extends InitializableComponent, Ident
*
* @return true iff it is acceptable to expose detailed error information
*/
+ @ConfigurationSetting(name="detailedErrors")
boolean isDetailedErrors(@Nullable final ProfileRequestContext profileRequestContext);
/**
@@ -85,6 +88,7 @@ public interface RelyingPartyConfiguration extends InitializableComponent, Ident
*
* @since 5.0.0
*/
+ @ConfigurationSetting(name="securityConfiguration")
@Nullable SecurityConfiguration getSecurityConfiguration(
@Nullable final ProfileRequestContext profileRequestContext);
diff --git a/shib-saml-profile-api/src/main/java/net/shibboleth/saml/profile/config/BasicSAMLArtifactConfiguration.java b/shib-saml-profile-api/src/main/java/net/shibboleth/saml/profile/config/BasicSAMLArtifactConfiguration.java
index 89ba53f..03309c0 100644
--- a/shib-saml-profile-api/src/main/java/net/shibboleth/saml/profile/config/BasicSAMLArtifactConfiguration.java
+++ b/shib-saml-profile-api/src/main/java/net/shibboleth/saml/profile/config/BasicSAMLArtifactConfiguration.java
@@ -19,8 +19,10 @@ package net.shibboleth.saml.profile.config;
import java.nio.ByteBuffer;
+import javax.annotation.Nonnull;
import javax.annotation.Nullable;
+import net.shibboleth.shared.component.IdentifiableComponent;
import net.shibboleth.shared.logic.ConstraintViolationException;
import net.shibboleth.shared.primitive.StringSupport;
@@ -30,7 +32,10 @@ import net.shibboleth.shared.primitive.StringSupport;
* <p>While sufficient for known SAML 1 and 2 artifact types, the class
* may be extended if necessary to carry type-specific additions.</p>
*/
-public class BasicSAMLArtifactConfiguration implements SAMLArtifactConfiguration {
+public class BasicSAMLArtifactConfiguration implements SAMLArtifactConfiguration, IdentifiableComponent {
+
+ /** Identifier. */
+ @Nullable private String id;
/** The artifact type code. */
@Nullable private byte[] artifactType;
@@ -41,6 +46,16 @@ public class BasicSAMLArtifactConfiguration implements SAMLArtifactConfiguration
/** The artifact resolution index. */
@Nullable private Integer artifactResolutionIndex;
+ /** {@inheritDoc} */
+ @Nullable public String getId() {
+ return id;
+ }
+
+ /** {@inheritDoc} */
+ public void setId(@Nonnull final String componentId) {
+ id = componentId;
+ }
+
/** {@inheritDoc} */
@Nullable public byte[] getArtifactType() {
return artifactType;
diff --git a/shib-saml-profile-api/src/main/java/net/shibboleth/saml/profile/config/SAMLArtifactAwareProfileConfiguration.java b/shib-saml-profile-api/src/main/java/net/shibboleth/saml/profile/config/SAMLArtifactAwareProfileConfiguration.java
index ea6e664..411918b 100644
--- a/shib-saml-profile-api/src/main/java/net/shibboleth/saml/profile/config/SAMLArtifactAwareProfileConfiguration.java
+++ b/shib-saml-profile-api/src/main/java/net/shibboleth/saml/profile/config/SAMLArtifactAwareProfileConfiguration.java
@@ -21,6 +21,8 @@ import javax.annotation.Nullable;
import org.opensaml.profile.context.ProfileRequestContext;
+import net.shibboleth.shared.annotation.ConfigurationSetting;
+
/** Common interface for SAML profile configurations involving artifact production. */
public interface SAMLArtifactAwareProfileConfiguration extends SAMLProfileConfiguration {
@@ -31,6 +33,7 @@ public interface SAMLArtifactAwareProfileConfiguration extends SAMLProfileConfig
*
* @return an associated artifact configuration, or null
*/
+ @ConfigurationSetting(name="artfactConfiguration")
@Nullable SAMLArtifactConfiguration getArtifactConfiguration(
@Nullable final ProfileRequestContext profileRequestContext);
diff --git a/shib-saml-profile-api/src/main/java/net/shibboleth/saml/profile/config/SAMLArtifactConsumerProfileConfiguration.java b/shib-saml-profile-api/src/main/java/net/shibboleth/saml/profile/config/SAMLArtifactConsumerProfileConfiguration.java
index 6c8c63c..aed38fc 100644
--- a/shib-saml-profile-api/src/main/java/net/shibboleth/saml/profile/config/SAMLArtifactConsumerProfileConfiguration.java
+++ b/shib-saml-profile-api/src/main/java/net/shibboleth/saml/profile/config/SAMLArtifactConsumerProfileConfiguration.java
@@ -21,6 +21,8 @@ import javax.annotation.Nullable;
import org.opensaml.messaging.context.MessageContext;
+import net.shibboleth.shared.annotation.ConfigurationSetting;
+
/**
* Common interface for SAML profile configurations involving artifact consumption, for example artifact
* resolution requests.
@@ -34,6 +36,7 @@ public interface SAMLArtifactConsumerProfileConfiguration extends SAMLProfileCon
*
* @return whether artifact resolution requests should be signed
*/
+ @ConfigurationSetting(name="signArtifactRequests")
boolean isSignArtifactRequests(@Nullable final MessageContext messageContext);
/**
@@ -43,6 +46,7 @@ public interface SAMLArtifactConsumerProfileConfiguration extends SAMLProfileCon
*
* @return whether artifact resolution requests should use client TLS
*/
+ @ConfigurationSetting(name="clientTLSArtifactRequests")
boolean isClientTLSArtifactRequests(@Nullable final MessageContext messageContext);
}
\ No newline at end of file
diff --git a/shib-saml-profile-api/src/main/java/net/shibboleth/saml/profile/config/SAMLAssertionConsumingProfileConfiguration.java b/shib-saml-profile-api/src/main/java/net/shibboleth/saml/profile/config/SAMLAssertionConsumingProfileConfiguration.java
index e08ef12..606e1d1 100644
--- a/shib-saml-profile-api/src/main/java/net/shibboleth/saml/profile/config/SAMLAssertionConsumingProfileConfiguration.java
+++ b/shib-saml-profile-api/src/main/java/net/shibboleth/saml/profile/config/SAMLAssertionConsumingProfileConfiguration.java
@@ -26,6 +26,7 @@ import javax.annotation.Nullable;
import org.opensaml.profile.context.ProfileRequestContext;
import net.shibboleth.saml.saml2.profile.config.SAML2ProfileConfiguration;
+import net.shibboleth.shared.annotation.ConfigurationSetting;
import net.shibboleth.shared.annotation.constraint.NonNegative;
import net.shibboleth.shared.annotation.constraint.NotLive;
import net.shibboleth.shared.annotation.constraint.Unmodifiable;
@@ -42,6 +43,7 @@ public interface SAMLAssertionConsumingProfileConfiguration extends SAML2Profile
*
* @return predicate used to determine if assertions must be signed
*/
+ @ConfigurationSetting(name="requireSignedAssertions")
boolean isRequireSignedAssertions(@Nullable final ProfileRequestContext profileRequestContext);
/**
@@ -51,6 +53,7 @@ public interface SAMLAssertionConsumingProfileConfiguration extends SAML2Profile
*
* @return maximum lifetime of the assertions
*/
+ @ConfigurationSetting(name="assertionLifetime")
@Nullable @NonNegative Duration getAssertionLifetime(@Nullable final ProfileRequestContext profileRequestContext);
/**
@@ -61,6 +64,7 @@ public interface SAMLAssertionConsumingProfileConfiguration extends SAML2Profile
* @return additional audiences
*/
@Nonnull @NotLive @Unmodifiable
+ @ConfigurationSetting(name="assertionAudiences")
Set<String> getAssertionAudiences( @Nullable final ProfileRequestContext profileRequestContext);
}
\ No newline at end of file
diff --git a/shib-saml-profile-api/src/main/java/net/shibboleth/saml/profile/config/SAMLAssertionProducingProfileConfiguration.java b/shib-saml-profile-api/src/main/java/net/shibboleth/saml/profile/config/SAMLAssertionProducingProfileConfiguration.java
index 13d178e..ebe4c98 100644
--- a/shib-saml-profile-api/src/main/java/net/shibboleth/saml/profile/config/SAMLAssertionProducingProfileConfiguration.java
+++ b/shib-saml-profile-api/src/main/java/net/shibboleth/saml/profile/config/SAMLAssertionProducingProfileConfiguration.java
@@ -25,6 +25,7 @@ import javax.annotation.Nullable;
import org.opensaml.profile.context.ProfileRequestContext;
+import net.shibboleth.shared.annotation.ConfigurationSetting;
import net.shibboleth.shared.annotation.constraint.NonNegative;
import net.shibboleth.shared.annotation.constraint.NotLive;
import net.shibboleth.shared.annotation.constraint.Unmodifiable;
@@ -44,6 +45,7 @@ public interface SAMLAssertionProducingProfileConfiguration extends SAMLProfileC
*
* @return whether generated assertions should be signed
*/
+ @ConfigurationSetting(name="signAssertions")
boolean isSignAssertions(@Nullable final ProfileRequestContext profileRequestContext);
/**
@@ -53,6 +55,7 @@ public interface SAMLAssertionProducingProfileConfiguration extends SAMLProfileC
*
* @return whether to include a NotBefore attribute in the Conditions of generated assertions
*/
+ @ConfigurationSetting(name="includeConditionsNotBefore")
boolean isIncludeConditionsNotBefore(@Nullable final ProfileRequestContext profileRequestContext);
/**
@@ -62,9 +65,9 @@ public interface SAMLAssertionProducingProfileConfiguration extends SAMLProfileC
*
* @return lifetime of generated assertions
*/
+ @ConfigurationSetting(name="assertionLifetime")
@NonNegative @Nonnull Duration getAssertionLifetime(@Nullable final ProfileRequestContext profileRequestContext);
-
/**
* Get an unmodifiable set of audiences, in addition to the relying party(ies) to which the IdP is issuing the
* assertion, with which an assertion may be shared.
@@ -74,6 +77,7 @@ public interface SAMLAssertionProducingProfileConfiguration extends SAMLProfileC
* @return additional audiences to which an assertion may be shared
*/
@Nonnull @NotLive @Unmodifiable
+ @ConfigurationSetting(name="assertionAudiences")
Set<String> getAssertionAudiences(@Nullable final ProfileRequestContext profileRequestContext);
}
\ No newline at end of file
diff --git a/shib-saml-profile-api/src/main/java/net/shibboleth/saml/profile/config/SAMLProfileConfiguration.java b/shib-saml-profile-api/src/main/java/net/shibboleth/saml/profile/config/SAMLProfileConfiguration.java
index c71b7ef..afb5882 100644
--- a/shib-saml-profile-api/src/main/java/net/shibboleth/saml/profile/config/SAMLProfileConfiguration.java
+++ b/shib-saml-profile-api/src/main/java/net/shibboleth/saml/profile/config/SAMLProfileConfiguration.java
@@ -26,6 +26,7 @@ import org.opensaml.messaging.handler.MessageHandler;
import org.opensaml.profile.context.ProfileRequestContext;
import net.shibboleth.profile.config.ProfileConfiguration;
+import net.shibboleth.shared.annotation.ConfigurationSetting;
/** Common interface for SAML profile configurations. */
public interface SAMLProfileConfiguration extends ProfileConfiguration {
@@ -37,6 +38,7 @@ public interface SAMLProfileConfiguration extends ProfileConfiguration {
*
* @return predicate used to determine if generated requests should be signed
*/
+ @ConfigurationSetting(name="signRequests")
boolean isSignRequests(@Nullable final ProfileRequestContext profileRequestContext);
/**
@@ -46,6 +48,7 @@ public interface SAMLProfileConfiguration extends ProfileConfiguration {
*
* @return predicate used to determine if generated responses should be signed
*/
+ @ConfigurationSetting(name="signResponses")
boolean isSignResponses(@Nullable final ProfileRequestContext profileRequestContext);
/**
@@ -62,6 +65,7 @@ public interface SAMLProfileConfiguration extends ProfileConfiguration {
*
* @return message handler
*/
+ @ConfigurationSetting(name="messageHandler")
@Nullable Function<MessageContext,Exception> getMessageHandler(@Nullable final MessageContext messageContext);
}
\ No newline at end of file
diff --git a/shib-saml-profile-api/src/main/java/net/shibboleth/saml/saml1/profile/config/ArtifactResolutionProfileConfiguration.java b/shib-saml-profile-api/src/main/java/net/shibboleth/saml/saml1/profile/config/ArtifactResolutionProfileConfiguration.java
index 3d03339..516a6f5 100644
--- a/shib-saml-profile-api/src/main/java/net/shibboleth/saml/saml1/profile/config/ArtifactResolutionProfileConfiguration.java
+++ b/shib-saml-profile-api/src/main/java/net/shibboleth/saml/saml1/profile/config/ArtifactResolutionProfileConfiguration.java
@@ -23,6 +23,7 @@ import javax.annotation.Nullable;
import org.opensaml.profile.context.ProfileRequestContext;
import net.shibboleth.saml.profile.config.SAMLProfileConfiguration;
+import net.shibboleth.shared.annotation.ConfigurationSetting;
import net.shibboleth.shared.annotation.constraint.NotEmpty;
/** Configuration support for SAML 1.x artifact resolution profile. */
@@ -38,6 +39,7 @@ public interface ArtifactResolutionProfileConfiguration extends SAMLProfileConfi
*
* @return whether enclosed assertions should be signed
*/
+ @ConfigurationSetting(name="signAssertions")
boolean isSignAssertions(@Nullable final ProfileRequestContext profileRequestContext);
}
\ No newline at end of file
diff --git a/shib-saml-profile-api/src/main/java/net/shibboleth/saml/saml2/profile/config/ArtifactResolutionProfileConfiguration.java b/shib-saml-profile-api/src/main/java/net/shibboleth/saml/saml2/profile/config/ArtifactResolutionProfileConfiguration.java
index 0aa9737..2cf58d9 100644
--- a/shib-saml-profile-api/src/main/java/net/shibboleth/saml/saml2/profile/config/ArtifactResolutionProfileConfiguration.java
+++ b/shib-saml-profile-api/src/main/java/net/shibboleth/saml/saml2/profile/config/ArtifactResolutionProfileConfiguration.java
@@ -22,6 +22,7 @@ import javax.annotation.Nullable;
import org.opensaml.profile.context.ProfileRequestContext;
+import net.shibboleth.shared.annotation.ConfigurationSetting;
import net.shibboleth.shared.annotation.constraint.NotEmpty;
/** Configuration support for SAML 2.0 artifact resolution profile. */
@@ -37,6 +38,7 @@ public interface ArtifactResolutionProfileConfiguration extends SAML2ProfileConf
*
* @return whether enclosed assertions should be signed
*/
+ @ConfigurationSetting(name="signAssertions")
boolean isSignAssertions(@Nullable final ProfileRequestContext profileRequestContext);
/**
@@ -46,6 +48,7 @@ public interface ArtifactResolutionProfileConfiguration extends SAML2ProfileConf
*
* @return whether enclosed assertions should be encrypted
*/
+ @ConfigurationSetting(name="encryptAssertions")
boolean isEncryptAssertions(@Nullable final ProfileRequestContext profileRequestContext);
/**
@@ -55,6 +58,7 @@ public interface ArtifactResolutionProfileConfiguration extends SAML2ProfileConf
*
* @return whether enclosed attributes should be encrypted
*/
+ @ConfigurationSetting(name="encryptAttributes")
boolean isEncryptAttributes(@Nullable final ProfileRequestContext profileRequestContext);
}
\ No newline at end of file
diff --git a/shib-saml-profile-api/src/main/java/net/shibboleth/saml/saml2/profile/config/BrowserSSOProfileConfiguration.java b/shib-saml-profile-api/src/main/java/net/shibboleth/saml/saml2/profile/config/BrowserSSOProfileConfiguration.java
index c392d02..d35fffc 100644
--- a/shib-saml-profile-api/src/main/java/net/shibboleth/saml/saml2/profile/config/BrowserSSOProfileConfiguration.java
+++ b/shib-saml-profile-api/src/main/java/net/shibboleth/saml/saml2/profile/config/BrowserSSOProfileConfiguration.java
@@ -25,6 +25,7 @@ import javax.annotation.Nullable;
import net.shibboleth.saml.profile.config.SAMLArtifactConsumerProfileConfiguration;
import net.shibboleth.saml.profile.config.SAMLAssertionConsumingProfileConfiguration;
+import net.shibboleth.shared.annotation.ConfigurationSetting;
import net.shibboleth.shared.annotation.constraint.NonNegative;
import net.shibboleth.shared.annotation.constraint.NotEmpty;
import net.shibboleth.shared.annotation.constraint.NotLive;
@@ -69,6 +70,7 @@ public interface BrowserSSOProfileConfiguration extends SAMLArtifactConsumerProf
*
* @return true iff a fresh user presence proof should be required for this request
*/
+ @ConfigurationSetting(name="forceAuthn")
boolean isForceAuthn(@Nullable final ProfileRequestContext profileRequestContext);
/**
@@ -79,6 +81,7 @@ public interface BrowserSSOProfileConfiguration extends SAMLArtifactConsumerProf
*
* @return whether to compare addresses
*/
+ @ConfigurationSetting(name="checkAddress")
boolean isCheckAddress(@Nullable final ProfileRequestContext profileRequestContext);
/**
@@ -90,6 +93,7 @@ public interface BrowserSSOProfileConfiguration extends SAMLArtifactConsumerProf
*
* @return max time since inbound AuthnInstant
*/
+ @ConfigurationSetting(name="maximumTimeSinceAuthn")
@NonNegative @Nullable Duration getMaximumTimeSinceAuthn(
@Nullable final ProfileRequestContext profileRequestContext);
@@ -100,6 +104,7 @@ public interface BrowserSSOProfileConfiguration extends SAMLArtifactConsumerProf
*
* @return maximum number of times an assertion may be proxied
*/
+ @ConfigurationSetting(name="proxyCount")
@NonNegative @Nullable Integer getProxyCount(@Nullable final ProfileRequestContext profileRequestContext);
/**
@@ -112,6 +117,7 @@ public interface BrowserSSOProfileConfiguration extends SAMLArtifactConsumerProf
*
* @return comparison value or null
*/
+ @ConfigurationSetting(name="authnContextComparison")
@Nullable AuthnContextComparisonTypeEnumeration getAuthnContextComparison(
@Nullable final ProfileRequestContext profileRequestContext);
@@ -122,6 +128,7 @@ public interface BrowserSSOProfileConfiguration extends SAMLArtifactConsumerProf
*
* @return requested SPNameQualifier
*/
+ @ConfigurationSetting(name="sPNameQualifier")
@Nullable String getSPNameQualifier(@Nullable final ProfileRequestContext profileRequestContext);
/**
@@ -131,6 +138,7 @@ public interface BrowserSSOProfileConfiguration extends SAMLArtifactConsumerProf
*
* @return the AttributeConsumingServiceIndex
*/
+ @ConfigurationSetting(name="attributeIndex")
@Nullable Integer getAttributeIndex(@Nullable final ProfileRequestContext profileRequestContext);
/**
@@ -140,6 +148,7 @@ public interface BrowserSSOProfileConfiguration extends SAMLArtifactConsumerProf
*
* @return the requested attributes
*/
+ @ConfigurationSetting(name="requestedAttributes")
@Nonnull @Unmodifiable @NotLive Collection<RequestedAttribute> getRequestedAttributes(
@Nullable final ProfileRequestContext profileRequestContext);
diff --git a/shib-saml-profile-api/src/main/java/net/shibboleth/saml/saml2/profile/config/SAML2AssertionProducingProfileConfiguration.java b/shib-saml-profile-api/src/main/java/net/shibboleth/saml/saml2/profile/config/SAML2AssertionProducingProfileConfiguration.java
index 16e9185..1e1a7df 100644
--- a/shib-saml-profile-api/src/main/java/net/shibboleth/saml/saml2/profile/config/SAML2AssertionProducingProfileConfiguration.java
+++ b/shib-saml-profile-api/src/main/java/net/shibboleth/saml/saml2/profile/config/SAML2AssertionProducingProfileConfiguration.java
@@ -22,6 +22,7 @@ import javax.annotation.Nullable;
import org.opensaml.profile.context.ProfileRequestContext;
import net.shibboleth.saml.profile.config.SAMLAssertionProducingProfileConfiguration;
+import net.shibboleth.shared.annotation.ConfigurationSetting;
/**
* Interface for SAML 2.0 profiles that produce assertions.
@@ -36,6 +37,7 @@ public interface SAML2AssertionProducingProfileConfiguration extends SAML2Profil
*
* @return whether assertions should be encrypted
*/
+ @ConfigurationSetting(name="encryptAssertions")
boolean isEncryptAssertions(@Nullable final ProfileRequestContext profileRequestContext);
/**
@@ -45,5 +47,6 @@ public interface SAML2AssertionProducingProfileConfiguration extends SAML2Profil
*
* @return whether attributes should be encrypted
*/
+ @ConfigurationSetting(name="encryptAttributes")
boolean isEncryptAttributes(@Nullable final ProfileRequestContext profileRequestContext);
}
\ No newline at end of file
diff --git a/shib-saml-profile-api/src/main/java/net/shibboleth/saml/saml2/profile/config/SAML2ProfileConfiguration.java b/shib-saml-profile-api/src/main/java/net/shibboleth/saml/saml2/profile/config/SAML2ProfileConfiguration.java
index 5099bba..56c2ef1 100644
--- a/shib-saml-profile-api/src/main/java/net/shibboleth/saml/saml2/profile/config/SAML2ProfileConfiguration.java
+++ b/shib-saml-profile-api/src/main/java/net/shibboleth/saml/saml2/profile/config/SAML2ProfileConfiguration.java
@@ -22,6 +22,7 @@ import javax.annotation.Nullable;
import org.opensaml.profile.context.ProfileRequestContext;
import net.shibboleth.saml.profile.config.SAMLProfileConfiguration;
+import net.shibboleth.shared.annotation.ConfigurationSetting;
/**
* Base interface for SAML 2 profile configurations.
@@ -38,6 +39,7 @@ public interface SAML2ProfileConfiguration extends SAMLProfileConfiguration {
*
* @return true iff request signatures should be ignored
*/
+ @ConfigurationSetting(name="ignoreRequestSignatures")
boolean isIgnoreRequestSignatures(@Nullable final ProfileRequestContext profileRequestContext);
/**
@@ -53,6 +55,7 @@ public interface SAML2ProfileConfiguration extends SAMLProfileConfiguration {
*
* @return true iff encryption should be treated as optional
*/
+ @ConfigurationSetting(name="encryptionOptional")
boolean isEncryptionOptional(@Nullable final ProfileRequestContext profileRequestContext);
/**
@@ -62,6 +65,7 @@ public interface SAML2ProfileConfiguration extends SAMLProfileConfiguration {
*
* @return predicate used to determine if name identifiers should be encrypted
*/
+ @ConfigurationSetting(name="encryptNameIDs")
boolean isEncryptNameIDs(@Nullable final ProfileRequestContext profileRequestContext);
}
\ No newline at end of file
diff --git a/shib-saml-profile-api/src/main/java/net/shibboleth/saml/saml2/profile/config/SingleLogoutProfileConfiguration.java b/shib-saml-profile-api/src/main/java/net/shibboleth/saml/saml2/profile/config/SingleLogoutProfileConfiguration.java
index eb9d235..259cc33 100644
--- a/shib-saml-profile-api/src/main/java/net/shibboleth/saml/saml2/profile/config/SingleLogoutProfileConfiguration.java
+++ b/shib-saml-profile-api/src/main/java/net/shibboleth/saml/saml2/profile/config/SingleLogoutProfileConfiguration.java
@@ -26,6 +26,7 @@ import org.opensaml.messaging.context.MessageContext;
import org.opensaml.profile.context.ProfileRequestContext;
import net.shibboleth.saml.profile.config.SAMLArtifactConsumerProfileConfiguration;
+import net.shibboleth.shared.annotation.ConfigurationSetting;
import net.shibboleth.shared.annotation.constraint.NotEmpty;
import net.shibboleth.shared.annotation.constraint.NotLive;
import net.shibboleth.shared.annotation.constraint.Unmodifiable;
@@ -70,6 +71,7 @@ public interface SingleLogoutProfileConfiguration extends SAML2ProfileConfigurat
*
* @since 3.4.0
*/
+ @ConfigurationSetting(name="qualifiedNameIDFormats")
@Nonnull @Unmodifiable @NotLive Collection<String> getQualifiedNameIDFormats(
@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