A family of Microsoft on-premises document management and storage systems.
Hi @Zayan Zaki
Based on the information you provided, I understand that you have successfully completed a database in-place upgrade from SharePoint Server 2016 to SharePoint Server Subscription Edition (SE). While the content upgrade itself completed without issues, your legacy InfoPath 2010 forms that rely on SOAP web services are now failing. Specifically, when a form attempts to load and call the GetUserProfileByName web service to retrieve user data, it throws a 500 Internal Server Error due to an "Attempted to perform an unauthorized operation" exception.
After reviewing similar upgrade scenarios, this error occurs because the security context under which the InfoPath Forms Services engine executes SOAP calls is being blocked by the User Profile Service Application (UPA) in SharePoint SE, which enforces stricter security boundaries than SharePoint 2016.
To resolve this authentication/authorization bottleneck, please go through the following troubleshooting and configuration steps:
-InfoPath forms rely heavily on the State Service to maintain session data during SOAP calls. Ensure it is correctly provisioned and associated with your web application.
Open the SharePoint Management Shell and verify the State Service exists:
Get-SPStateServiceApplication Get-SPWebApplication | Get-SPServiceApplicationProxyGroup | Select *
Go to Central Administration and ensure both the State Service Proxy and the User Profile Service Application Proxy are checked.
-The web application pool identity running your InfoPath forms (or your claims-based user account) lacks the explicit backend permission to query the UPA via SOAP.
- Go to Central Administration > Application Management > Manage Service Applications.
- Select the row for your User Profile Service Application (do not click the link, just highlight the row).
- Click the Permissions button in the top ribbon.
- Add the Application Pool account of your SharePoint Web Application.
- Check the box for Full Control (or at least Retrieve User Profile Data for InfoPath Forms Services) and click OK.
- Next, click the Administrators button in the ribbon and ensure that same app pool account has appropriate administrative connection rights.
Because SharePoint SE relies heavily on claims-based authentication, legacy InfoPath SOAP queries using standard NTLM/Kerberos endpoints can fail if the server denies local loopback calls. Try converting the data connection within the InfoPath designer to use a Universal Data Connection (UDCX) file stored in a trusted data connection library, and configure it to use explicit authentication if necessary.
As you manage this migration to SharePoint Subscription Edition, please keep in mind a critical support timeline: InfoPath Forms Services support is officially ending on July 14, 2026. Beyond this rapidly approaching date, Microsoft will no longer provide security patches, bug fixes, or technical support for InfoPath rendering components. While your forms might continue to function temporarily after this date, relying on legacy InfoPath code tied to deprecated SOAP endpoints poses a high operational and security risk.
Moving forward, I highly recommend using this migration period to plan a transition from InfoPath to Power Apps (if connecting via hybrid environments). These modern frameworks natively query user profile properties via modern REST APIs or Microsoft Graph, completely bypassing legacy SOAP vulnerabilities.
Please apply the UPA application pool permissions and let me know if the forms successfully load the user profile data!
If the answer is helpful, please click "Accept Answer" and kindly upvote it. If you have extra questions about this answer, please click "Comment".
Note: Please follow the steps in our documentation to enable e-mail notifications if you want to receive the related email notification for this thread.