--- alias: operation-guide-security-portal-reports description: "Configure Security Portal authentication for reports, managing system user access and report folder permissions" --- # Configure Security Portal to authenticate access to reports The Critical Manufacturing MES installation can configure the Security Portal to authenticate access to SQL Server Reporting Services reports. This page describes how the Security Portal connects to the report server. ## Report Server Access During the installation, DevOps Center asks for the address and an account of SQL Server Reporting Services: **Web Portal URL**, **Web Service URL**, **Username**, and **Password**. The Security Portal Forward Auth service requests the reports from the report server with this account on behalf of every user, so the account must have access to all the reports that users can open. To configure report permissions in SQL Server Reporting Services, see [[operation-guide-analyticssecurity]]. When a user opens a report, the request is routed to the Forward Auth service, which: 1. Checks with the MES Host whether the user has access to the requested report. 2. Returns `403 Forbidden` if the user doesn't have access. 3. Otherwise, requests the report from the report server with the configured account and returns it to the user. Supporting files of the report page, such as stylesheets and icons, are forwarded without the access check. ## Integration with Report Folder functionality When the Security Portal checks with the MES Host whether the user has access to a report, the MES Host takes into account the configuration of the Report Folders of the system, which allows users with certain Roles to access the reports inside specific report folders. Because only one user is used to perform the HTTP requests to the report server, the security access features of SQL Server Reporting Services cannot be used to control what reports each specific user can access. Those access controls need to implemented as Roles in the Critical Manufacturing MES and then the Report Folders can be configured to allow only users with a certain Role to access the reports that are inside them. For more information, see [[user-guide-security-report-folders]]. ## Sequence Flow The following diagram shows how a report request is authenticated, both when the user has access to the report and when they don't. ```mermaid sequenceDiagram participant User as Browser participant Traefik participant FA as Forward Auth participant Host as MES Host participant SSRS as SQL Server Reporting Services User->>Traefik: Open report Traefik->>FA: Route request to the report fetch endpoint FA->>Host: Check user access to the report alt User has access Host-->>FA: Access granted FA->>SSRS: Request report with the configured account SSRS-->>FA: Report FA-->>User: 200 OK with the report else User doesn't have access Host-->>FA: Access denied FA-->>User: 403 Forbidden end ```