In this article:

Step 1. Preparing Domain Environment

Step 2. Setting Up BI Server

Step 3. Setting Up Integrated Domain Authentication

Step 4. Saving Credentials for DBMS Connection

Step 5. Using Built-in Authorization

Step 6. Setting Up Browser

Step 7. Login

Setting Up Integrated Domain Authentication with Built-in Authorization

To set up integrated domain authentication with built-in authorization on Apache2 web server in Linux OS, follow the steps given below. Simultaneous use of integrated domain authentication with built-in authorization is available only in working with PostgreSQL DBMS.

IMPORTANT. Built-in authorization is set up once during primary system setup.

Step 1. Preparing Domain Environment

Foresight Analytics Platform gets information about domain security subjects from the domain catalog service or global catalog that must be set up in the computer network. Interaction with the directory service is executed via the LDAP/LDAPS protocol.

If the catalog service of the current domain (global catalog of the current network) is based on Active Directory, and Foresight. Analytics Platform works in Windows OS, advanced settings do not need to be determined to connect to this service.

If the directory service is located at Linux OS server, or it is required to connect to the directory service in the network other than the current one (Linux or Windows OS server), execute the following operations depending on the operating system in use:

Install necessary packages depending on Linux OS version:

  • Debian-based distributions:

sudo apt install libldap-2.4-2 libsasl2-modules-gssapi-mit

  • RedHat-based distributions:

sudo yum install openldap openldap-clients

  • ALT Linux:

sudo apt-get install openldap-common

  1. Download and run the OpenSSL installer. The default installation folder for OpenSSL: C:\Program Files\OpenSSL-Win64.

  2. Add the path to the bin folder - C:\Program Files\OpenSSL-Win64\bin to the PATH system variable.

Preparing domain environment also includes:

NOTE. If user properties are changed, keytab file should be recreated.

Step 2. Setting Up BI Server

When installing BI server, configuration files of the Apache2 instance are located in the folder by default:

To set up BI server:

  1. Install necessary packages depending on Linux OS version:

    • Debian-based distributions:

sudo apt install libsasl2-modules-gssapi-mit libapache2-mod-auth-gssapi

    • RedHat-based distributions:

sudo yum install cyrus-sasl-gssapi mod_session mod_auth_gssapi

    • ALT Linux:

sudo apt-get install apache2-mod_auth_gssapi libsasl2-plugin-gssapi

  1. Copy configuration files of Apache2 web server to the Apache2 instance with BI server:

cp /etc/apache2/mods-available/auth_gssapi.load /etc/apache2-fp10.x/mods-available/
cp /etc/apache2/mods-available/session.load /etc/apache2-fp10.x/mods-available/
cp /etc/apache2/mods-available/session_cookie.load /etc/apache2-fp10.x/mods-available/

cp /etc/httpd/conf.modules.d/01-session.conf /etc/httpd-fp10.x/conf.modules.d/
cp /etc/httpd/conf.modules.d/10-auth_gssapi.conf /etc/httpd-fp10.x/conf.modules.d/

cp /etc/httpd2/conf/mods-available/auth_gssapi.load /etc/httpd2-fp10.x/conf/mods-available/
cp /etc/httpd2/conf/mods-available/session.load /etc/httpd2-fp10.x/conf/mods-available/
cp /etc/httpd2/conf/mods-available/session_cookie.load /etc/httpd2-fp10.x/conf/mods-available/

  1. Enable the missing Apache2 modules in Debian-based distributions and in ALT Linux:

a2enmod-fp10.x auth_gssapi
a2enmod-fp10.x authz_user
a2enmod-fp10.x authn_core
a2enmod-fp10.x headers
a2enmod-fp10.x session
a2enmod-fp10.x session_cookie
a2enmod-fp10.x rewrite
a2enmod-fp10.x setenvif

  1. Enable the mod_request.so unit in RedHat-based distributions. Uncomment the string in the /etc/httpd-fp10.x/conf.modules.d/00-base.conf file:

LoadModule request_module modules/mod_request.so

  1. Change the configuration file of BI server fp10.x-biserver.conf located in the folder:

    • /etc/apache2-fp10.x/mods-available in Debian-based distributions.

    • /etc/httpd-fp10.x/conf.d in RedHat-based distributions.

    • /etc/httpd2-fp10.x/conf/mods-available in ALT Linux.

