One of the most popular questions we get is how is the data from the OLAP cube transferred to Flexmonster Pivot? Flexmonster Accelerator serves as an additional server-side layer that helps to restrict external access to the database. When connecting to the data source inside the pivot table, the URL to the Accelerator is used instead of the SSAS server URL. Flexmonster Pivot sends the requests to the Accelerator, then Flexmonster Accelerator communicates with the SSAS server and gets the necessary data. This data is then sent back to the client from the Accelerator. The flowchart below depicts the process:
To ensure server-side data security, the Accelerator doesn’t accept requests from any other web applications, only from Flexmonster Pivot. It is not possible to send an HTTP request directly to Flexmonster Accelerator without using Flexmonster Pivot. The Accelerator also doesn’t accept a response/request that was tampered with during the communication process. Each response/request contains a checksum for the package to ensure that it was not changed.
There is a requirement to open an additional port for the Accelerator on the server. This requirement is a strong restriction imposed by the browser’s security, not by Flexmonster.
Due to the same-origin policy, the browser only allows requests that come from the same origin. Cross-origin resource sharing (CORS) allows web applications to make cross-domain requests. Since the additional port for the Accelerator is opened, CORS must be enabled. Visit enable-cors.org to find out how to set up CORS on different types of servers.
Thus, it is necessary to use an extra port and enable CORS, and there is no workaround. Otherwise, the clients’ browsers will not permit communication with the server.