Pega SAML SSO - Multiple Operator Creation

Could anyone suggest if there would be any Post Authentication activity to create additional Data Instance on User Login using SAML SSO Authentication.

Requirement here is, When User Login to Pega using SAML SSO Authentication (Pega 8.5)

System Authenticates the User.

After authentication we need ability to add some data instances (using Save and Commit).

If we do this in Authentication activity , System will throw errors while saving the record to Data-Base as user is not yet authenticated and Save will run activities like LOOKPLIST before saving instance and these rules verify for user authentication.

But in this version of Pega (8.5) , Dont see any postAuthenticationa ctivity rules.

@SrimannarayanaB I can see that the support ticket was investigated for the error received when creating and saving a new operator ID prior to completion of SSO authentication

  • “Error: You lack access required to execute RULE-OBJ-ACTIVITY @BASECLASS LOOKUPLIST #20201126T093726.213 GMT.”

(Unable to Create Operator for attended BOT usage through SSO)

This occurred when creating a operator for Robotic Desktop Automation users during the SSO authentication process

I can see that the issue was due to the use of an older authentication mechanism. The old way has some custom work to create a secondary RPA (Robotics) operator in the middle of pysamlwebssoauthenticationactivity

Ideally in these 8.x pega versions extra Obj save, and commit is not needed as platform takes care of saving of the records however here based on the current requirement if we remove extra save then operators are not getting created.

The support ticket was resolved with the following explanation:


It was suggested to modify Obj-Save mechanism now user is saving it to through some java code instead extra Obj save and below changed were added before Save to resolve the issue:

Authenticated the User before doing Obj-save

//Re-authenticate the user:
PRAuthentication auth = pega.getAuthenticationHandle();
auth.setUserAuthenticated(pega, true);