Kaspersky Security Center

Configuring the DBMS account for work with PostgreSQL and Postgres Pro

May 3, 2024

ID 242538

Prerequisites

Before you assign rights to the DBMS account, perform the following actions:

  1. Make sure that you log in to the system under the local administrator account.
  2. Install an environment for working with PostgreSQL and Postgres Pro.

Configuring the DBMS account to install Administration Server (automatic creation of the Administration Server database)

To configure the DBMS account for the Administration Server installation:

  1. Run an environment for working with PostgreSQL and Postgres Pro.
  2. Choose a Postgres role to access the DBMS. You can use one of the following roles:
    • The postgres user (the default Postgres role).

      If you use the postgres user, you do not need to grant additional rights to it.

      By default, the postgres user does not have a password. However, a password is required to install Kaspersky Security Center Linux. To set a password for the postgres user, run the following script:

      ALTER USER user_name WITH PASSWORD '<password>';

    • A new Postgres role.

      If you want to use a new Postgres role, create this role, and then grant it the CREATEDB privilege. To do this, run the following script (in this script, the role is KCSAdmin):

      CREATE USER "KSCAdmin" WITH PASSWORD '<password>' CREATEDB;

      The created role will be used as an owner of the Administration Server database (hereinafter also referred to as the Server database).

  3. Install Administration Server.

After the installation finishes, the Server database is automatically created and Administration Server is ready to use.

Configuring the DBMS account to install Administration Server (manual creation of the Administration Server database)

To configure the DBMS account for the Administration Server installation:

  1. Run an environment for working with Postgres.
  2. Create a new Postgres role and an Administration Server database. Then, grant all privileges to the role on the Administration Server database. To do this, log in under the postgres user in the postgres database, and then run the following script (in this script, the role is KCSAdmin, the Administration Server database name is KAV):

    CREATE USER "KSCAdmin" WITH PASSWORD '<password>';

    CREATE DATABASE "KAV" ENCODING 'UTF8' OWNER "KSCAdmin";

    GRANT ALL PRIVILEGES ON DATABASE "KAV" TO "KSCAdmin";

    If the error "New encoding (UTF8) is incompatible with the encoding of the template database" occurs, create a database by using the command:
    CREATE DATABASE "KAV" ENCODING 'UTF8' OWNER "KSCAdmin" TEMPLATE template0;
    instead of:
    CREATE DATABASE "KAV" ENCODING 'UTF8' OWNER "KSCAdmin";

  3. Grant the following privileges to the created Postgres role:
    • Privileges on all tables in the public schema: ALL
    • Privileges on all sequences in the public schema: ALL

    To do this, log in under the postgres user in the Server database, and then run the following script (in this script, the role is KCSAdmin):

    GRANT ALL PRIVILEGES ON ALL TABLES IN SCHEMA "public" TO "KSCAdmin";

    GRANT ALL PRIVILEGES ON ALL SEQUENCES IN SCHEMA "public" TO "KSCAdmin";

  4. Install Administration Server.

After the installation finishes, the Administration Server will use the created database to store the Administration Server data. Administration Server is ready to use.

Did you find this article helpful?
What can we do better?
Thank you for your feedback! You're helping us improve.
Thank you for your feedback! You're helping us improve.