After installing Identity Reporting, you can still modify many of the installation properties. To make changes, run the configuration update utility (configupdate.sh) file.
If you change any setting for Identity Reporting with the configuration tool, you must restart Tomcat for the changes to take effect. However, you do not need to restart the server after making changes in the web user interface for Identity Reporting.
The installer creates and configures the Data Collection Services Driver and the Managed System Gateway Driver for Identity Reporting.
Once the Managed System Gateway driver is configured, we recommend you to modify the KMO to SSL EC Certificate DNS. To modify the KMO, perform the following steps:
Log in to OpenText Identity Console.
From IDM Administration, click the driverset containing the Managed System Gateway Driver.
Click Managed System Gateway Driver icon and go to Driver configuration.
In the Configuration tab, click Driver Parameters drop down and perform the following steps:
Select show from the Show connection parameters field.
In the KMO Name field, change the value from SSL CertificateDNS to SSL EC Certificate DNS.
Click Apply and then click OK.
Log in to Identity Reporting application.
Click Data Sources.
Click Add.
In the Add Data Source dialog box, click the Select from predefined list radio button.
Select IDMDCSDataSource.
Click Save.
Identity Reporting provides the ability to run reports against remote Oracle databases. Ensure that you have the ojbc8.jar file on the server where you are running the Oracle Database.
To manually generate the database schema after installation, perform one of the following procedures for your database:
Add the required roles to the database using the create_dcs_roles_and_schemas.sql and create_rpt_roles_and_schemas.sql SQLs located in /opt/netiq/idm/apps/IDMReporting/sql/.
Log in to PGAdmin as a postgres user.
Run the Query tool.
To create Create_rpt_roles_and_schemas and Create_dcs_roles_and_schemas procedures, copy the content from these SQLs to the Query tool and execute against the connected database.
To create IDM_RPT_DATA, IDM_RPT_CFG, and IDMRPTUSER roles, execute the following commands in the given order:
Select CREATE_DCS_ROLES_AND_SCHEMAS('<Set pwd for IDM_RPT_DATA>', '<Set pwd for IDMRPTUSER>');Select CREATE_RPT_ROLES_AND_SCHEMAS('<Set pwd for IDM_RPT_CFG>');
For example, if the password for IDM_RPT_DATA, IDMRPTUSER, and IDM_RPT_CFG are password, password1, and password2 respectively, then you must execute the following commands:
Select CREATE_DCS_ROLES_AND_SCHEMAS('password', 'password1');Select CREATE_RPT_ROLES_AND_SCHEMAS('password2');Copy the content of get_formatted_user_dn.sql from /opt/netiq/idm/apps/IDMReporting/sql/ to the Query tool and execute against the connected database.
NOTE:The get_formatted_user_dn.sql function must be added manually when you select database schema creation option as File. If you select the database schema creation option as Now or Startup, the installer will add this function to the database.
Log in to SQL Developer as a database admin (sysdba) user.
Create Create_rpt_roles_and_schemas by copying the content of the following SQL into SQL Developer and executing it against the connected database:
alter session set "_ORACLE_SCRIPT"=true;
CREATE OR REPLACE PROCEDURE create_rpt_roles_and_schemas(
idm_rpt_cfg_password character varying)
AUTHID CURRENT_USER
AS
cnt number;
BEGIN
/* Create user IDM_RPT_CFG if it does not exist */
select count(*) into cnt from ALL_USERS WHERE USERNAME = 'IDM_RPT_CFG';
IF cnt = 0 THEN
execute immediate 'CREATE USER idm_rpt_cfg IDENTIFIED BY ' || idm_rpt_cfg_password;
DBMS_OUTPUT.put_line('Created user idm_rpt_cfg');
END IF;
/* Grant rights to the idm_rpt_cfg user */
execute immediate 'GRANT CREATE SESSION, CREATE TABLE, CREATE VIEW, CREATE PROCEDURE, CREATE SEQUENCE, CREATE TRIGGER, UNLIMITED TABLESPACE to idm_rpt_cfg';
DBMS_OUTPUT.put_line('Granted rights to user idm_rpt_cfg');
execute immediate 'alter session set "_ORACLE_SCRIPT"=true';
execute immediate 'alter session set "_ORACLE_SCRIPT"=false';
END;
/
exec CREATE_RPT_ROLES_AND_SCHEMAS('Novell123');
/
alter session set "_ORACLE_SCRIPT"=false;
/Log in to SQL Developer as a System user and create Create_dcs_roles and schemas by copying the content of the following SQL into SQL Developer and executing it against the connected database:
alter session set "_ORACLE_SCRIPT"=true;
CREATE OR REPLACE PROCEDURE create_dcs_roles_and_schemas(
idm_rpt_data_password character varying,
idmrptuser_password character varying)
AUTHID CURRENT_USER
AS
cnt number;
BEGIN
/* Create user IDM_RPT_DATA if it does not exist already */
select count(*) into cnt from ALL_USERS WHERE USERNAME = 'IDM_RPT_DATA';
IF cnt = 0 THEN
execute immediate 'CREATE USER idm_rpt_data IDENTIFIED BY ' || idm_rpt_data_password;
DBMS_OUTPUT.put_line('Created user idm_rpt_data');
END IF;
/* Grant rights to the idm_rpt_data user */
execute immediate 'GRANT CREATE SESSION, CREATE TABLE, CREATE VIEW, CREATE PROCEDURE, CREATE SEQUENCE, CREATE TRIGGER, UNLIMITED TABLESPACE to idm_rpt_data';
execute immediate 'GRANT CREATE PUBLIC SYNONYM to IDM_RPT_DATA';
execute immediate 'GRANT SELECT ON DBA_SEGMENTS TO IDM_RPT_DATA';
DBMS_OUTPUT.put_line('Granted rights to user idm_rpt_data');
/* Create user IDMRPTUSER if it does not exist */
select count(*) into cnt from ALL_USERS WHERE USERNAME = 'IDMRPTUSER';
IF cnt = 0 THEN
execute immediate 'CREATE USER idmrptuser IDENTIFIED BY ' || idmrptuser_password;
DBMS_OUTPUT.put_line('Created user idmrptuser');
END IF;
/* Grant rights to the idmrptuser user */
execute immediate 'GRANT CREATE SESSION to idmrptuser';
execute immediate 'GRANT SELECT ON sys.all_tables TO idmrptuser';
DBMS_OUTPUT.put_line('Granted rights to user idmrptuser');
END;
/To create IDM_RPT_CFG role, execute the following command:
begin
CREATE_RPT_ROLES_AND_SCHEMAS('<Set pwd for IDM_RPT_CFG>');
end;
For example, if the password for IDM_RPT_CFG is password, then you must execute the following command:
begin
CREATE_RPT_ROLES_AND_SCHEMAS('password');
end;
Assign the following permission:
GRANT CREATE PUBLIC SYNONYM to IDM_RPT_CFG;
Copy the content of get_formatted_user_dn-oracle.sql to SQL Developer from /opt/netiq/idm/apps/IDMReporting/sql/ and execute against the connected database.
NOTE:The get_formatted_user_dn-oracle.sql function must be manually added to the database when you select database schema creation option as File. If you select the database schema creation option as Now or Startup, the installer will add this function to the database.
Execute delete_create_dcs_roles_and_schemas-mssql.sql and delete_get_formatted_user_dn-mssql.sql.
Add the required roles to the database using create_dcs_roles_and_schemas.mssql and create_rpt_roles_and_schemas.mssql from /opt/netiq/idm/apps/IDMReporting/sql/.
Log in to SQL Developer as a database admin user.
To create Create_rpt_roles_and_schemas and Create_dcs_roles_and_schemas procedures, copy the content from create_dcs_roles_and_schemas.mssql and create_rpt_roles_and_schemas.mssql to SQL Developer and execute against the connected database.
To create IDM_RPT_DATA, IDM_RPT_CFG, and IDMRPTUSER roles, execute the following commands in the given order:
execute CREATE_DCS_ROLES_AND_SCHEMAS '<Set pwd for IDM_RPT_DATA>', '<Set pwd for IDMRPTUSER>'
execute CREATE_RPT_ROLES_AND_SCHEMAS \'<Set pwd for IDM_RPT_CFG>\'
Copy the content of get_formatted_user_dn.sql to SQL Developer from /opt/netiq/idm/apps/IDMReporting/sql/ and execute against the connected database.
Locate the following .sql files in /opt/netiq/idm/apps/IDMReporting/sql.
DbUpdate-001-run-as-idm_rpt_data.sql
DbUpdate-01-run-as-idm_rpt_cfg.sql
DbUpdate-02-run-as-idm_rpt_cfg.sql
DbUpdate-03-run-as-idm_rpt_data.sql
DbUpdate-04-run-as-idm_rpt_data.sql
DbUpdate-05-run-as-idm_rpt_data.sql
DbUpdate-06-run-as-idm_rpt_cfg.sql
Clear the database checksums
To run the clearchsum command with each .sql, append the following line at the beginning of each file:
update DATABASECHANGELOG set MD5SUM = NULL go
The modified content should look similar to the following:
-- ********************************************************************* -- Update Database Script -- ********************************************************************* -- Change Log: IdmDcsDataDropViews.xml -- Ran at: 2/23/18 5:17 PM -- Against: IDM_RPT_CFG@jdbc:oracle:thin:@192.168.0.1:1521/orcl -- Liquibase version: 3.5.1 -- ********************************************************************* update databasechangelog set md5sum = null go
Run each .sql with the corresponding user.
Commit the changes to the database.
In previous versions of OpenText Identity Manager, long data fields failed to synchronize data with the Identity Reporting server due to character limitations. OpenText Identity Manager 4.10 provides an option to increase the character limitation with PostgreSQL, Oracle, and MS SQL databases for the following tables and their respective columns:
|
Name of the Table |
Name of the Column |
|---|---|
|
idm_rpt_data.idmrpt_idv_ent_bindings |
ent_param_str |
|
idm_rpt_data.idmrpt_idv_ent_bindings |
ent_param_val |
|
idm_rpt_data.idmrpt_idv_identity_trust |
idv_ent_ref |
|
idm_rpt_data.idmrpt_idv_identity_trust |
trust_params |
|
idm_rpt_data.idmrpt_idv_ent_bindings_hist |
ent_param_str |
|
idm_rpt_data.idmrpt_idv_ent_bindings_hist |
ent_param_val |
|
idm_rpt_data.idmrpt_idv_identity_trust_hist |
idv_ent_ref |
|
idm_rpt_data.idmrpt_idv_identity_trust_hist |
trust_params |
For PostgreSQL, the character limitation has been increased automatically with OpenText Identity Manager 4.10 for all the fields as mentioned in the above table.
For Oracle, you must run the alter_column_length-oracle.sql script from /opt/netiq/idm/apps/IDMReporting/sql/ directory to increase the character limitation for all the columns as mentioned in above table.
For MS SQL, you must run the alter_column_length-mssql.sql script from /opt/netiq/idm/apps/IDMReporting/sql/ directory to increase the character limitation for indexed columns only. In this case, ENT_PARAM_STR is the only indexed column under the table idmrpt_idv_ent_bindings.
Identity Reporting incorporates several REST APIs that enable different features within the reporting functionality. These REST API uses the OAuth2 protocol for authentication.
On Tomcat, the rptdoc war and the dcsdoc war are automatically deployed when Identity Reporting is installed.
If your PostgreSQL database is installed on a separate server, you need to change the default settings in the postgresql.conf and pg_hba.conf files in the remote database.
Change the listening address in the postgresql.conf file.
By default, PostgreSQL allows to listen for the localhost connection. It does not allow a remote TCP/IP connection. To allow a remoteTCP/IP connection, add the following entry to the /opt/netiq/idm/postgres/data/postgresql.conf file:
listen_addresses = '*'
If you have multiple interfaces on the server, you can specify a specific interface to be listened.
Add a client authentication entry to the pg_hba.conf file.
By default, PostgreSQL accepts connections only from the localhost. It refuses remote connections. This is controlled by applying an access control rule that allows a user to log in from an IP address after providing a valid password (the md5 keyword). To accept a remote connection, add the following entry to the /opt/netiq/idm/postgres/data/pg_hba.conf file.
host all all 0.0.0.0/0 md5
For example, 192.168.104.24/26 trust
This works only for IPv4 addresses. For IPv6 addresses, add the following entry:
host all all ::0/0 md5
If you want to allow connection from multiple client computers on a specific network, specify the network address in the CIDR-address format in this entry.
The pg_hba.conf file supports the following client authentication formats.
local database user authentication-method [authentication-option]
host database user CIDR-address authentication-method [authentication-option]
hostssl database user CIDR-address authentication-method [authentication-option]
hostnossl database user CIDR-address authentication-method [authentication-option]
Instead of CIDR-address format, you can specify the IP address and the network mask in separate fields using the following format:
host database user IP-address IP-mask authentication-method [authentication-option]
hostssl database user IP-address IP-mask authentication-method [authentication-option]
hostnossl database user IP-address IP-mask authentication-method [authentication-option]
Test the remote connection.
Restart the remote PostgreSQL server.
Log in to the server remotely using the username and password.
Navigate to the location where you installed OSP and edit the following entries in configupdate.sh.properties file :
app_versions="ua#<version>,rpt#<version>" sso_apps=ua,rpt
Example:
app_versions="ua#4.10.0,rpt#7.4.0" sso_apps=ua,rpt
Launch configupdate and update client details of Identity Reporting in the following fields:
Reporting client
Data collection service
DCS Driver
Restart the tomcat of OSP.
During installation, if you have selected create schema for Identity Reporting as Startup or File, ensure you do the following:
Log in to Identity Reporting.
Delete the existing datasource and report definitions from the Identity Reporting repository.
Add the new OpenText Identity Manager Data Collection Services datasource.
Also, restart Tomcat after you have started it once to ensure that the available database runs properly.