Obviously, you would never want to do that but as you know, unforeseen circumstances happen.
I am trying to determine how/where you could control that (preauthentication check or postauthentication check). I found references to pySSOPreAuthenticationActivity or pySSOPostAuthenticationActivity but all they result in is hard, user unfriendly, message or success. User Consent policy, default, shows user consent to accept going forward and can be accepted but cannot be controlled from the post authentication activity.
And, how would you set the appropriate values to make sure further processing is disabled and the user is presented a more usable friendly message besides, "Login terminated because a post-authentication activity or policy failed."
Using Pega Platform 8.x
***Edited by Moderator Marissa to update Platform Capability tags****
Oh, in learning about this, I saw that way too often. What it means is that your post-authentication activity is doing one of two things.
1. Failing the logic for whatever reason (something missing, not checked in, any number of reasons)
2. More importantly, if your activity is successful, you MUST finish off or have it included in the successful path, the following Java step:
/** This entry needs to be in two spots as parameter passing for this entry results in policy errors thrown by Pega **/
If you don't specifically do this, Pega treats the activity as having failed; regardless if your activity executes properly or not.
If that still doesn't work, you are most likely going to need to trace your request to see what is failing and where.
In Pages & classes, define your Page name and class. Say, MyDataStruct
On step page of a Property-Set, set it to MyDataStruct
in the value part of the Property-Set, specify this: @(Pega-RULES:Page).pxConvertStringToPage(tools, myStepPage, Param.jsonString,"json")
and your MyDataStruct should be populated
(learned this from a colleague)
If you don't want to physically create the data structure (as it's temporary), define your MyDataStruct of class type $ANY and the clipboard page will be created and there will be no data structure value validations.
so after running the Property-Set, you could refer to your first property as MyDataStruct.at_hash