In order for FireStart to connect to the SharePoint server, additional permissions are required. These permissions cannot be set by the setup or configuration wizard:
- The service user must be a site collection administrator of the site collections FireStart will be using.
- To keep the assigned SharePoint permissions to a minimum while enabling external application access to the SharePoint Object Model an additional configuration step is necessary:
$webApp = Get-SPWebApplication http://sharepoint.contoso.com
$webApp.GrantAccessToProcessIdentity("<Domain>\<User-for-Service>")
The MSDN GrantAccessToProcessIdentity is explained here.
Normally, the service users of SharePoint are also granted permissions this way, although the configuration has to be performed as a farm service user.
Usage of SharePoint Farm
For this to work for multiple WebApplications in a SharePoint farm, the FireStart server has to be configured as follows:
For each WebApplication from which events should be handled by FireStart, create a new string value named
<DNS_Name_WebApplication>
with the value
<DNS_Name_WebApplication; Frontend_Hostname1;Frontend_Hostname2;…;Frontend_HostnameN[;ApplicationServer_Hostname]> under HKLM\SOFTWARE\PROLOGICS\PSA\SharePoint\FarmConfig.
In case events from the application server should be handled as well (e.g., because of a script running on the AS that creates list items), the application server also has to be listed.
Business Entities are mapped to the DNS name of the SharePoint farm or to the name of the web application. The load balancer has to route the SharePoint traffic to the SP frontends.
In case you want to use multiple WebApplications you just have to add and configure each WebApplication as mentioned above.