Cats the file contents to the following view:

# Foresight AnalyticsPlatform
LoadModule axis2_module "/opt/foresight/fp10.x-biserver/bin/libmod_axis2_2_4.so"
Axis2RepoPath "/opt/foresight/fp10.x-biserver/bin"
Axis2LogFile "/opt/foresight/fp10.x-biserver/var/log/axis2.log"
Axis2LogLevel info
Axis2ServiceURLPrefix services
<Location /FPBI_App_v10.x/axis2>
    SetHandler axis2_module
    Require valid-user
    AuthType GSSAPI
    GssapiAllowedMech krb5
    GssapiCredStore keytab:<path to keytab file for HTTP service>
    GssapiDelegCcacheDir /opt/foresight/fp10.x-biserver/var/cache
    GssapiUseSessions On
    <IfModule mod_session.c>
        Session on
    </IfModule>
    <IfModule mod_session_cookie.c>
        SessionCookieName gssapi_sessionpath=/;httponly;secure;
    </IfModule>
</Location>

The file contains path to main files of BI server located in the /opt/foresight/fp10.x-biserver folder by default.

  1. Restart the BI server.

After executing the operations the BI server is set up.

In Active Directory one can use unlimited and limited delegation:

GssapiUseS4U2ProxyOn
GssapiCredStore client_keytab:<path to keytab file for HTTP service>
GssapiCredStore ccache:FILE:/opt/foresight/fp10.x-biserver/var/cache/krb5ccache

Astra Linux Directory uses unlimited delegation.

Step 3. Setting Up Integrated Domain Authentication

To set up integrated domain authentication:

  1. Set up two repository connections in the Metabases.xml file:

The example of the Metabases.xml file:

<PP>
  <Metabases>
    <REPOSITORY_ID Name="WAREHOUSE" Authentication="1" Driver="POSTGRES" Package="STANDARDSECURITYPACKAGE">
        <LogonData DATABASE="DATABASE_NAME" SERVER="SERVER_DATABASE" CASESENSITIVE="true"/>
    </REPOSITORY_ID>
    <REPOSITORY_ID_INT_DOMAIN Name="WAREHOUSE_INT_DOMAIN" Authentication="2" Driver="POSTGRES" Package="STANDARDSECURITYPACKAGE">
      <LogonData DATABASE="DATABASE_NAME" SERVER="SERVER_DATABASE" CASESENSITIVE="true"/>
    </REPOSITORY_ID_INT_DOMAIN>
  </Metabases>
</PP>
  1. Determine full domain DNS name of server:

For Apache2 web server specify the ServerName parameter inside the <VirtualHost> tag in the file:

  1. Set the parameters of comparison between directory service attributes and security subject attributes in Foresight Analytics Platform and specify user credentials to connect to the directory service in the settings.xml file. If required, connect additional controllers for domains or subdomains.

  2. Restart BI server and web application back end.

  3. Add domain users and/or groups will be displayed in the security manager.

After executing the operations the integrated domain authorization is set up.

Step 4. Saving Credentials for DBMS Connection

When built-in authorization is used, DBMS connection is established using technological account credentials. Make sure that in the security manager a user is created, whose credentials will be used as a technological account.

To save technological account credentials, use the PP.Util utility with the save_creds parameter and specify the DBOWNER keyword:

./PP.Util_start.sh /save_creds metabase_id login [password] DBOWNER

PP.Util.exe /save_creds metabase_id login [password] DBOWNER

After example execution:

To apply settings from the Metabases.xml file in the web application, restart the BI server.

Step 5. Using Built-in Authorization

To use built-in authorization, in the security manager select the Use Built-in Authorization checkbox on the Access Control tab in the Policies Editor section.

Step 6. Setting Up Browser

To set up browser, enable the server and allowed nodes or local network, for example:

about:config

Step 7. Login

To log in to the system, click the Login button in the login dialog box:

After executing the operations, domain user authorization is executed by means of Foresight Analytics Platform. Communication with DBMS and repository connection are executed using the saved technological account credentials.

See also:

Setting Up Built-in Authorization