6.8 設定 Identity Reporting

安裝 Identity Reporting 後,您仍可以修改許多安裝內容。若要進行變更,請執行組態更新公用程式 (configupdate.sh) 檔案。

如果使用組態工具變更了 Identity Reporting 的任何設定,您必須重新啟動 Tomcat 才能使變更生效。但是,在 Identity Reporting 的 Web 使用者介面中進行變更後,不需要新啟動伺服器。

6.8.1 設定受管理系統閘道驅動程式

安裝程式將為 Identity Reporting 建立並設定資料收集服務驅動程式和受管理系統閘道驅動程式。

設定受管理系統閘道驅動程式後,NetIQ 建議您將 KMO 修改為 SSL EC 證書 DNS。若要修改 KMO,請執行以下步驟:

  1. 登入 iManager。

  2. 按一下 Identity Manager 管理 > Identity Manager 綜覽

  3. 瀏覽並選取驅動程式集物件,然後按一下搜尋

  4. 在受管理系統閘道驅動程式圖示的右上角,按一下編輯內容

  5. 驅動程式組態索引標籤中執行以下步驟:

    1. 顯示連接參數欄位中選取顯示

    2. KMO 名稱欄位中,將值從 SSL CertificateDNS 變更為 SSL EC 證書 DNS

    3. 按一下套用,然後按一下確定

6.8.2 在「身分資料收集服務」頁面中手動新增資料來源

  1. 登入 Identity Reporting 應用程式。

  2. 按一下資料來源

  3. 按一下新增

  4. 新增資料來源對話方塊中,按一下從預定義清單中選取選項圓鈕。

  5. 選取 IDMDCSDataSource

  6. 按一下儲存

6.8.3 對 Oracle 資料庫執行報告

Identity Reporting 可讓您針對遠端 Oracle 資料庫執行報告。確定執行 Oracle 資料庫的伺服器上存在 ojbc8.jar 檔案。

6.8.4 手動產生資料庫綱要

若要在安裝後手動產生資料庫綱要,請對您的資料庫執行下列程序之一:

針對 PostgreSQL 資料庫設定 Create_rpt_roles_and_schemas.sql 綱要

  1. 使用位於 /opt/netiq/idm/apps/IDMReporting/sql/ 中的 create_dcs_roles_and_schemas.sqlcreate_rpt_roles_and_schemas.sql SQL,將所需的角色新增至資料庫。

  2. 以 postgres 使用者身分登入 PGAdmin。

  3. 執行查詢工具。

  4. 若要建立 Create_rpt_roles_and_schemasCreate_dcs_roles_and_schemas 程序,請將這些 SQL 中的內容複製到查詢工具,然後對連接的資料庫執行指令。

  5. 若要建立 IDM_RPT_DATAIDM_RPT_CFGIDMRPTUSER 角色,請依給定順序執行以下指令:

    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>');

    例如,如果 IDM_RPT_DATAIDMRPTUSERIDM_RPT_CFG 的密碼分別是 passwordpassword1password2,則您必須執行以下指令:

    Select CREATE_DCS_ROLES_AND_SCHEMAS('password', 'password1');
    Select CREATE_RPT_ROLES_AND_SCHEMAS('password2');
  6. /opt/netiq/idm/apps/IDMReporting/sql/get_formatted_user_dn.sql 的內容複製到查詢工具,然後對連接的資料庫執行這些指令。

    附註:如果針對資料庫綱要建立選項選取檔案,則必須手動新增 get_formatted_user_dn.sql 函數。如果針對資料庫綱要建立選項選取現在啟動,安裝程式會將此函數新增至資料庫。

針對 Oracle 資料庫設定 Create_rpt_roles_and_schemas.sql 綱要

  1. 使用 /opt/netiq/idm/apps/IDMReporting/sql/ 中的 create_dcs_roles_and_schemas-orcale.sqlcreate_rpt_roles_and_schemas-orcale.sql,將所需的角色新增至資料庫。

  2. 以資料庫管理員 (sysdba) 使用者身分登入 SQL Developer。

  3. 若要建立 Create_rpt_roles_and_schemasCreate_dcs_roles_and_schemas 程序,請將這些 SQL 中的內容複製到 SQL Developer,然後對連接的資料庫執行指令。

  4. 若要建立 IDM_RPT_DATAIDM_RPT_CFGIDMRPTUSER 角色,請依給定順序執行以下指令:

    begin
    CREATE_DCS_ROLES_AND_SCHEMAS('<Set pwd for IDM_RPT_DATA>', '<Set pwd for IDMRPTUSER>');
    end;
    
    begin
    CREATE_RPT_ROLES_AND_SCHEMAS('<Set pwd for IDM_RPT_CFG>');
    end; 

    例如,如果 IDM_RPT_DATAIDMRPTUSERIDM_RPT_CFG 的密碼分別是 passwordpassword1password2,則您必須執行以下指令:

    begin
    CREATE_DCS_ROLES_AND_SCHEMAS('password', 'password1');
    end;
    
    begin
    CREATE_RPT_ROLES_AND_SCHEMAS('password2');
    end; 
  5. 指定以下許可權:

    GRANT CREATE PUBLIC SYNONYM to IDM_RPT_CFG;

  6. /opt/netiq/idm/apps/IDMReporting/sql/get_formatted_user_dn-oracle.sql 的內容複製到 SQL Developer,然後對連接的資料庫執行這些指令。

    附註:如果針對資料庫綱要建立選項選取檔案,則必須手動將 get_formatted_user_dn-oracle.sql 函數新增至資料庫。如果針對資料庫綱要建立選項選取現在啟動,安裝程式會將此函數新增至資料庫。

