群體安全

您可以使用 Liberty 中的群體安全原則來處理移動中的資料和靜止的資料。

群體安全有兩個主要區域:
  • 管理網域安全配置

    處理動態資料、鑑別和授權

  • 群體儲存庫資料安全

    處理靜態資料、鑑別和授權

管理網域安全配置
群體的管理網域安全配置由兩個部分組成:
  • 使用者網域

    這個網域有賴於定義「管理者」角色的 Java™ 角色型安全。 這種類型的安全可以對映至所配置之使用者登錄內的使用者。

  • 伺服器網域

    這個網域有賴於 SSL 憑證型鑑別。

如果要讓使用者存取群體控制器的 MBean,他們必須在「管理者」角色中。 凡是透過群體來進行的管理動作,會要求使用者獲授與「管理者」角色。 請參閱配置通往 Liberty 的安全 JMX 連線以取得完整的詳細資料。

伺服器至伺服器通訊是在伺服器網域內進行,不會利用使用者身分或密碼來進行群體成員之間的通訊。 每個群體成員在群體內都有其唯一身分,由主機名稱、使用者目錄和伺服器名稱組成。 群體內的每個成員都會定義其伺服器網域配置,由 serverIdentity.jkscollectiveTrust.jks 檔組成。 這些檔案包含在群體內建立安全通訊所需要的 SSL 憑證。 HTTPS 金鑰配置必須有特定的信任設定,依預設,會建立這些設定。

您可以新增額外的授信憑證項目到 collectiveTrust.jks 金鑰儲存庫,來自訂伺服器網域 SSL 配置。 當抄寫控制器時,會複製所有信任關係;因此,必須將 SSL 自訂作業套用於起始控制器。 只有在未使用預設 HTTPS 憑證時,才需要新增信任關係到 collectiveTrust.jks 金鑰儲存庫中。 如果修改 HTTPS SSL 配置,就適用下列憑證規則:
  • HTTPS 信任關係必須由群體內的所有控制器和成員來建立。 如果修改了 HTTPS SSL 憑證,就必須將群體控制器中的下列主要簽章者新增到 HTTPS SSL 信任儲存庫中:
    • rootKeys.jks 金鑰儲存庫中的 controllerRoot 簽章者必須新增到所有群體成員的 HTTPS SSL 信任儲存庫中。
    • rootKeys.jks 金鑰儲存庫中的 controllerRoot 簽章者和 memberRoot 簽章者必須新增到所有群體控制器的 HTTPS SSL 信任儲存庫中。
  • 每個成員都可以建立通往群體控制器的出埠連線。 群體控制器的 collectiveTrust.jks 金鑰儲存庫必須包含一個信任各成員的 HTTPS SSL 憑證的憑證鏈。 強烈建議所有 HTTPS 憑證都要由主要簽章者來簽署,之後,可以將它新增到 collectiveTrust.jks 金鑰儲存庫中。 使用沒有共同主要簽章者的個別 SSL 憑證,足以建立信任關係,但不會進行調整。
  • 每個控制器都可以建立通往群體成員的出埠連線。 群體成員的 collectiveTrust.jks 金鑰儲存庫必須包含一個信任各控制器的 HTTPS SSL 憑證的憑證鏈。 強烈建議所有 HTTPS 憑證都要由主要簽章者來簽署,之後,可以將它新增到 collectiveTrust.jks 金鑰儲存庫中。 使用沒有共同主要簽章者的個別 SSL 憑證,足以建立信任關係,但不會進行調整。
伺服器至伺服器通訊要求支援 SSL 鑑別。 如果自訂 HTTPS SSL 配置,SSL 配置必須指定 clientAuthenticationSupported="true"。 例如:
<!-- clientAuthenticationSupported set to enable bidirectional trust -->
    <ssl id="defaultSSLConfig"
         keyStoreRef="defaultKeyStore"
         trustStoreRef="defaultTrustStore"
         clientAuthenticationSupported="true" />

不建議在群體控制器上設定 clientAuthentication="true",它會防止一些常見和預期的行為。 例如,這個設定會防止在「管理中心」及群體指令行公用程式中,利用使用者名稱和密碼來進行鑑別。

在群體成員上設定 clientAuthentication="true",適合防止利用使用者名稱和密碼登入。 這個設定不會岔斷群體作業,因為從控制器起始的所有作業都是利用憑證來鑑別。

利用 CollectiveRegistration MBean,可以防止成員將資訊發佈到群體控制器。 disavow 和 avow 方法會防止鑑別及啟用鑑別。

群體儲存庫資料安全

群體儲存庫資料安全原則包含靜態資料的原則 - 具體地說,就是群體儲存庫內容的存取原則。

群體資料的現行安全原則如下:
  • 系統保留三個節點名稱:sys.host.auth.infosys.jmx.auth.infosys.nologin。 這些節點是在主機或伺服器的儲存庫名稱空間之下。使用者建立的節點必須避免使用 sys. 字首。
  • sys.host.auth.infosys.jmx.auth.info 節點無法透過 MBean 來存取,以防止洩露系統認證。 存取儲存於這些節點的資料會產生空值回應。
  • 限制群體成員只能在儲存庫中修改它自己的資訊。 已鑑別的管理使用者除了先前的說明之外,對儲存庫中的資訊並沒有存取限制。已鑑別的管理使用者是被授與「管理」角色的所有使用者。

由於群體儲存庫最終是在磁碟上,所以必須維護環境的檔案系統許可權設定安全。 建議您對於群體控制器的配置,只讓使用者讀取及寫入,只讓群組讀取,完全不讓外人存取,換言之,就是 chmod 0640。請遵循您的組織可能已建立的任何安全準則。


指示主題類型的圖示 概念主題

檔名:cwlp_collective_sec.html