[java-identity-provider] 01/01: IDP-1827 - Option to hide logout reporting

Scott Cantor cantor.2 at osu.edu
Thu Jun 3 19:19:36 UTC 2021


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

scantor pushed a commit to branch dev/logout-enh
in repository java-identity-provider.

View the commit online:
http://git.shibboleth.net/view/?p=java-identity-provider.git;a=commit;h=8bb724a5a953a8298e209b78a1c8732020dc9dd3

commit 8bb724a5a953a8298e209b78a1c8732020dc9dd3
Author: Scott Cantor <cantor.2 at osu.edu>
AuthorDate: Thu Jun 3 15:19:06 2021 -0400

    IDP-1827 - Option to hide logout reporting
    
    https://issues.shibboleth.net/jira/browse/IDP-1827
    
    Added idp.logout.propagationHidden property.
---
 .../main/resources/net/shibboleth/idp/messages/messages.properties   | 2 ++
 .../src/main/resources/net/shibboleth/idp/views/logout/propagate.vm  | 5 +++--
 idp-conf/src/main/resources/conf/idp.properties                      | 3 +++
 idp-conf/src/main/resources/views/logout-propagate.vm                | 5 +++++
 idp-conf/src/test/resources/conf/idp.properties                      | 3 +++
 5 files changed, 16 insertions(+), 2 deletions(-)

diff --git a/idp-conf-impl/src/main/resources/net/shibboleth/idp/messages/messages.properties b/idp-conf-impl/src/main/resources/net/shibboleth/idp/messages/messages.properties
index a20a987ce..08cb76647 100644
--- a/idp-conf-impl/src/main/resources/net/shibboleth/idp/messages/messages.properties
+++ b/idp-conf-impl/src/main/resources/net/shibboleth/idp/messages/messages.properties
@@ -135,6 +135,8 @@ idp.logout.complete = The logout operation is complete, and no other services ap
 idp.logout.local = You elected not to log out of all the services accessed during your session.
 idp.logout.attempt = Attempting to log out of the following services:
 idp.logout.cancelled = Logout has been cancelled.
+idp.logout.hidden = Your single sign-on session has been terminated, but you are still logged into many of the \
+                    services you have accessed during your session.
 
 # Legacy V3 UI
 idp.logout.ask = Would you like to attempt to log out of all services accessed during your session? \
diff --git a/idp-conf-impl/src/main/resources/net/shibboleth/idp/views/logout/propagate.vm b/idp-conf-impl/src/main/resources/net/shibboleth/idp/views/logout/propagate.vm
index 588ee8099..58a2d4186 100644
--- a/idp-conf-impl/src/main/resources/net/shibboleth/idp/views/logout/propagate.vm
+++ b/idp-conf-impl/src/main/resources/net/shibboleth/idp/views/logout/propagate.vm
@@ -24,7 +24,7 @@
 ## element for the relying party of their session.
 ##
 #if ($logoutContext and !$logoutContext.getSessionMap().isEmpty())
-    <ol>
+    <ol #if($hidden == "true")aria-hidden="true" style="display:none"#end>
         #foreach ($entry in $logoutContext.getKeyedSessionMap().entrySet())
             #set ($sp = $entry.getValue().getId())
             #set ($rpCtx = $multiRPContext.getRelyingPartyContextById($sp))
@@ -163,7 +163,8 @@
             #set ($trackerId = "result_$codecUtil.hex($entry.getValue().getId().getBytes())")
             <iframe id="sender_$codecUtil.hex($entry.getKey().getBytes())"
                 src="$request.contextPath/profile/PropagateLogout?SessionKey=$urlEncoder.encode($entry.getKey())"
-                style="display:none" onload="onLoad($(this), $('#$trackerId'), '$trackerId', '$entry.getKey()')"></iframe>
+                style="display:none" #if($hidden == "true")aria-hidden="true"#end
+                onload="onLoad($(this), $('#$trackerId'), '$trackerId', '$entry.getKey()')"></iframe>
         #end
     #end
 #end
diff --git a/idp-conf/src/main/resources/conf/idp.properties b/idp-conf/src/main/resources/conf/idp.properties
index b560da38f..7064c18d8 100644
--- a/idp-conf/src/main/resources/conf/idp.properties
+++ b/idp-conf/src/main/resources/conf/idp.properties
@@ -182,6 +182,9 @@ idp.bindings.inMetadataOrder = false
 # Whether to require logout requests/responses be signed/authenticated.
 #idp.logout.authenticated = true
 
+# Whether to hide logout propagation status reporting.
+#idp.logout.propagationHidden = false
+
 # Bean to determine whether user should be allowed to cancel logout
 #idp.logout.promptUser=shibboleth.Conditions.FALSE
 
diff --git a/idp-conf/src/main/resources/views/logout-propagate.vm b/idp-conf/src/main/resources/views/logout-propagate.vm
index 470eff5dc..cdf74593a 100644
--- a/idp-conf/src/main/resources/views/logout-propagate.vm
+++ b/idp-conf/src/main/resources/views/logout-propagate.vm
@@ -16,6 +16,7 @@
 ## environment - Spring Environment object for property resolution
 ## custom - arbitrary object injected by deployer
 ##
+#set ($hidden = $environment.getProperty("idp.logout.propagationHidden", "false"))
 <!DOCTYPE html>
 <html>
     <head>
@@ -35,7 +36,11 @@
 
         <div class="content">
           <div class="column one">
+              #if($hidden == "true")
+              <p>#springMessageText("idp.logout.hidden", "Your single sign-on session has been terminated, but you are still logged into many of the services you have accessed during your session.")</p>
+              #else
               <p>#springMessageText("idp.logout.attempt", "Attempting to log out of the following services:")</p>
+              #end
               #parse("logout/propagate.vm")
           </div>
           <div class="column two">
diff --git a/idp-conf/src/test/resources/conf/idp.properties b/idp-conf/src/test/resources/conf/idp.properties
index 140136d6b..fb9507cdd 100644
--- a/idp-conf/src/test/resources/conf/idp.properties
+++ b/idp-conf/src/test/resources/conf/idp.properties
@@ -163,6 +163,9 @@ idp.session.secondaryServiceIndex = true
 # Whether to require logout requests/responses be signed/authenticated.
 #idp.logout.authenticated = true
 
+# Whether to hide logout propagation status reporting.
+idp.logout.propagationHidden = true
+
 # Bean to determine whether user should be allowed to cancel logout
 #idp.logout.promptUser=shibboleth.Conditions.FALSE
 

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


More information about the commits mailing list