Liberty 儲存庫[8.5.5.6 或更新版本]

維護 Liberty 設定檔批次環境的安全

Liberty 設定檔批次架構可讓您配置角色型存取權,來存取所有批次管理作業以及檢視批次工作相關聯的 meta 資料和日誌。

開始之前

批次儲存器定義了三個批次角色。單一使用者可以具備多個批次角色。
batchAdmin
batchAdmin 對所有批次作業具備不受限的存取權。所包含的許可權包括:提交新工作、停止並重新啟動任何使用者的工作、檢視批次網域中任何使用者提交的任何 meta 資料和工作日誌,以及清除任何工作。batchAdmin 不一定需要是 WebSphere Application Server 管理者。
batchSubmitter
batchSubmitter 有權提交新工作,但只能對其自己的工作,執行停止、重新啟動或清除等之類的批次作業。batchSubmitter 無法檢視或修改其他使用者的工作。舉例來說,如果 user1 和 user2 都定義為 batchSubmitter,且 user1 提交工作,則 user2 無法檢視與 user1 工作相關聯的工作實例資料。
batchMonitor
batchMonitor 對所有工作具備唯讀權。這個角色的使用者可以檢視所有的工作實例和執行程序,並具備所有工作日誌的存取權。batchMonitor 無法提交自己的工作,或是停止、重新啟動或清除任何工作。
註: 一旦啟用批次安全,會根據授與現行使用者的批次角色,來過濾任何 JobOperator API 方法或 REST 作業所要傳回的清單。舉例來說,當只具備 batchSubmitter 許可權的使用者要求所有工作實例清單時,將只會傳回現行使用者所提交的工作實例。

關於這項作業

程序

  1. 依預設,batch-1.0 特性不會啟用任何安全。對於所有使用者(不管是否經過鑑別),JobOperator 方法都維持開啟。這些方法維持開啟,只為了開發用途,並不需要任何的安全配置。 batchManagement-1.0 特性會啟用批次 REST API。REST API 一律需要鑑別使用者,即使未啟用 appSecurity-2.0 功能也是如此,但是所有使用者都被視為批次管理者,可以對任何工作實例執行所有批次作業。一旦啟用 appSecurity-2.0,將會執行批次角色型安全授權,且會限制使用者只能執行其給定批次角色所定義的批次作業。
    1. 透過 JobOperator API 來啟用批次角色型安全
      <featureManager>
      	<feature>batch-1.0</feature>
      	<feature>appSecurity-2.0</feature>
      </featureManager>
    2. 透過 REST API 來啟用批次角色型安全。
      註: batchManagement-1.0 特性包含 batch-1.0 特性。
      <featureManager>
      	<feature>batchManagement-1.0</feature>
      	<feature>appSecurity-2.0</feature>
      </featureManager>
  2. server.xml 檔配置成支援角色型安全。 下列範例說明用來定義使用者清單的基本使用者登錄。此登錄供批次角色型安全配置範例使用。
    <basicRegistry id="basic" realm="ibm/api">
    	<user name="alice" password="alicepwd" />
    	<user name="bob" password="bobpwd" />
    	<user name="jane" password="janepwd" />
    	<user name="joe" password="joepwd" />
    	<user name="phyllis" password="phyllispwd" />
    	<user name="kai" password="kaipwd" />
    </basicRegistry>

    在本例中,一個使用者擔任多個角色。

    <authorization-roles id="com.ibm.ws.batch">
    	<security-role name="batchAdmin" >	
    		<user name="alice" />	
    	</security-role>
    	<security-role name="batchSubmitter" >
    		<user name="jane" />
    		<user name="phyllis" />
    		<user name="bob" />
    	</security-role>
    	<security-role name="batchMonitor" >
    		<user name="joe" />
    		<user name="bob" />
    	</security-role>
    </authorization-roles>
    在本例中,一個使用者擔任多個角色。所有使用者都具備 batchSubmitter 角色。
    <authorization-roles id="com.ibm.ws.batch">
    	<security-role name="batchAdmin" >	
    		<user name="alice" />	
    	</security-role>
    	<security-role name="batchSubmitter" >
    		<special-subject type="ALL_AUTHENTICATED_USERS"/>
    	</security-role>
    	<security-role name="batchMonitor" >
    		<user name="joe" />
    		<user name="bob" />
    	</security-role>
    </authorization-roles>
    在本例中,一個使用者擔任多個角色。容許所有使用者(包括那些未鑑別的使用者)都具備 batchMonitor 角色。
    <authorization-roles id="com.ibm.ws.batch">
    	<security-role name="batchAdmin" >	
    		<user name="alice" />	
    	</security-role>
    	<security-role name="batchSubmitter" >
    		<user name="joe" />
    		<user name="bob" />
    	</security-role>
    	<security-role name="batchMonitor" >
    		<special-subject type="EVERYONE"/>
    	</security-role>
    </authorization-roles>

指示主題類型的圖示 作業主題

資訊中心條款 | 意見


「時間戳記」圖示 前次更新: 2015 年 6 月 22 日
http://www14.software.ibm.com/webapp/wsbroker/redirect?version=phil&product=was-libcore-mp&topic=twlp_batch_securing
檔名:twlp_batch_securing.html