Skip to main content

Installing IAM Console

Guide to install IAM Console using Docker. 

Prerequisites

Repositories

Soffid 3 uses the public Docker Hub: https://hub.docker.com/r/soffid/iam-console/

Soffid 4 uses the Google Cloud Artifact Registry, contact to Soffid when you need access to it.

Video Tutorial

Installation

Soffid variables

To configure IAM console, the following environment variables can be set:

Variable Description Example
DB_URL JDBC URL

jdbc:mariadb://dbcontainer/soffid

jdbc:oracle:thin:@HOST:PORT:SID
jdbc:oracle:thin:@//HOST:PORT/SERVICENAME

DB_USER Database user

Soffid

DB_PASSWORD Database password

5uper5ecret

JAVA_OPT Java virtual machine options

-Xmx4096m

SECURE (optional) Enables the Java Security Manager

true

SOFFID_TRUSTED_SCRIPTS

(optional) Allows you to use insecure classes. 

Available since console version 3.5.6

true

false

HIDE_MENU

(optional) Allows you to hide the Console menu options. 

Available since console version 3.5.6

soffid.admin

You can choose the proper option from the Console.yaml file.

AUTH_METHODS

(optional) Allows to force the authentication mechanisms. This configuration overrides the one configured in the authentication option of the Soffid console.

Available since console version 3.5.6

Options

SAML

PASSWORD

SAML PASSWORD

EXTERNAL_URL

(optional) Allows to override host name configuration when there are two Consoles.

Available since console version 3.5.9.5

https://soffid.lab.internal.com

SECURE_SCRIPT

Available since console 3.6.72 and console 4.0.56.

Allows to execute scripts with trusted and custom tructed clasess

true

false (by default)

TRUSTED_CLASSES

Available since console 3.6.72 and console 4.0.56.

Add new trusted classes (all package) separated by space


SOFFID_DISABLE_GEOIP

Available since console version 4.0.67

This allows to disable the GeoIP service. It is useful when a Soffid instance does not have Internet access.

true

false (by default)

Dababase tunning variables

Additional parameters to configure the database connections. Allows you to establish the min and the max of database connections: 

Variable Description Example
DBPOOL_MIN_IDLE The minimum number of connections should be kept in the pool at all times. 1 or 2
DBPOOL_MAX_IDLE The maximum number of connections should be kept in the pool at all times. between 10 and 15
DBPOOL_INITIAL The connection number will be established when the connection pool is started. 3 or 4
DBPOOL_MAX

The maximum number of active connections that can be allocated. If no value is indicated, the default value is 30.

The transaction fails if the maximum connections are reached within 30 seconds and no connection is released.

25

Volumes

The following volumes must be defined by default:

Volume Usage
/opt/soffid/iam-console-4/logs Console log files /opt/soffid/iam-console-4/logs
/opt/soffid/iam-console-4/index

Text search engine index files. It can be erased at any time. The engine will regenerate the search engine. /opt/soffid/iam-console-4/index/

/opt/soffid/iam-console-4/conf Configuration files, including server.xml and tomee.xml files /opt/soffid/iam-console-4/conf

Docker commands

Here you have a sample command to start a docker container running IAM console, in this case the docker will be in a docker network, previously created. MariaDB docker is at the same network.

docker run -d \
   -e DB_URL=jdbc:mariadb://mariadb-service/soffid \
   -e DB_USER=soffid \
   -e DB_PASSWORD=soffid \
   --name=iam-console \
   --publish=8080:8080 \
   --network=soffidnet \
   soffid/iam-console

To see console log files, execute:

docker logs -f iam-console

Ports

By default, the 8080 port will be exposed. When the TLS connection is going to be configured, add the tag --publish=443:443 to publish the TLS port.

Access to the Console

When the console is created, the password for the user admin will be changeit and it will be valid for 24 hours.

Now you can connect the Soffid Console http://localhost:8080/soffid/The first thing you must do is to change the admin user password. 

Next Step: Installing Sync server