[java-identity-provider COMMIT] in /trunk/idp-conf/src/main/resources/system/flows/admin: admin-abstract-flow.xml res...

noreply at shibboleth.net noreply at shibboleth.net
Fri Aug 26 21:06:13 EDT 2016


Author: scantor
Date: Fri Aug 26 21:06:13 2016
New Revision: 8358

URL: http://svn.shibboleth.net/view/java-identity-provider?rev=8358&view=rev
Log:
IDP-961 - Use of IdP's authentication flow to protect itself

https://issues.shibboleth.net/jira/browse/IDP-961

Rework error handling composition for admin flows.

Modified:
    trunk/idp-conf/src/main/resources/system/flows/admin/admin-abstract-flow.xml
    trunk/idp-conf/src/main/resources/system/flows/admin/resolvertest-beans.xml
    trunk/idp-conf/src/main/resources/system/flows/admin/resolvertest-flow.xml

Modified: trunk/idp-conf/src/main/resources/system/flows/admin/admin-abstract-flow.xml
URL: http://svn.shibboleth.net/view/java-identity-provider/trunk/idp-conf/src/main/resources/system/flows/admin/admin-abstract-flow.xml?rev=8358&r1=8357&r2=8358&view=diff
==============================================================================
--- trunk/idp-conf/src/main/resources/system/flows/admin/admin-abstract-flow.xml	(original)
+++ trunk/idp-conf/src/main/resources/system/flows/admin/admin-abstract-flow.xml	Fri Aug 26 21:06:13 2016
@@ -4,6 +4,11 @@
     abstract="true">
 
     <!-- Abstract base for administrative flows. -->
+    
+    <on-start>
+        <evaluate expression="'ErrorView'"  result="flowScope.ErrorState"/>
+        <evaluate expression="'AuditedErrorView'"  result="flowScope.AuditedErrorState"/>
+    </on-start>
     
     <action-state id="DoAdminPreamble">
         <evaluate expression="InitializeAdministrativeProfileContextTree" />
@@ -86,13 +91,11 @@
 
         <transition on="proceed" to="ClientStorageSave" />
         <transition on="NoSaveNeeded" to="DoProfileWork" />
-        <transition to="HandleErrorWithView" />
     </action-state>
     
     <subflow-state id="ClientStorageSave" subflow="client-storage/write">
         <input name="calledAsSubflow" value="true" />
         <transition on="proceed" to="DoProfileWork"/>
-        <transition to="HandleErrorWithView" />
     </subflow-state>
 
     <!-- DoProfileWork in the child flow performs all the subsequent work of the flow. -->
@@ -104,17 +107,17 @@
             <evaluate expression="T(org.slf4j.LoggerFactory).getLogger('net.shibboleth.idp.profile').error('Uncaught runtime exception', flowExecutionException.getCause())" />
         </on-entry>
         <evaluate expression="'RuntimeException'" />
-        <transition to="HandleErrorWithView" />
+        <transition to="HandleError" />
     </action-state>
 
     <!-- Unsuccessful terminal states. -->
     
-    <decision-state id="HandleErrorWithView">
+    <decision-state id="HandleError">
         <on-entry>
             <evaluate expression="LogEvent" />
         </on-entry>
         <if test="flowRequestContext.getActiveFlow().getApplicationContext().getBean('shibboleth.LocalEventMap').containsKey(currentEvent.id) and flowRequestContext.getActiveFlow().getApplicationContext().getBean('shibboleth.LocalEventMap').get(currentEvent.id)"
-            then="AuditedErrorView" else="ErrorView" />
+            then="#{AuditedErrorState}" else="#{ErrorState}" />
     </decision-state>
 
     <end-state id="AuditedErrorView" view="#{MapEventToView.apply(currentEvent)}">
@@ -145,7 +148,7 @@
     <!-- Default is to turn non-proceed events into an error. -->
     <global-transitions>
         <transition on-exception="java.lang.RuntimeException" to="LogRuntimeException" />
-        <transition on="#{!'proceed'.equals(currentEvent.id)}" to="HandleErrorWithView" />
+        <transition on="#{!'proceed'.equals(currentEvent.id)}" to="HandleError" />
     </global-transitions>
 
     <bean-import resource="admin-abstract-beans.xml" />

Modified: trunk/idp-conf/src/main/resources/system/flows/admin/resolvertest-beans.xml
URL: http://svn.shibboleth.net/view/java-identity-provider/trunk/idp-conf/src/main/resources/system/flows/admin/resolvertest-beans.xml?rev=8358&r1=8357&r2=8358&view=diff
==============================================================================
--- trunk/idp-conf/src/main/resources/system/flows/admin/resolvertest-beans.xml	(original)
+++ trunk/idp-conf/src/main/resources/system/flows/admin/resolvertest-beans.xml	Fri Aug 26 21:06:13 2016
@@ -116,7 +116,7 @@
             <key>
                 <null/>
             </key>
-            <value>ResponseView</value>
+            <value>PrepareForView</value>
         </entry>
         <entry>
             <key>

Modified: trunk/idp-conf/src/main/resources/system/flows/admin/resolvertest-flow.xml
URL: http://svn.shibboleth.net/view/java-identity-provider/trunk/idp-conf/src/main/resources/system/flows/admin/resolvertest-flow.xml?rev=8358&r1=8357&r2=8358&view=diff
==============================================================================
--- trunk/idp-conf/src/main/resources/system/flows/admin/resolvertest-flow.xml	(original)
+++ trunk/idp-conf/src/main/resources/system/flows/admin/resolvertest-flow.xml	Fri Aug 26 21:06:13 2016
@@ -4,6 +4,11 @@
     parent="admin.abstract">
     
     <!-- Start action. -->
+
+    <on-start>

[... 73 lines stripped ...]


More information about the commits mailing list