Support Article
Custom Authentication for SOAP Service
Summary
After upgrading from 7.1.6 to 7.2 seeing authentication modification error when calling a SOAP service because using a deprecated method to do the authentication. Tried removing the call but then the operator/requestor is not setup correctly and see invalid page errors. Need to update the SOAP service to use custom authentication. Currently the username of the operator is in the SOAP header.
Error Messages
2016-08-29 10:28:29,553 [ WebContainer : 5] [ STANDARD] [ ] [] (.authentication.Authentication) ERROR - Authentication modification permitted via privileged path only - invalid caller: RULE-OBJ-ACTIVITY [CUSTOM_CLASS] CREATESERVICEREQUESTOR #20150830T162407.478 GMT
2016-08-29 10:28:29,554 [ WebContainer : 5] [ STANDARD] [ ] [ ] ( internal.services.ServiceAPI) ERROR - SOAP service [][Z[CLASS]-PerformAction-][PerformAction] failed:Invalid request:com.pega.pegarules.pub.context.PRSecurityException: Invalid request
Steps to Reproduce
Call SOAP Service.
Root Cause
Authentication was being attempted within the SOAP Service activity and this is not the proper place as the requestor has already been setup and ready to run the processing.
Resolution
To properly use custom authentication within a SOAP service you enable authentication within the Service Package instance for the service. Then you can specify a Data-Admin-AuthService instance to use a PRCustom style authentication activity to authenticate users before the SOAP Service processing is started.
Tags:
Published October 20, 2016 - Updated October 8, 2020
Have a question? Get answers now.
Visit the Collaboration Center to ask questions, engage in discussions, share ideas, and help others.