針對 MS SQL 資料庫設定 Create_rpt_roles_and_schemas.sql 綱要

  1. 執行 delete_create_dcs_roles_and_schemas-mssql.sqldelete_get_formatted_user_dn-mssql.sql

  2. 使用 /opt/netiq/idm/apps/IDMReporting/sql/ 中的 create_dcs_roles_and_schemas.mssqlcreate_rpt_roles_and_schemas.mssql,將所需的角色新增至資料庫。

  3. 以資料庫管理員使用者身分登入 SQL Developer。

  4. 若要建立 Create_rpt_roles_and_schemasCreate_dcs_roles_and_schemas 程序,請將 create_dcs_roles_and_schemas.mssqlcreate_rpt_roles_and_schemas.mssql 中的內容複製到 SQL Developer,然後對連接的資料庫執行這些指令。

  5. 若要建立 IDM_RPT_DATA、IDM_RPT_CFGIDMRPTUSER 角色,請依給定順序執行以下指令:

    execute CREATE_DCS_ROLES_AND_SCHEMAS '<設定 IDM_RPT_DATA 的密碼>', '<設定 IDMRPTUSER 的密碼>'

    execute CREATE_RPT_ROLES_AND_SCHEMAS \'<Set pwd for IDM_RPT_CFG>\'

  6. /opt/netiq/idm/apps/IDMReporting/sql/get_formatted_user_dn.sql 的內容複製到 SQL Developer,然後對連接的資料庫執行這些指令。

清除資料庫檢查總數

  1. /opt/netiq/idm/apps/IDMReporting/sql 中找到以下 .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

  2. 清除資料庫檢查總數

    1. 若要使用每個 .sql 執行 clearchsum 指令,請將下行附加到每個檔案的開頭:

      update DATABASECHANGELOG set MD5SUM = NULL
      go

      修改後的內容應該類似如下:

      -- *********************************************************************
      -- 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
    2. 以相應的使用者身分執行每個 .sql

  3. 將變更提交到資料庫。

(選擇性) 增加欄資料大小

在 Identity Manager 的先前版本中,因為存在字元數限制,長資料欄位無法與 Identity Reporting 伺服器進行資料同步。Identity Manager 4.8 提供了一個選項,可提高 PostgreSQL、Oracle 和 MS SQL 資料庫中以下表及其相應欄的字元數限制:

表名稱

欄名稱

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

  • 對於 PostgreSQL,Identity Manager 4.8 中已自動為上表所述的所有欄位提高了字元數限制。

  • 對於 Oracle,您必須從 /opt/netiq/idm/apps/IDMReporting/sql/ 目錄執行 alter_column_length-oracle.sql 程序檔,以提高上表所述的所有欄的字元數限制。

  • 對於 MS SQL,您必須從 /opt/netiq/idm/apps/IDMReporting/sql/ 目錄執行 alter_column_length-mssql.sql 程序檔,以僅提高已編製索引的欄的字元數限制。在此例中,ENT_PARAM_STR 是表 idmrpt_idv_ent_bindings 中唯一編製索引的欄。

6.8.5 部署 Identity Reporting 的 REST API

Identity Reporting 在報告功能中整合了多個用於啟用不同特性的 REST API。這些 REST API 使用 OAuth2 通訊協定進行驗證。

在 Tomcat 上,系統會在安裝 Identity Reporting 時自動部署 rptdoc wardcsdoc war

6.8.6 連接遠端 Remote PostgreSQL 資料庫

如果您的 PostgreSQL 資料庫安裝在其他伺服器上,則需要在該遠端資料庫的 postgresql.confpg_hba.conf 檔案中變更預設設定。

  1. postgresql.conf 檔案中變更監聽位址。

    依預設,PostgreSQL 允許監聽 localhost 連接,不允許遠端 TCP/IP 連接。若要允許遠端 TCP/IP 連接,請將下面的項目新增至 /opt/netiq/idm/postgres/data/postgresql.conf 檔案中:

    listen_addresses = '*'

    如果伺服器上有多個介面,可以指定要監聽的特定介面。

  2. 將用戶端驗證項目新增至 pg_hba.conf 檔案中。

    依預設,PostgreSQL 只接受來自 localhost 的連接。它會拒絕遠端連接。透過套用存取控制規則來控制此行為,該規則允許使用者在提供有效密碼 (md5 關鍵字) 後從某個 IP 位址登入。若要接受遠端連接,請將下面的項目新增至 /opt/netiq/idm/postgres/data/pg_hba.conf 檔案中。

    host all all 0.0.0.0/0 md5

    例如,192.168.104.24/26 trust

    這僅適用於 IPv4 位址。對於 IPv6 位址,請新增以下項目:

    host all all ::0/0 md5

    如果您要允許來自特定網路上多部用戶端電腦的連接,請採用 CIDR 位址格式在此項目中指定網路位址。

    pg_hba.conf 檔案支援以下用戶端驗證格式。

    • 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]

    您可以使用以下格式在單獨的欄位中指定 IP 位址和網路遮罩,而不使用 CIDR 位址格式:

    • 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]

  3. 測試遠端連接。

    1. 重新啟動遠端 PostgreSQL 伺服器。

    2. 使用使用者名稱和密碼從遠端登入伺服器。