[java-identity-provider COMMIT] in /trunk: idp-conf/src/main/resources/conf/credentials.xml idp-conf/src/main/resourc...

noreply at shibboleth.net noreply at shibboleth.net
Wed Oct 21 23:01:37 EDT 2015


Author: putmanb
Date: Wed Oct 21 23:01:36 2015
New Revision: 7853

URL: http://svn.shibboleth.net/view/java-identity-provider?rev=7853&view=rev
Log:
Implement IdP encryption credentials resolution support.

Add new list of encryption creds to DefaultRelyingPartyConfigurationResolver.
Add relevant Spring wiring.
Add credential resolver which sources creds from the relying party config resolver.  

Added:
    trunk/idp-profile-impl/src/main/java/net/shibboleth/idp/relyingparty/impl/EncryptionCredentialsResolver.java   (with props)
Modified:
    trunk/idp-conf/src/main/resources/conf/credentials.xml
    trunk/idp-conf/src/main/resources/system/conf/relying-party-system.xml
    trunk/idp-profile-impl/src/main/java/net/shibboleth/idp/relyingparty/impl/DefaultRelyingPartyConfigurationResolver.java

Modified: trunk/idp-conf/src/main/resources/conf/credentials.xml
URL: http://svn.shibboleth.net/view/java-identity-provider/trunk/idp-conf/src/main/resources/conf/credentials.xml?rev=7853&r1=7852&r2=7853&view=diff
==============================================================================
--- trunk/idp-conf/src/main/resources/conf/credentials.xml	(original)
+++ trunk/idp-conf/src/main/resources/conf/credentials.xml	Wed Oct 21 23:01:36 2015
@@ -35,7 +35,14 @@
         p:privateKeyResource="%{idp.signing.key}"
         p:certificateResource="%{idp.signing.cert}"
         p:entityId-ref="entityID" />
-
+        
+    <!--
+    The list of ALL of your IdP's encryption credentials. By default this is just an alias
+    for 'shibboleth.DefaultEncryptionCredentials'. It could be re-defined as
+    a list with additional credentials if needed.
+    -->
+    <alias alias="shibboleth.EncryptionCredentials" name="shibboleth.DefaultEncryptionCredentials" />
+        
     <!-- Your IdP's default encryption (really decryption) keys, set via property file. -->
     <util:list id="shibboleth.DefaultEncryptionCredentials">
         <bean class="net.shibboleth.idp.profile.spring.factory.BasicX509CredentialFactoryBean"

Modified: trunk/idp-conf/src/main/resources/system/conf/relying-party-system.xml
URL: http://svn.shibboleth.net/view/java-identity-provider/trunk/idp-conf/src/main/resources/system/conf/relying-party-system.xml?rev=7853&r1=7852&r2=7853&view=diff
==============================================================================
--- trunk/idp-conf/src/main/resources/system/conf/relying-party-system.xml	(original)
+++ trunk/idp-conf/src/main/resources/system/conf/relying-party-system.xml	Wed Oct 21 23:01:36 2015
@@ -21,7 +21,8 @@
         p:defaultConfiguration-ref="shibboleth.DefaultRelyingParty"
         p:relyingPartyConfigurations-ref="shibboleth.RelyingPartyOverrides"
         p:defaultSecurityConfiguration-ref="%{idp.security.config:shibboleth.DefaultSecurityConfiguration}" 
-        p:signingCredentials="#{getObject('shibboleth.SigningCredentials')}" />
+        p:signingCredentials="#{getObject('shibboleth.SigningCredentials')}"
+        p:encryptionCredentials="#{getObject('shibboleth.EncryptionCredentials')}" />
 
     <!-- Parent bean for generic RelyingParty overrides that establishes defaults. -->
     <bean id="RelyingParty" abstract="true" class="net.shibboleth.idp.relyingparty.RelyingPartyConfiguration"

Modified: trunk/idp-profile-impl/src/main/java/net/shibboleth/idp/relyingparty/impl/DefaultRelyingPartyConfigurationResolver.java
URL: http://svn.shibboleth.net/view/java-identity-provider/trunk/idp-profile-impl/src/main/java/net/shibboleth/idp/relyingparty/impl/DefaultRelyingPartyConfigurationResolver.java?rev=7853&r1=7852&r2=7853&view=diff
==============================================================================
--- trunk/idp-profile-impl/src/main/java/net/shibboleth/idp/relyingparty/impl/DefaultRelyingPartyConfigurationResolver.java	(original)
+++ trunk/idp-profile-impl/src/main/java/net/shibboleth/idp/relyingparty/impl/DefaultRelyingPartyConfigurationResolver.java	Wed Oct 21 23:01:36 2015
@@ -89,6 +89,9 @@
     
     /** The global list of all configured signing credentials. */
     @Nullable private List<Credential> signingCredentials;
+    
+    /** The global list of all configured encryption credentials. */
+    @Nullable private List<Credential> encryptionCredentials;
 
     /** Constructor. */
     public DefaultRelyingPartyConfigurationResolver() {
@@ -96,6 +99,7 @@
         verificationPredicate = new VerifiedProfilePredicate();
         securityConfigurationMap = Collections.emptyMap();
         signingCredentials = Collections.emptyList();
+        encryptionCredentials = Collections.emptyList();
     }
 
     /**
@@ -341,6 +345,28 @@
         signingCredentials = new ArrayList<>(Collections2.filter(credentials, Predicates.notNull()));
     }
 
+    /**
+     * Get the list of all configured encryption credentials.
+     * 
+     * @return the list of encryption credentials
+     */
+    @Nonnull @NonnullElements @Unmodifiable @NotLive public List<Credential> getEncryptionCredentials() {
+        return ImmutableList.copyOf(encryptionCredentials);
+    }
+    
+    /**

[... 16 lines stripped ...]


More information about the commits mailing list