Sun Java System Access Manager 7.1 管理指南

第 2 部分 目錄管理和預設服務

這是「Sun Java System Access Manager 7.1 管理指南」的第二部分。「目錄管理」一章中描述以「舊有」模式部署 Access Manager 時,管理「目錄」物件的方法。其他章節描述配置與使用某些 Access Manager 預設服務的方法。本部分包含以下章節:

第 7 章 目錄管理

只有在舊有模式下安裝 Access Manager 時,才會顯示 [目錄管理] 標籤。此目錄管理功能為啟用 Sun Java System Directory Server 的 Access Manager 部署提供了識別管理解決方案。

如需「舊有模式」安裝選項的更多資訊,請參閱「Sun Java Enterprise System 5 Installation Guide for UNIX」

管理目錄物件

[目錄管理] 標籤包含檢視與管理 Directory Server 物件所需的所有元件。本節說明物件類型及有關如何配置它們的詳細資訊。使用 Access Manager 主控台或指令行介面可以定義、修改或刪除使用者、角色、群組、組織、子組織及容器物件。主控台有具權限程度不同的預設管理員,用以建立與管理目錄物件。(可基於角色建立其他管理員。)當與 Access Manager 一起安裝時,可於 Directory Server 內定義管理員。您可管理的 Directory Server 物件有:

組織

組織代表企業用來管理其部門與資源的階層式結構之頂層。安裝時,Access Manager 會動態建立頂層組織 (安裝期間定義) 以管理 Access Manager 企業配置。安裝後可以建立其他組織以管理個別企業。所有建立的組織均位於頂層組織之下。

Procedure建立組織

  1. 按一下 [目錄管理] 標籤。

  2. 在 [組織] 清單中,按一下 [新建]。

  3. 輸入欄位的值。僅 [名稱] 是必需的。這些欄位包括:

    名稱

    輸入組織名稱的值。

    網域名稱

    輸入組織的完整領域名稱系統 (DNS) 名稱 (如果有)。

    組織狀態

    選擇 [使用中][非使用中] 狀態。預設值為 [使用中]。在組織存在期間,可以透過選取 [特性] 圖示隨時變更該狀態。如果選擇非作用中 ,系統會在使用者登入組織時停用使用者存取。

    組織別名

    此欄位定義組織的別名,可讓您使用這些別名經由 URL 登入進行認證。例如,如果您有一個名為 exampleorg 的組織,並將 123abc 定義為別名,則您可使用以下任一個 URL 登入該組織:

    http://machine.example.com/amserver/UI/Login?org=exampleorg

    http://machine.example.com/amserver/UI/Login?org=abc

    http://machine.example.com/amserver/UI/Login?org=123

    組織別名在整個組織中必須是唯一的。您可以使用 [唯一屬性清單] 強制唯一性。

    DNS 別名名稱

    允許為組織的 DNS 名稱加入別名。此屬性僅接受「實際的」網域別名 (不允許使用隨機字串)。例如,如果您有一個名為 example.com 的 DNS,並將 example1.comexample2.com 定義為組織 exampleorg 的別名,則您可使用以下任一個 URL 登入該組織:

    http://machine.example.com/amserver/UI/

    Login?org=exampleorg

    http://machine.example1.com/amserver/

    UI/Login?org=exampleorg

    http://machine.example2.com/amserver/

    UI/Login?org=exampleorg

    唯一的屬性清單

    允許您在組織中加入使用者的唯一屬性名稱清單。例如,如果您加入了指定電子郵件位址的唯一屬性名稱,則無法建立兩個具有相同電子郵件位址的使用者。此欄位還可以接受以逗號分隔的清單。清單中的任一屬性名稱均定義唯一性。例如,如果欄位包含屬性名稱清單:

    PreferredDomain, AssociatedDomain

    而且為特定使用者將 PreferredDomain 定義為 http://www.example.com,則對該 URL 而言,此以逗號分隔的整個清單定義是唯一的。將命名屬性 ou 增加至 [唯一的屬性清單] 將不會對預設群組、使用者容器強制執行唯一性。(ou=Groups,ou=People)。

    此一唯一性同時針對所有子組織強制執行。


    備註 –

    在 [範圍] 模式中無法設定唯一的屬性。在 [舊有] 模式中,也無法在基於 7.0 或 7.1 的主控台中設定它們。若要建立唯一屬性清單,必須登入基於 6.3 的主控台。如需更多資訊,請參閱舊有模式 6.3 主控台


  4. 按一下 [確定]。

    新組織會顯示於 [組織] 清單中。若要編輯您建立組織時定義的任一特性,請按一下您要編輯的組織之名稱、變更其特性,然後按一下 [儲存]。

Procedure刪除組織

  1. 勾選將要刪除的組織之名稱旁的核取方塊。

  2. 按一下 [刪除]。


    備註 –

    執行刪除時不會顯示警告訊息。組織中的所有項目將被刪除,且無法執行還原。


將組織加入到策略

Access Manager 物件會透過策略的主體定義加入策略。當建立或修改策略時,可以將組織、角色、群組及使用者定義為主體。一旦定義了主體,策略即會套用於物件。如需更多資訊,請參閱管理策略

容器

當由於物件類別與屬性差異而無法使用組織項目時,會使用容器項目。請切記,Access Manager 容器項目與 Access Manager 組織項目不一定等於 LDAP 物件類別 organizationalUnitorganization。它們是抽象的識別項目。理想情況下,將使用組織項目而不是容器項目。


備註 –

容器的顯示是選擇性的。若要檢視容器,您必須在 [配置] > [主控台特性] 下選取 [管理] 服務的 [顯示容器]。


Procedure要建立容器

  1. 選取組織或容器的位置連結,新容器將會建立於其中。

  2. 按一下 [容器] 標籤。

  3. 按一下 [容器] 清單中的 [新建]。

  4. 輸入將要建立的容器之名稱。

  5. 按一下 [確定]。

Procedure要刪除容器

  1. 按一下 [容器] 標籤。

  2. 選取要刪除的容器名稱旁邊的核取方塊。

  3. 按一下 [刪除]。


    備註 –

    刪除一個容器將會同時刪除該容器中存在的所有物件。包含所有物件和子容器。


群組容器

群組容器用於管理群組。它僅可包含群組與其他群組容器。群組容器「群組」會動態指定為所有受管理群組的父系項目。如果需要,可以加入附加群組容器。


備註 –

群組容器的顯示是選擇性的。若要檢視群組容器,您必須從 [配置] > [主控台特性] 的 [認證] 服務中選取 [啟用群組容器] 。


Procedure建立群組容器

  1. 選取包含新群組容器的組織或群組容器的位置連結。

  2. 選取 [群組容器] 標籤。

  3. 按一下 [群組容器] 清單中的 [新增]。

  4. 在 [名稱] 欄位中輸入值,然後按一下 [確定]。新的群組容器會顯示於 [群組容器] 清單中。

Procedure刪除群組容器

  1. 導覽至包含要刪除的群組容器之組織。

  2. 選擇 [群組容器] 標籤。

  3. 選取要刪除的群組容器旁邊的核取方塊。

  4. 按一下 [刪除]。

群組

群組代表包含一般功能、特性或興趣的使用者集合。通常,此群組並無與之相關聯的權限。群組可以兩個層級存在;於組織內及於其他受管理群組內。存在於其他群組中的群組稱為子群組。子群組是「實際上」存在於父系群組中的子節點。

Access Manager 還支援 巢式群組,巢式群組是單一群組中包含現有群組的「陳述」。巢式群組與子群組不同,它可存在於 DIT 中任何之處。它們可讓您為大量使用者快速設置存取權限。

您可建立的群組有兩種:靜態群組與動態群組。您只能以手動方式將使用者加入靜態群組;動態群組則透過篩選器控制使用者的加入。巢式群組與子群組皆可加入這兩種類型的群組。

靜態群組

靜態群組是根據您指定之管理的群組類型所建立的。群組成員是使用 groupOfNamesgroupOfUniqueNames 物件類別增加到群組項目。


備註 –

依預設,受管理群組類型為動態。您可在管理服務配置中變更該預設。


動態群組

動態群組是透過使用 LDAP 篩選器所建立。所有項目都會透過器篩選並動態指定給群組。篩選器可尋找項目中的任一屬性,並傳回包含該屬性的項目。例如,如果要根據建立編號建立群組,可以使用篩選器傳回包含建立編號屬性的所有使用者的清單。


備註 –

應使用 Directory Server 將 Access Manager 配置為可使用 referential integrity 外掛程式。啟用後的參考完整性外掛程式會在刪除或重新命名工作完成後,立即對指定的屬性執行完整性更新。這可確保在整個資料庫中維持相關項目之間的關係。資料庫索引可增強中的搜尋效能。如需有關啟用此外掛程式的更多資訊,請參閱「Sun Java Access Manager 6 Migration Guide」。


Procedure建立靜態群組

  1. 瀏覽將於其中建立新群組的組織、組或群組容器。

  2. 按一下 [群組] 清單的 [新建靜態]。

  3. 在 [名稱] 欄位中輸入群組的名稱。按 [下一步]。

  4. 選取 [使用者可以訂閱該群組] 屬性以允許使用者自行訂閱群組。

  5. 按一下 [確定]。

    建立群組之後,您便可以選取群組的名稱並按一下 [一般] 標籤,來編輯 [使用者可以訂閱至此群組] 屬性。

Procedure加入或移除靜態群組成員

  1. 在 [群組] 清單中選取將對其加入成員的群組。

  2. 在 [選取動作] 功能表中選擇要執行的動作。您可以執行的動作如下所示:

    新建使用者

    此動作會建立新的使用者並在儲存該使用者資訊時將其加入群組。

    加入使用者

    此動作將現有使用者加入群組。選取此動作時,您會建立指定所要加入的使用者之搜尋條件。用於建構條件的欄位會使用 ANYALL 運算子。ALL 會傳回所有指定欄位的使用者。ANY 會傳回任一指定欄位的使用者。如果保留某欄位空白,則該欄位將符合該特定屬性的所有可能項目。

    建構了此搜尋條件後,即按一下 [下一步]。從傳回的使用者清單中,選取您要加入的使用者,然後按一下 [完成]。

    加入群組

    此動作將巢式群組加入目前群組。選擇此動作時,您建立了搜尋條件,包括搜尋範圍、群組名稱 (接受「*」萬用字元),並且您可以指定使用者是否可以自行訂閱群組。輸入資訊後,即按一下 [下一步]。從傳回的群組清單中,選取您要加入的群組,然後按一下 [完成]。

    移除成員

    此動作將從群組中移除成員 (包括使用者與群組),但不會刪除它們。選取您要移除的成員,然後從 [選取動作] 功能表中選取 [移除成員]。

    刪除成員

    此動作將永久刪除您選取的成員。選取您要刪除的成員,然後選擇 [刪除成員]。

Procedure建立動態群組

  1. 瀏覽將於其中建立新群組的組織或群組。

  2. 按一下 [群組] 標籤。

  3. 按一下 [新建動態]。

  4. 在 [名稱] 欄位中輸入群組的名稱。

  5. 建構 LDAP 搜尋篩選器。

    依預設,Access Manager 顯示基本搜尋篩選器介面。用於建構篩選器的 [基本] 欄位使用 ANYALL 運算子。ALL 會傳回所有指定欄位的使用者。ANY 會傳回任一指定欄位的使用者。如果保留某欄位空白,則該欄位將符合該特定屬性的所有可能項目。

  6. 按一下 [確定] 後,符合搜尋條件的所有使用者會自動加入群組。

Procedure若要加入或移除動態群組的成員

  1. 在 [群組] 清單中,按一下要對其加入成員的群組之名稱。

  2. 在 [選取動作] 功能表中選擇要執行的動作。您可以執行的動作如下所示:

    加入群組

    此動作將巢式群組加入目前群組。選擇此動作時,您建立了搜尋條件,包括搜尋範圍、群組名稱 (接受「*」萬用字元),並且您可以指定使用者是否可以自行訂閱群組。輸入資訊後,即按一下 [下一步]。從傳回的群組清單中,選取您要加入的群組,然後按一下 [完成]。

    移除成員

    此動作將從群組中移除成員 (包括群組),但不刪除它們。選取您要移除的成員,然後選擇 [移除成員]。

    刪除成員

    此動作將永久刪除您選取的成員。選取您要刪除的成員,然後選擇 [刪除成員]。

將群組加入到策略

Access Manager 物件會透過策略的主體定義加入策略。當建立或修改策略時,可以將組織、角色、群組及使用者定義為策略主體頁面中的主體。一旦定義了主體,策略即會套用於物件。如需更多資訊,請參閱管理策略

使用者容器

使用者容器是預設的 LDAP 組織單元,為在組織中建立使用者時,所有使用者的指定位置。可以在組織層級和使用者容器層級找到使用者容器 (作為子使用者容器)。它們僅可包含其他使用者容器與使用者。如果需要,可以將附加使用者容器加入組織。


備註 –

使用者容器的顯示是選擇性的。若要檢視使用者容器,必須在 [管理服務] 中選取 [啟用使用者容器]。


Procedure建立使用者容器

  1. 導覽至要在其中建立新使用者容器的組織或使用者容器。

  2. 按一下 [使用者容器] 清單中的 [新建]。

  3. 輸入要建立的使用者容器名稱。

  4. 按一下 [確定]。

Procedure刪除使用者容器

  1. 導覽至包含要刪除的使用者容器之組織或使用者容器。

  2. 選取要刪除的使用者容器名稱旁邊的核取方塊。

  3. 按一下 [刪除]。


    備註 –

    刪除一個使用者容器將會同時刪除該使用者容器中存在的所有物件。包含所有使用者和子使用者容器。


使用者

使用者代表個別使用者的識別。透過 Access Manager 識別管理模組,您可以在組織、容器以及群組中建立和刪除使用者;在角色和/或群組中加入或移除使用者。您亦可對使用者指定服務。


備註 –

如果子組織內的使用者是使用與 amadmin 相同的使用者 ID 建立的,amadmin 的登入會失敗。若發生此問題,管理員應透過 Directory Server 主控台變更使用者的 ID。如此可使管理員登入到預設組織中。此外,認證服務中的 [啟動使用者搜尋] 可以設為使用者容器,以確保登入時傳回獨特的比對結果。


Procedure建立使用者

  1. 導覽至要在其中建立使用者的組織、容器或使用者容器。

  2. 按一下 [使用者] 標籤。

  3. 按一下使用者清單上的 [新建]。

  4. 輸入下列值的資料:

    使用者 ID

    此欄位採用其將登入 Access Manager 的使用者名稱。此特性可為非 DN 值。

    名字

    此欄位中為使用者的名字。[目前登入] 欄位中的 [名字] 值和 [姓氏] 值可識別使用者。這並非必須填寫的值。

    姓氏

    此欄位中為使用者的姓氏。[名字] 的值與 [姓氏] 的值會識別使用者身份。

    全名

    此欄位中為使用者的全名。

    密碼

    此欄位中為 [使用者 ID] 欄位中所指定名稱的密碼。

    密碼 (確認)

    確認密碼。

    使用者狀態

    此選項指出是否允許使用者透過 Access Manager 認證。只有作用中的使用者才可以認證。預設值為 [使用中]

  5. 按一下 [確定]。

Procedure若要編輯使用者設定檔

當尚未被指定管理員角色的使用者進行 Access Manager 認證時,預設的檢視為使用者自己的 [使用者設定檔]。 此外,具適當權限的管理員可以編輯使用者設定檔。在此檢視中,使用者可以修改其個人設定檔的特定屬性值。[使用者設定檔] 檢視中顯示的屬性可以延伸。如需加入物件與識別的自訂屬性相關之更多資訊,請參閱「Access Manager 開發者指南」。

  1. 選取要編輯其設定檔的使用者。依預設,會顯示 [一般] 檢視。

  2. 編輯下列欄位:

    名字

    此欄位中為使用者的名字。

    姓氏

    此欄位中為使用者的姓氏。

    全名

    此欄位中為使用者的全名。

    密碼

    按一下 [編輯] 連結以加入並確認使用者密碼。

    電子郵件位址

    此欄位中為使用者的電子郵件位址。

    雇員編號

    此欄位中為使用者的員工號碼。

    電話號碼

    此欄位中為使用者的電話號碼。

    家庭住址

    此欄位中為使用者的家庭住址。

    使用者狀態

    此選項指出是否允許使用者透過 Access Manager 認證。只有使用中的使用者才可以透過 Access Manager 進行認證。預設值為使用中。可以從下拉式功能表中選取以下任一選項:。

    • [使用中] — 使用者可以透過 Access Manager 進行認證。

    • [非使用中] — 使用者無法透過 Access Manager 進行認證,但使用者設定檔仍儲存在該目錄。


      備註 –

      將使用者狀態變更為非作用中僅會影響透過 Access Manager 進行認證的動作。Directory Server 使用 nsAccountLock 屬性來決定使用者帳號狀態。針對 Access Manager 認證停用的使用者帳號仍可執行毋須 Access Manager 便可執行的作業。若要使目錄中的使用者帳號成為非使用中 (不僅僅只針對 Access Manager 認證),請將 nsAccountLock 的值設為 false。若您網站中經授權的管理員定期會將使用者停用,可考慮將 nsAccountLock 屬性加入 Access Manager [使用者設定檔] 頁面。如需詳細資訊,請參閱「Sun Java System Access Manager 7.1 Developer’s Guide」


    帳號過期日期

    如果存在該屬性,則當目前日期和時間超過指定的帳號過期日期時,認證服務將不允許登入。此屬性的格式為 mm/dd/yyyy hh:mm

    使用者認證配置

    此屬性設定使用者的認證鏈。

    使用者別名清單

    此欄位定義可以套用於使用者的別名清單。若要使用此屬性中配置的任何別名,必須將 iplanet-am-user-alias-list 屬性加入 LDAP 服務的 [使用者項目搜尋屬性] 欄位,來修改 LDAP 服務。

    語言環境個人喜好

    此欄位指定使用者的語言環境。

    成功的 URL

    此屬性指定使用者認證成功後將重新導向至的 URL。

    失敗的 URL

    此屬性指定使用者認證失敗後將重新導向至的 URL。

    密碼重設選項

    這是用來選取忘記密碼頁面中問題之選項,目的在取得忘記的密碼。

    使用者探索資源提供

    設定使用者的 [使用者探索] 服務的資源提供。

    MSISDN 編號

    定義在使用 MSISDN 認證時使用者的 MSISDN 編號。

Procedure將使用者增加至角色與群組

  1. 按一下 [使用者] 標籤。

  2. 按一下您要修改的使用者名稱。

  3. 選取 [角色] 或 [群組] 標籤。

  4. 選取您希望在其中加入使用者的角色或群組,然後按一下 [新增]。

  5. 按 [儲存]。


    備註 –

    若要從 [角色] 或 [群組] 移除使用者,請選取角色或群組,然後按一下 [移除],再按一下 [儲存]。


將使用者加入到策略

Access Manager 物件會透過策略的主體定義加入策略。當建立或修改策略時,可以將組織、角色、群組及使用者定義為策略主體頁面中的主體。一旦定義了主體,策略即會套用於物件。如需更多資訊,請參閱管理策略

角色

角色為類似群組概念的一種 Directory Server 項目機制。群組具有成員;角色也具有成員。角色的成員為擁有該角色的 LDAP 項目。角色自己的條件已定義為含屬性的 LDAP 項目,為項目的識別名稱 (DN) 屬性所辨識。Directory Server 具有數種不同類型的角色,但 Access Manager 只能管理它們的其中之一:受管理角色。


備註 –

其他 Directory Server 角色類型仍可於目錄部署中使用,但無法被 Access Manager 主控台管理。其他 Directory Server 類型則可用於策略的主題定義。如需策略主體相關的更多資訊,請參閱建立策略


使用者可擁有一種或多種角色。例如,可以建立具有階段作業服務屬性和密碼重設服務屬性的承包人角色。新承包人雇員加入公司時,管理員可將該角色指定給他們,而不是在承包人項目中設定各自的屬性。若承包人在工程部門工作,且需要適用於工程員工的服務與存取權,那麼管理員可將承包人指派為工程角色與承包人角色。

Access Manager 使用角色以套用存取控制指令。首次安裝時,Access Manager 會配置定義管理員權限的存取控制指令 (ACI)。系統會接著在角色 (如組織管理角色和組織 Help Desk 管理角色) 中指定這些 ACI, 將這些角色指定給使用者時,會定義使用者的存取權限。

只有在 [管理服務] 中啟用了 [在使用者設定檔頁面上顯示角色] 屬性,使用者才可檢視指定給他們的角色。


備註 –

應使用 Directory Server 將 Access Manager 配置為可使用 referential integrity 外掛程式。啟用後的參考完整性外掛程式會在刪除或重新命名工作完成後,立即對指定的屬性執行完整性更新。這可確保在整個資料庫中維持相關項目之間的關係。資料庫索引可增強中的搜尋效能。


角色分兩種類型:

Procedure建立靜態角色

  1. 移至將建立角色的組織。

  2. 按一下 [角色] 標籤。

    配置組織時會建立一組預設角色,它們會顯示於 [角色] 清單中。預設角色為:

    容器說明桌面管理員。容器說明桌面管理員角色對組織單元中的所有項目均具有讀取權限,但是僅對此容器單元中使用者項目的 userPassword 屬性具有寫入權限。

    組織說明桌面管理員。組織說明桌面管理員對組織中所有項目皆有讀取權限,對 userPassword 屬性則有寫入權限。


    備註 –

    建立子組織時,請記住在子組織中建立管理角色,而不是在父系組織中建立。


    容器管理員。容器管理員角色對 LDAP 組織單元中的所有項目均具有讀取寫入權限。在 Access Manager 中,LDAP 組織單元通常稱為容器。

    組織策略管理員。組織策略管理員具有對所有策略的讀取寫入權限,可以建立、指定、修改和刪除此組織內的所有策略。

    使用者管理員。依預設,新建組織中的任何使用者項目均為該組織的使用者容器的成員。使用者管理員對組織中的所有使用者項目均具有讀取寫入存取權限。請記住,此角色對包含角色與群組 DN 的屬性「並不」具有讀取寫入權限,因此,它們不能修改角色或群組的屬性,也不能從中移除使用者。


    備註 –

    可以透過 Access Manager 配置其他容器,使其具有使用者項目、群組項目甚至是其他容器。若要將管理員角色套用於配置組織後建立的容器,將會使用預設的容器管理員角色或容器說明桌面管理員。


    群組管理員。建立群組時建立的群組管理員對特定群組的所有成員均具有讀取寫入權限,可以建立新的使用者、將使用者指定給其管理的群組以及刪除其建立的使用者。

    建立群組時將自動產生群組管理員角色,其具有管理群組的必要權限。不會自動將此角色指定給群組成員。此角色必須由群組建立者或任何具有群組管理員角色存取權限的人員指定。

    頂層管理員。頂層管理員對頂層組織中的所有項目均具有讀取寫入權限。換句話說,此頂層管理員角色具有 Access Manager 應用程式中每個配置主體所擁有的權限。

    組織管理員。組織管理員對組織中的所有項目均具有讀取寫入權限。建立群組時將自動產生組織管理員角色,其具有管理組織的必要權限。

  3. 按一下 [新建靜態] 按鈕。

  4. 輸入角色的名稱。

  5. 輸入角色的描述。

  6. 從 [類型] 功能表選擇角色類型。

    角色可以為「管理」角色或「服務」角色。主控台使用角色類型決定在 Access Manager 主控台中啟動使用者的位置。管理角色會通知主控台,該角色的擁有者具有管理權限;服務角色會通知主控台,該擁有者為一般使用者。

  7. 從 [存取權限] 功能表,選擇預設的權限集以套用至該角色。具有這些權限,便可以存取組織中的項目。顯示的預設許可權未依特定順序排列。這些權限為:

    沒有權限

    對角色不設定權限。

    組織管理員

    組織管理員對配置組織中的所有項目均具有讀取寫入權限。

    組織說明桌面管理員

    組織說明桌面管理員具有對已配置組織中所有項目的讀取權限,以及對 userPassword 屬性的寫入權限。

    組織策略管理員

    組織策略管理員對組織中的所有策略均具有讀取寫入權限。組織策略管理員無法建立同級組織的參考策略。

    通常,「無權限 ACI」會指定給「服務」角色,而為「管理」角色指定任一預設 ACI。

Procedure將使用者加入到靜態角色

  1. 按一下您要增加使用者的角色名稱。

  2. 在 [成員] 清單中,從 [選取動作] 功能表選取 [加入使用者]。

  3. 輸入搜尋條件的資訊。可以選擇基於一個或多個顯示的欄位搜尋使用者。這些欄位包括:

    符合

    可讓您對篩選選取您要包含的欄位。ALL 會傳回所有指定欄位的使用者。ANY 會傳回任一指定欄位的使用者。

    名字

    依據其名字搜尋使用者。

    使用者 ID

    依據使用者 ID 搜尋使用者。

    姓氏

    依據其姓氏搜尋使用者。

    全名

    依據其全名搜尋使用者。

    使用者狀態

    依據使用者的狀態 (作用中或非作用中) 搜尋使用者。

  4. 按一下 [下一步] 以開始搜尋。會顯示搜尋的結果。

  5. 透過選取使用者名稱旁邊的核取方塊,從傳回的名稱中選擇使用者。

  6. 按一下 [完成]。

    使用者即會指定給角色。

Procedure若要建立動態角色

  1. 移至將建立角色的組織。

  2. 按一下 [角色] 標籤。

    配置組織時會建立一組預設角色,它們會顯示於 [角色] 清單中。預設角色為:

    容器說明桌面管理員。容器說明桌面管理員角色對組織單元中的所有項目均具有讀取權限,但是僅對此容器單元中使用者項目的 userPassword 屬性具有寫入權限。

    組織說明桌面管理員。組織說明桌面管理員對組織中所有項目皆有讀取權限,對 userPassword 屬性則有寫入權限。


    備註 –

    建立子組織時,請記住在子組織中建立管理角色,而不是在父系組織中建立。


    容器管理員。容器管理員角色對 LDAP 組織單元中的所有項目均具有讀取寫入權限。在 Access Manager 中,LDAP 組織單元通常稱為容器。

    組織策略管理員。組織策略管理員具有對所有策略的讀取寫入權限,可以建立、指定、修改和刪除此組織內的所有策略。

    使用者管理員依預設,新建組織中的任何使用者項目均為該組織的使用者容器的成員。[使用者管理員] 對組織中的所有使用者項目均具有讀取寫入存取權限。請記住,此角色對包含角色與群組 DN 的屬性「並不」具有讀取寫入權限,因此,它們不能修改角色或群組的屬性,也不能從中移除使用者。


    備註 –

    可以透過 Access Manager 配置其他容器,使其具有使用者項目、群組項目甚至是其他容器。若要將管理員角色套用於配置組織後建立的容器,將會使用預設的容器管理員角色或容器說明桌面管理員。


    群組管理員。群組建立時建立的群組管理員對特定群組的所有成員均具有讀取寫入權限,可以建立新的使用者、將使用者指定給其管理的群組以及刪除其建立的使用者。

    建立群組時將自動產生群組管理員角色,其具有管理群組的必要權限。不會自動將此角色指定給群組成員。此角色必須由群組建立者或任何具有群組管理員角色存取權限的人員指定。

    頂層管理員。頂層管理員對頂層組織中的所有項目均具有讀取寫入權限。換句話說,此頂層管理員角色具有 Access Manager 應用程式中每個配置主體所擁有的權限。

    組織管理員。組織管理員對組織中的所有項目均具有讀取寫入權限。建立群組時將自動產生組織管理員角色,其具有管理組織的必要權限。

  3. 按一下 [新建動態] 按鈕。

  4. 輸入角色的名稱。

  5. 輸入角色的描述。

  6. 從 [類型] 功能表選擇角色類型。

    角色可以為「管理」角色或「服務」角色。主控台使用角色類型決定在 Access Manager 主控台中啟動使用者的位置。管理角色會通知主控台,該角色的擁有者具有管理權限;服務角色會通知主控台,該擁有者為一般使用者。

  7. 從 [存取權限] 功能表,選擇預設的權限集以套用至該角色。具有這些權限,便可以存取組織中的項目。顯示的預設許可權未依特定順序排列。這些權限為:

    沒有權限

    對角色不設定權限。

    組織管理員

    組織管理員對配置組織中的所有項目均具有讀取寫入權限。

    組織說明桌面管理員

    組織說明桌面管理員具有對已配置組織中所有項目的讀取權限,以及對 userPassword 屬性的寫入權限。

    組織策略管理員

    組織策略管理員對組織中的所有策略均具有讀取寫入權限。組織策略管理員無法建立同級組織的參考策略。

    通常,「無權限 ACI」會指定給「服務」角色,而為「管理」角色指定任一預設 ACI。

  8. 輸入搜尋條件的資訊。這些欄位包括:

    符合

    允許您在希望篩選所包含的任何欄位中納入運算子。ALL 會傳回所有指定欄位的使用者。ANY 會傳回任一指定欄位的使用者。

    名字

    依據其名字搜尋使用者。

    使用者 ID

    依據使用者 ID 搜尋使用者。

    姓氏

    依據其姓氏搜尋使用者。

    全名

    依據其全名搜尋使用者。

    使用者狀態

    依據使用者的狀態 (作用中或非作用中) 搜尋使用者。

  9. 按一下 [確定] 以根據篩選條件開始搜尋。由篩選條件定義的使用者將自動地指定給角色。

Procedure從角色移除使用者

  1. 導覽至包含要修改之角色的組織。

    從 [識別管理] 模組的 [檢視] 功能表中選取 [組織],然後選取 [角色] 標籤。

  2. 選取要修改的角色。

  3. 從 [檢視] 功能表選擇 [使用者]。

  4. 選取要移除的每個使用者旁邊的核取方塊。

  5. 按一下 [選取動作] 功能表中的 [移除] 使用者。

    使用者即會從角色中移除。

將角色加入策略

Access Manager 物件會透過策略的主體定義加入策略。當建立或修改策略時,可以將組織、角色、群組及使用者定義為策略主體頁面中的主體。一旦定義了主體,策略即會套用於物件。如需更多資訊,請參閱管理策略

第 8 章 目前階段作業

本章描述 Access Manager 之階段作業管理功能。[階段作業管理] 模組為檢視使用者階段作業資訊和管理使用者階段作業提供了解決方案。它追蹤各個階段作業時間並允許管理員終止階段作業。系統管理員應忽視 [平台伺服器] 清單中所列的 [負載平衡器] 伺服器。

目前階段作業介面

[目前階段作業] 模組介面允許具有適當權限的管理員,檢視目前登入至 Access Manager 的任何使用者之階段作業資訊。

階段作業管理

階段作業管理框架顯示目前受管理的 Access Manager 名稱。

階段作業資訊

[階段作業資訊] 視窗顯示目前登入至 Access Manager 的所有使用者,並且顯示每位使用者的階段作業時間。這些顯示欄位包括:

使用者 ID。顯示目前登入使用者的使用者 ID。

剩餘時間。顯示必須重新認證之前,使用者此階段作業所具有的剩餘時間 (以分鐘計算)。

最長階段作業時間。顯示使用者在階段作業過期而必須重新認證以重新取得存取權限之前可以登入的最長時間 (以分鐘計算)。

閒置時間。顯示使用者已閒置的時間 (以分鐘計算)。

最長閒置時間。顯示在必須重新認證之前,使用者可以閒置的最長時間 (以分鐘計算)。

時間限制由管理員在階段作業管理服務中定義。

在 [使用者 ID] 欄位中輸入字串,然後按一下 [篩選],可以顯示某個特定的使用者階段作業或使用者階段作業的特定範圍。允許使用萬用字元。

按一下 [重新整理] 按鈕,將更新使用者階段作業顯示。

終止階段作業

具有適當權限的管理員可以隨時終止使用者階段作業。

Procedure若要終止階段作業

  1. 選取您要終止的使用者階段作業。

  2. 按一下 [終止]。

第 9 章 密碼重設服務

Access Manager 提供「密碼重設」服務,可讓使用者重設他們用於存取 Access Manager 所保護的特定服務或應用程式的密碼。「密碼重設」服務屬性由頂層管理員定義,可控制驗證憑證 (以機密提問的形式)、控制新建或現有密碼通知的機制以及設定驗證不正確之使用者的封鎖持續時間。

本章包含下列小節:

註冊密碼重設服務

使用者所屬範圍不需要註冊密碼重設服務。如果使用者所屬組織中不存在密碼重設服務,它將繼承在 [服務配置] 中為此服務定義的值。

Procedure為不同範圍中的使用者註冊密碼重設

  1. 瀏覽至您將為使用者註冊密碼的範圍。

  2. 按一下範圍名稱,然後按一下 [服務] 標籤。

    若尚未加入範圍,按一下 [新增] 按鈕。

  3. 選取 [密碼重設],然後按 [下一步]。

    將會顯示[密碼重設] 服務屬性。有關屬性定義的描述,請參閱線上說明。

  4. 按一下 [完成]。

配置密碼重設服務

註冊密碼重設服務後,該服務必須由擁有管理員權限的使用者配置。

Procedure若要配置服務

  1. 選取要註冊 [密碼重設] 服務的範圍。

  2. 按一下 [服務] 標籤。

  3. 按一下服務清單中的 [密碼重設]。

  4. 會顯示密碼重設屬性,可讓您定義 [密碼重設] 服務的需求。確保已啟用密碼重設服務 (預設為啟用)。至少必須定義以下屬性:

    • 使用者驗證

      • 機密提問

      • 連結 DN

      • 連結密碼

        [連結 DN] 屬性必須包含擁有重設密碼權限的使用者 (例如說明桌面管理員)。由於 Directory Server 有所限制,因此當連結 DN 為 cn=Directory Manager 時,[密碼重設] 便不起作用。

        其餘屬性均為選擇性的。如需服務屬性的描述,請參閱線上說明。


      備註 –

      Access Manager 會自動安裝密碼重設 Web 應用程式,以便產生隨機密碼。但是,您可以寫入自己的外掛程式類別,以產生和通知密碼。請參閱位於以下位置的 Readme.html 檔案,以取得這些外掛程式類別的範例。

      PasswordGenerator:


      AccessManager-base/SUNWam/samples/console/PasswordGenerator

      NotifyPassword:


      AccessManager-base/SUNWam/samples/console/NotifyPassword

  5. 如果使用者要定義其唯一的個人提問,則選取 [啟用個人提問] 屬性。定義屬性後,按一下 [儲存]。

Procedure本土化機密提問

如果您正在執行 Access Manager 本土化版本,並想以特定於您的語言環境的字元集來顯示機密提問,請執行下列動作:

  1. 在 [密碼重設] 服務中,於 [機密提問] 屬性下的 [目前的值] 清單中,增加機密提問關鍵字。例如,favorite-color

  2. 將這個關鍵字與您想顯示此關鍵字值的問題增加到 amPasswordReset.properties 檔案。例如:

    favorite-color=What is your favorite color?

  3. 將相同的關鍵字與本土化的問題增加至位於 /opt/SUNWam/locale 中的 AMPasswordReset_locale.properties。當使用者嘗試變更他們的密碼時,就會顯示本土化的問題。

密碼重設封鎖

密碼重設服務包含封鎖功能,此功能限制使用者正確回答其機密提問前可以嘗試的次數。封鎖功能透過密碼重設服務屬性來配置。如需服務屬性的描述,請參閱線上說明。密碼重設支援兩種類型的封鎖,記憶體封鎖和實體封鎖。

記憶體封鎖

封鎖是暫時的,只有當 [密碼重設失敗封鎖持續時間] 屬性的值大於 0,且 [啟用密碼重設失敗封鎖] 屬性已啟用時時才有效用。該封鎖將防止使用者透過密碼重設 Web 應用程式重設密碼。此封鎖會持續 [密碼重設失敗封鎖持續時間] 中指定的時間,或直到伺服器重新啟動。如需服務屬性的描述,請參閱線上說明。

實體封鎖

該封鎖為一種比較永久的封鎖。當 [密碼重設失敗封鎖計數] 屬性的值設為 0,且 [啟用密碼重設失敗封鎖] 屬性已啟用時,若使用者回答機密提問答案錯誤,其使用者帳號狀態會變更為非作用中。如需服務屬性的描述,請參閱線上說明。

一般使用者的密碼重設

以下小節描述使用者使用密碼重設服務的情況。

自訂密碼重設

啟用了密碼重設服務且管理員定義了屬性後,使用者即可登入 Access Manager 主控台,以便自訂其機密提問。

Procedure若要自訂密碼重設

  1. 在使用者名稱和密碼成功通過認證後,使用者登入主控台。

  2. 在 [使用者設定檔] 頁面中,使用者選取密碼重設選項。系統會顯示 [可用提問回答] 畫面。

  3. 系統會為使用者顯示管理員為服務定義的提問,如:

    • 您的寵物叫什麼名字?

      • 您最喜愛哪個電視節目?

      • 您母親的婚前姓是什麼?

      • 您最喜歡的飯店是哪家?

  4. 使用者可以選取機密提問,最多不超過管理員為範圍定義的最大問題數 (最大問題數在 [密碼重設服務] 中定義)。然後,使用者提供對所選問題的回答。這些問題與回答為重設使用者密碼的依據 (請參閱下一小節)。如果管理員選取了 [啟用個人提問] 屬性,系統會提供文字欄位,讓使用者輸入特有的機密提問及其回答。

  5. 使用者按一下 [儲存]。

重設遺忘密碼

如果使用者遺忘密碼,可使用密碼重設網路應用程式隨機產生新密碼,並通知使用者此新密碼。遺忘密碼的典型情形如下:

Procedure重設遺忘密碼

  1. 使用者從管理員為他們提供的 URL 登入到密碼重設網路應用程式。例如:

    http://hostname:port/ampassword (適用於預設範圍)

    http://hostname: port/deploy_uri/UI/PWResetUserValidation?realm=realmname,其中 realmname 是範圍的名稱。


    備註 –

    若父系範圍的 [密碼重設] 服務沒有啟用,但其子範圍的啟用了,使用者必須使用以下語法存取服務:


    http://hostname: port/deploy_uri/UI/PWResetUserValidation?realm=realmname

  2. 使用者輸入使用者 ID。

  3. 系統向使用者顯示在密碼重設服務中定義且在自訂期間被使用者選取的個人提問。如果使用者先前未登入 [使用者設定檔] 頁面且未自訂個人提問,則不會產生密碼。

    使用者正確回答提問後,系統會產生新密碼並使用電子郵件將其傳送給該使用者。無論使用者是否正確回答了提問,系統均會將嘗試通知傳送給該使用者。為了接收新密碼和嘗試通知,使用者必須在 [使用者設定檔] 頁面中輸入自己的電子郵件位址。

密碼策略

密碼策略是一組規則,用來規範密碼在指定目錄中的使用方式。密碼策略通常透過 Directory Server 主控台定義在 Directory Server 之中。透過強制以下作業,安全密碼策略可以將密碼被容易猜出的風險降到最低:

Directory Server 提供在樹的任一節點設定密碼策略的多種方法,而且存在多種設定策略的方法。如需詳細資訊,請參閱

「Directory Server Enterprise Edition 6.0 管理指南」中的「Directory Server 密碼策略」。


備註 –

在 Directory Server 中,密碼策略包含屬性 passwordExp,用於定義使用者密碼是否會在指定的秒數後過期。如果管理員將 passwordExp 屬性設定為 on,則會設定使用者密碼的過期以及設定 Access Manager 管理帳號 (例如 amldapdsamepuser) 的過期。當 Access Manager 管理員的帳號密碼過期,而一般使用者已登入,則該使用者會看見密碼變更螢幕。但是,Access Manager 不會指定密碼變更螢幕所屬的使用者。在此情況下,此螢幕是專供管理員使用,一般使用者無法變更密碼。

若要解決此問題,管理員必須登入 Directory Server 並變更 amldapdsamepuser 的密碼,或將 passwordExpirationTime 屬性改為未來的某個時間。


第 10 章 記錄服務

Sun Java™ System Access Manager 提供記錄服務,以記錄如使用者作業、流量模式和授權違規等資訊。此外,除錯檔案可幫助管理員排解安裝的疑難。

記錄檔

記錄檔記錄其監視的每個服務的許多事件。管理員應定期查看這些檔案。記錄檔的預設目錄是 /var/opt/SUNWam/logs (SPARC 系統)、/var/opt/sun/identity (Linux 系統)、/var/opt/sun/identity (HP-UX) 及 jes-install-dir\identity (Windows)。藉由使用 Access Manager 主控台,可在 [記錄服務] 中配置記錄檔目錄。

如需預設記錄檔類型、記錄何種資訊以及記錄檔格式之詳細清單的資訊,請參閱「Sun Java System Access Manager 技術摘要」之「Sun Java System Access Manager 7.1 Technical Overview」中的「Logging Overview」

有關 [記錄服務] 的屬性定義,請按一下 Access Manager 主控台中的 [說明] 按鈕以查閱線上說明。

Access Manager 服務記錄

服務記錄檔有兩種類型:存取及錯誤。「存取」記錄檔包含嘗試登入與成功登入的記錄。「錯誤」記錄檔記錄 Access Manager 服務中的錯誤。平面記錄檔附加的副檔名為 .error.access。資料庫欄位的名稱是以 _ERROR_ACCESS 結束 (Oracle 資料庫),或以 _error_access 結束 (MySQL 資料庫)。例如,平面檔案記錄主控台事件名為 amConsole.access,而記錄同一事件的資料庫欄位名為 AMCONSOLE_ACCESS。以下各節說明記錄服務所記錄的記錄檔。

階段作業記錄檔

記錄服務記錄以下階段作業服務事件:

階段作業記錄檔的前綴是 amSSO

主控台記錄檔

Access Manager 主控台記錄檔記錄識別相關物件、策略和服務的建立、刪除與修改,其中包括組織、組織單元、使用者、角色、策略和群組。它也記錄使用者屬性的修改,包括密碼以及增加或移除角色和群組中的使用者。此外,主控台記錄檔也寫入委託和資料存放區作業。主控台記錄檔的前綴是 amConsole

認證記錄檔

認證元件記錄使用者的登入和登出。認證記錄檔的前綴是 amAuthentication

聯合記錄檔

「聯合」元件記錄聯合相關事件,例如 (但不限於) 建立「認證網域」和建立「寄存提供者」。聯合記錄檔的前綴是 amFederation

策略記錄檔

策略元件記錄策略相關事件,包括 (但不限於) 策略管理 (策略的建立、刪除和修改) 和策略評估。策略記錄檔的前綴是 amPolicy

代理程式記錄檔

策略代理程式記錄檔負責記錄有關允許或拒絕使用者存取之記錄資源的異常。代理程式記錄檔的前綴是 amAgentamAgent 記錄檔只存在於代理程式伺服器中。在 Access Manager 伺服器上於「認證記錄檔」中記錄代理程式事件。如需有關此功能的更多資訊,請參閱有疑問的策略代理程式的相關文件。

SAML 記錄檔

SAML 元件記錄 SAML 相關事件,包括 (但不限於) 指定和工件的建立或移除、回應和請求的詳細資訊以及 SOAP 錯誤。階段作業記錄檔的前綴是 amSAML

amadmin 記錄檔

指令行記錄檔記錄使用指令行工具的作業中發生的事件錯誤。包括 (但不限於) 載入服務模式、建立策略和刪除使用者。指令行記錄檔的前綴是 amAdminamadmin.accessamadmin.error 記錄檔位於主記錄目錄的子目錄中。依預設,amadmin 指令行工具記錄檔位於 /var/opt/SUNWam/logs 中。

記錄功能

[記錄服務] 有數個特定功能,可加以啟用以執行額外的功能。包括啟用「安全記錄」、「指令行記錄」和「遠端記錄」。

安全記錄

此選擇性的功能可將額外安全性加入記錄功能中。啟用安全記錄後,可以偵測對安全記錄檔進行的未授權變更或竄改。使用此功能不需用特殊編碼。「安全記錄」是藉由使用由系統管理員配置的預先註冊憑證來達成。會為每個記錄檔記錄產生和儲存此「清單分析和憑證 (MAC)」。會定期插入特定「簽名」記錄檔記錄,表示寫入該點之記錄內容的簽名。兩種記錄的組合可確保記錄沒有被竄改。有兩個方法可以啟用安全記錄:透過 Java Security Server (JSS) 提供者,以及透過 Java Cryptography Extension (JCE) 提供者。

Procedure透過 JSS 提供者啟用「安全記錄」

  1. Logger 名稱建立憑證,然後將其安裝在執行 Access Manager 的部署容器中。

    如需 Application Server 的說明,請參閱「Sun Java System Application Server Enterprise Edition 8.2 Administration Guide」中的「Working with Certificates and SSL」

    如需 Web Server 的說明,請參閱「Sun Java System Web Server 7.0 Administrator’s Guide」中的「Managing Certificates」

  2. 在 Access Manager 主控台中,開啟 [記錄服務] 配置中的 [安全記錄],並儲存此變更。管理員亦可修改 [記錄服務] 中其他屬性的預設值。

    若記錄目錄預設值 (/var/opt/SUMWam/logs) 有所變更,請確定將其權限設為 0700。若此目錄不存在,記錄服務會建立此目錄,但它會建立權限設為 0755 的目錄。

    此外,若您指定和預設不同的目錄,必須將 Web 容器的 server.policy 檔案中的以下參數更改為新的目錄:

    permission java.io.FilePermission “/var/opt/SUNWam/logs/*”,”delete,write”

  3. 在包含憑證資料庫密碼的 AccessManager-base/SUNWam/config 目錄中建立檔案,並將之命名為 .wtpass


    備註 –

    其檔名和路徑可在 AMConfig.properties 檔中配置。如需更多資訊,請參閱「Access Manager Administration Reference」中 AMConfig.properties 檔案參照一章裡的「Certificate Database」。

    請確定部署容器使用者為因安全性理由對此檔案有讀取權限的管理員。


  4. 重新啟動伺服器。

    應清除安全記錄目錄,因為當啟動安全記錄時,部份易引起誤解的驗證錯誤可能會被寫入 /var/opt/SUNWam/debug/amLog 檔案。

    若要偵測安全記錄檔中有無未授權的變更或竄改,請查看驗證程序寫入 /var/opt/SUNWam/debug/amLog 的錯誤訊息。若要手動檢查竄改,請執行 VerifyArchive 公用程式。如需更多資訊,請參閱「Access Manager Administration Reference」中的 VerifyArchive 指令行一章。

Procedure透過 JCE 提供者啟用安全記錄

  1. 使用 Java keytool 指令建立稱為 Logger 的憑證,並將它安裝在 JKS 金鑰庫中。例如:

    JAVA-HOME/jre/lib/security/Logger.jks

    如需 Application Server 的說明,請參閱「Sun Java System Application Server Enterprise Edition 8.2 Administration Guide」中的「Working with Certificates and SSL」

    如需 Web Server 的說明,請參閱「Sun Java System Web Server 7.0 Administrator’s Guide」中的「Managing Certificates」

  2. 在 Access Manager 主控台中,開啟 [記錄服務] 配置中的 [安全記錄],並儲存此變更。管理員亦可修改 [記錄服務] 中其他屬性的預設值。

    若記錄目錄預設值 (/var/opt/SUMWam/logs) 有所變更,請確定將其權限設為 0700。若此目錄不存在,記錄服務會建立此目錄,但它會建立權限設為 0755 的目錄。

    此外,若您指定和預設不同的目錄,必須將 Web 容器的 server.policy 檔案中的以下參數更改為新的目錄:

    permission java.io.FilePermission “/var/opt/SUNWam/logs/*”,”delete,write”

  3. 在包含 JKS 金鑰庫密碼的 AccessManager-base/SUNWam/config 目錄中建立檔案,並將之命名為 .wtpass


    備註 –

    其檔名和路徑可在 AMConfig.properties 檔中配置。如需更多資訊,請參閱「Access Manager Administration Reference」中 AMConfig.properties 檔案參照一章裡的「Certificate Database」。

    請確定部署容器使用者為因安全性理由對此檔案有讀取權限的管理員。


  4. 在位於 AccessManager-base/config/xml 目錄的 amLogging.xml 中,編輯下列項目:


    sun-am-logging-secure-log-helper
    
                    <AttributeSchema name="iplanet-am-logging-secure-log-helper"
                        type="single"
                        syntax="string"
                        i18nKey="">
                        <DefaultValues>
                            <Value>com.sun.identity.log.secure.impl.SecureLogHelperJCEImpl</Value>
                        </DefaultValues>
                    </AttributeSchema>
    
     sun-am-logging-secure-certificate-store
    
                    <AttributeSchema name="iplanet-am-logging-secure-certificate-store"
                        type="single"
                        syntax="string"
                        i18nKey="">
                        <DefaultValues>
                            <Value>/dir-to-signing-cert-store/Logger.jks</Value>
                        </DefaultValues>
                    </AttributeSchema>
  5. 刪除現有的服務模式 iPlanetAMLoggingService。例如:

    ./amadmin -u amadmin -w netscape -r iPlanetAMLoggingService

  6. 使用 amadmin 指令行工具將編輯好的 amLogging.xml 載入到 Access Manager。例如:

    ./amadmin -u amadmin -w netscape -s /etc/opt/SUNWam/config/xml/amLogging.xml

  7. 重新啟動伺服器。

    若要偵測安全記錄中有無未授權的變更或竄改, 請查看驗證程序寫入 /var/opt/SUNWam/debug/amLog 的錯誤訊息。若要手動檢查竄改,請執行 VerifyArchive 公用程式。如需更多資訊,請參閱「Access Manager Administration Reference」中的 VerifyArchive 指令行一章。

指令行記錄

amadmin 指令行工具可建立、修改和刪除 Directory Server 中的識別物件 (例如組織、使用者、角色)。此工具也可載入、建立和註冊服務範本。[記錄服務] 可啟用 -t 選項來記錄這些動作。若啟用 (ACTIVE) AMConfig.properties 中的 com.iplanet.am.logstatus 特性,則會建立記錄檔記錄。(依預設會啟用此特性。)指令行記錄檔的前綴是 amAdmin。如需更多資訊,請參閱「Access Manager Administration Reference」中的「The amadmin Command Line Tool」。

記錄特性

AMConfig.properties 檔中有一些特性會影響記錄的輸出:

com.iplanet.am.logstatus=ACTIVE

此特性可啟用或停用記錄。預設為 ACTIVE。

iplanet-am-logging.service.level= level

service 為服務的正常記錄檔檔名。例如,若要指定 amSAML.access 的記錄等級,請使用特性 iplanet-am-logging.amSAML.access.levelleveljava.util.logging.Level 值的其中一個,表示記錄於記錄檔中之詳細資訊的等級。等級可為 OFF、SEVERE、WARNING、INFO、CONFIG、FINE、FINER、FINEST 及 ALL。大多數服務所記錄的詳細資訊不會高於 INFO 記錄等級。

遠端記錄

Access Manager 支援遠端記錄。從而允許用戶端應用程式 (使用安裝有 Access Manager SDK 的主機) 在部署於遠端機器上的 Access Manager 實例中建立記錄檔記錄。遠端記錄可在以下情況下被啟動:

  1. 當 Access Manager 實例的 [記錄服務] 中的記錄 URL 指向遠端實例,且二者之間配置為信任關係,記錄將寫入遠端 Access Manager 實例。

  2. 當 Access Manager SDK 是針對遠端 Access Manager 實例而安裝,且在 SDK 伺服器上執行的用戶端 (或簡單 Java 類別) 使用記錄 API,記錄將寫入遠端 Access Manager 機器。

  3. 當記錄 API 是由 Access Manager 代理程式所使用。

Procedure使用 Web 容器啟用遠端記錄

  1. 登入 Application Server 或 Web Server 的管理主控台,並增加下列 JVM 選項:

    • java.util.logging.manager=com.sun.identity.log.LogManager

    • java.util.logging.config.file=/ AccessManager-base /SUNwam/lib/LogConfig.properties

      如需有關 Application Server 管理主控台的更多資訊,請參閱「Sun Java System Application Server Enterprise Edition 8.2 Administration Guide」

      如需 Web Server 管理主控台的更多資訊,請參閱「Sun Java System Web Server 7.0 Administrator’s Guide」

    • 若使用的 Java™ 2 Platform, Standard Edition 為 1.4 或更高版本,在指令行中執行以下指令將完成此步驟:

      java -cp /AccessManager-base /SUNWam/lib/am_logging.jar:/ AccessManager-base /SUNWam/lib/xercesImpl.jar:/ AccessManager-base /SUNWam/lib/xmlParserAPIs.jar:/ AccessManager-base /SUNWam/lib/jaas.jar:/ AccessManager-base /SUNWam/lib/xmlParserAPIs.jar:/ AccessManager-base /SUNWam/lib/servlet.jar:/ AccessManager-base /SUNWam/locale:/ AccessManager-base/SUNWam/lib/am_services.jar:/ AccessManager-base/SUNWam/lib/am_sdk.jar:/ AccessManager-base/SUNWam/lib/jss311.jar:/ AccessManager-base/SUNWam/lib:.

      -Djava.util.logging.manager=com.sun.identity.log.LogManager

      -Djava.util.logging.config.file=/ AccessManager-base /SUNwam/lib/LogConfig.properties

    • 若使用的 Java 2 Platform, Standard Edition 版本低於 1.4,在指令行中執行以下指令將完成此步驟:

      java -Xbootclasspath/a:/ AccessManager-base /SUNWam/lib/jdk_logging.jar -cp /AccessManager-base /SUNWam/lib/am_logging.jar:/ AccessManager-base /SUNWam/lib/xercesImpl.jar:/ AccessManager-base /SUNWam/lib/xmlParserAPIs.jar:/ AccessManager-base /SUNWam/lib/jaas.jar:/ AccessManager-base /SUNWam/lib/xmlParserAPIs.jar:/ AccessManager-base /SUNWam/lib/servlet.jar:/ AccessManager-base /SUNWam/locale:/ AccessManager-base/SUNWam/lib/am_services.jar:/ AccessManager-base/SUNWam/lib/am_sdk.jar:/ AccessManager-base/SUNWam/lib/jss311.jar:/ AccessManager-base/SUNWam/lib:.

      -Djava.util.logging.manager=com.sun.identity.log.LogManager

      -Djava.util.logging.config.file=/ AccessManager-base /SUNwam/lib/LogConfig.properties

  2. 請確定位於 AccessManager-base/SUNWam/libLogConfig.properties 中有配置以下參數:

    • iplanet-am-logging-remote-handler=com.sun.identity.

      log.handlers.RemoteHandler

    • iplanet-am-logging-remote-formatter=com.sun.

      identity.log.handlers.RemoteFormatter

    • iplanet-am-logging-remote-buffer-size=1

      遠端記錄支援緩衝,以記錄檔記錄的數目為基準。此值定義了記錄緩衝區大小,以記錄的數目為單位。一旦緩衝區空間已滿,所有在緩衝區中的記錄都會被清空至伺服器。

    • iplanet-am-logging-buffer-time-in-seconds=3600

      此值定義要呼叫緩衝區清除器執行緒的逾時期間。

    • iplanet-am-logging-time-buffering-status=OFF

      此值定義是否要啟用記錄緩衝 (和緩衝區清除器執行緒)。依預設此功能為關閉。

      如果啟用基於計時器的緩衝 (iplanet-am-logging-time-buffering-status=ON),則當記錄檔的記錄數量達到 iplanet-am-logging-remote-buffer-size 中所指定的值,或當計時器逾時 (逾時在 iplanet-am-logging-buffer-time-in-seconds 中指定) 時,就會沖寫記錄檔的緩衝區 (轉移到提供記錄服務的 AM 伺服器)。如果計時器在達到緩衝區大小之前逾時,則會傳送位於緩衝區內的記錄。如果停用遠端記錄的基於計時器緩衝,則緩衝區大小會決定沖寫緩衝區的時機。例如,如果緩衝區大小為 10,而應用程式只傳送 7 條記錄,則不會沖寫緩衝區,也不會向記錄檔寫入記錄。如果應用程式終止,則會沖寫緩衝區中的記錄。


    備註 –

    每當記錄檔是空白時,安全記錄可能會顯示 [驗證失敗]。這是因為當已建立檔案的數目與歸檔檔案大小相等時,安全記錄會從此歸檔並重新開始。於大部分的實例中,您可忽略此錯誤。一旦記錄的數目與歸檔檔案大小相等時,將不會顯示錯誤。


  3. 如果搭配用戶端 SDK 使用程式,則需要適當地設定 AMConfig.properties 檔案中的下列特性:

    • com.iplanet.am.naming.url

    • com.sun.identityagents.app.username

    • com.iplanet.am.service.password

    • com.iplanet.am.server.protocol

    • com.iplanet.am.server.host

    • com.iplanet.am.server.port

    請參閱 /opt/SUNWam/war 目錄中的用戶端 SDK 範例 README.clientsdk。它詳述 AMConfig.properties 及 make 檔案是如何針對 /opt/SUNWam/war/clientsdk-samples 目錄產生的。範例的 makefile 的編譯及執行項目會依序使用這些檔案。

錯誤和存取記錄檔

存在兩種 Access Manager 記錄檔類型:存取記錄檔和錯誤記錄檔。

存取記錄檔記錄有關 Access Manager 部署的一般稽核資訊。記錄檔可能包含一個事件的單一記錄,例如一次成功的認證。記錄檔可能包含相同事件的多個記錄。例如,當管理員使用主控台變更屬性值時,「記錄服務」在一個記錄中記錄變更嘗試。「記錄服務」同時也會在第二個記錄中記錄執行結果。

錯誤記錄檔記錄發生於應用程式中的錯誤。當錯誤記錄檔中記錄了作業錯誤時,作業嘗試會記錄於存取記錄檔中。

平面記錄檔會附加副檔名 .error .access。資料庫的表格名稱則以 _ERROR_ACCESS 結尾。例如,記錄主控台事件的平面檔案命名為 amConsole.access,記錄相同事件的資料庫表格命名為 AMCONSOLE_ACCESSamConsole_access

下表提供對每個 Access Manager 元件所產生之記錄檔的簡要描述。

表 10–1 Access Manager 元件記錄檔

元件 

記錄檔名稱前綴 

記錄的資訊 

階段作業 

amSSO

階段作業管理屬性值,如登入時間、登出時間、逾時限制。 

管理主控台 

amConsole

經由管理主控台執行的使用者動作,如識別相關之物件、範圍,及策略的建立、刪除與修改。 

認證 

amAuthentication

使用者登入和登出。 

識別聯合 

amFederation

聯合相關事件,如「認證網域」的建立和「寄存提供者」的建立。聯合記錄檔的前綴是 amFederation

授權 (策略) 

amPolicy

策略相關事件,如策略建立、刪除或修改以及策略評估。 

策略代理程式 

amAgent

有關為使用者存取或拒絕使用者存取之資源的異常。amAgent 記錄檔位於安裝策略代理程式的伺服器上。在 Access Manager 主機上於「認證記錄檔」中記錄代理程式事件。

SAML 

amSAML

SAML 相關事件,如指定和工件的建立或移除、回應和請求的詳細資訊以及 SOAP 錯誤。 

指令行 

amAdmin

使用 amadmin 指令行工具進行作業的過程中發生的事件錯誤。若指定平面檔案記錄,則 amAdmin 記錄檔會位於主記錄目錄 (預設為 /var/opt/SUNWam/logs) 下的 amadmincli 子目錄中。例如:載入服務模式、建立策略和刪除使用者。

如需 Access Manager 記錄檔的清單及說明,請參閱「Access Manager Administration Reference」中的「Access Manager Log File Reference」。

除錯檔案

除錯檔案並非記錄服務的功能。它們是使用獨立於記錄 API 的其他 API 寫入。除錯檔案儲存在 /var/opt/SUNWam/debug。此位置 (以及除錯資訊的等級) 可在 AMConfig.properties 檔案中配置,此檔案位於 AccessManager-base/SUNWam/lib/ 目錄中。如需關於除錯特性的更多資訊,請參閱「Access Manager Administration Reference」中的 AMConfig.properties 檔案參照一章。

除錯等級

除錯檔案可記錄的資訊分為幾個等級。除錯等級是以 AMConfig.propertiescom.iplanet.services.debug.level 特性設定。

  1. Off— 不記錄除錯資訊。

  2. Error— 此等級用於生產。生產時,除錯檔案中應無錯誤。

  3. Warning— 目前並不建議使用此等級。

  4. Message— 此等級利用程式碼追蹤對可能的問題發出警示。大多數 Access Manager 模組使用此等級傳送除錯訊息。


    備註 –

    [Warning] 與 [Message] 等級不可用於生產中。這樣會嚴重降低效能並產生大量的除錯訊息。


除錯輸出檔案

除非模組寫入除錯檔案,否則不會建立除錯檔案。因此,在預設錯誤模式下不會產生除錯檔案。登入時若除錯等級設為訊息,則建立的除錯檔案包括:

最常使用的檔案是 amSDKamProfile 和所有適用於認證的檔案。所擷取的資訊包括日期、時間和訊息類型 ([錯誤]、[警告]、[訊息])。

使用除錯檔案

依預設,除錯等級設為錯誤。當管理員要進行下列作業時,除錯檔案十分有用:

應將我們以後可能會收到的疑難排解指南與除錯檔案配合使用。例如,當 SSL 失敗時,某些人可能會開啟除錯訊息並尋找 amJSS 除錯檔案中的任何特定憑證錯誤。

第 11 章 通知服務

Sun Java System Access Manager 7.1 通知服務可讓您將階段作業通知傳送到遠端 Web 容器。需要啟用這個服務以供遠離 Access Manager 伺服器本身執行的 SDK 應用程式使用。本章說明如何啟用遠端 Web 容器,以接收通知。包含以下小節:

簡介

「通知服務」可讓您將階段作業通知傳送到正在遠端執行 Access Manager SDK 的 Web 容器。通知僅適用於「階段作業」、「策略」及「命名服務」。此外,遠端應用程式必須在 Web 容器內執行。通知的目的在於:

請注意,唯有在 Web 容器上安裝遠端 SDK 後,才可接收通知。

啟用通知服務

下列是配置遠端 SSO SDK 以接收階段作業通知所需的步驟。

Procedure接收階段作業通知

  1. 在電腦 1 上安裝 Access Manager。

  2. 在電腦 2 上安裝 Sun Java System Web Server。

  3. 在安裝 Web Server 的同一電腦上安裝 SUNWamsdk

    如需遠端安裝 Access Manager SDK 的說明,請參閱「Sun Java Enterprise System 5 安裝指南」。

  4. 請確保下列與安裝 SDK 所在電腦有關的事項為真。

    1. 請確定已為安裝 SDK 的伺服器上的 /remote_SDK_server/SUNWam/lib 及 /remote_SDK_server/SUNWam/locale 目錄設定正確的存取權限。

      這些目錄包含位於遠端伺服器上的檔案及 jar。

    2. 請確定針對 Web Server 的 server.policy 檔案的「授權」區段設定下列權限。

      server.policy 位於 Web Server 安裝的 config 目錄中。必要時,可以複製及貼上這些權限:

      permission java.security.SecurityPermission "putProviderProperty.Mozilla-JSS"

      permission java.security.SecurityPermission "insertProvider.Mozilla-JSS";

    3. 請確定在 server.xml 中設定正確的類別路徑。

      server.xml 也位於 Web Server 安裝的 config 目錄中。通常的類別路徑是:

      <JAVA javahome="/export/home/ws61/bin/https/jdk" 
      serverclasspath="/export/home/ws61/bin/https/jar/webserv-rt.jar:${java.home}/lib/tools.jar:/export/home/ws61/bin/https/jar/webserv-ext.jar:/export/home/ws61/bin/https/jar/webserv-jstl.jar:/export/home/ws61/
      	bin/https/jar/nova.jar"
      classpathsuffix="::/IS_CLASSPATH_BEGIN_DELIM:				//usr/share/lib/xalan.jar:				//export/SUNWam/lib/xmlsec.jar:				//usr/share/lib/xercesImpl.jar:				//usr/share/lib/sax.jar:				//usr/share/lib/dom.jar:				//export/SUNWam/lib/dom4j.jar:				//export/SUNWam/lib/jakarta-log4j1.2.6.jar:				//usr/share/lib/jaxm-api.jar:				//usr/share/lib/saaj-api.jar:				//usr/share/lib/jaxrpc-api.jar:				//usr/share/lib/jaxrpc-impl.jar:				//export/SUNWam/lib/jaxm-runtime.jar:				//usr/share/lib/saaj-impl.jar:/export/SUNWam
      				//lib:/export/SUNWam/locale:				//usr/share/lib/mps/jss3.jar:				//export/SUNWam/lib/	am_sdk.jar:				//export/SUNWam/lib/am_services.jar:				//export/SUNWam/lib/am_sso_provider.jar:				//export/SUNWam/lib/swec.jar:				//export/SUNWam/lib/acmecrypt.jar:				//export/SUNWam/lib/iaik_ssl.jar:				//usr/share/lib/jaxp-api.jar:				//usr/share/lib/mail.jar:				//usr/share/lib/activation.jar:				//export/SUNWam/lib/servlet.jar:				//export/SUNWam/lib/am_logging.jar:				//usr/share/lib/commons-logging.jar:				//IS_CLASSPATH_END_DELIM:" 
      envclasspathignored="true" debug="false"
      debugoptions="-Xdebug -Xrunjdwp:transport=dt_socket,
      server=y,suspend=n" 
      javacoptions="-g" 
      dynamicreloadinterval="2">
      
  5. 使用安裝在遠端 SDK 伺服器上的 SSO 範例來進行配置。

    1. 移至 /remote_SDK_server /SUNWam/samples/sso 目錄。

    2. 執行 gmake

    3. 將產生的類別檔案從 /remote_SDK_server/SUNWam/samples/sso 複製到 /remote_SDK_server/SUNWam/lib/

  6. am.encryption.pwd 的加密值從隨 Access Manager 安裝的 AMConfig.properties 檔案複製到安裝 SDK 的遠端伺服器上的 AMConfig.properties 檔案。

    am.encryption.pwd 的值用於加密及解密密碼。

  7. amadmin 的身份登入 Access Manager。

    http://AcceessManager-HostName :3000/amconsole

  8. 在瀏覽器位置欄位中輸入 http://remote_SDK_host:58080/servlet/SSOTokenSampleServlet 並驗證 SSOToken 來執行 servlet。

    SSOTokenSampleServlet 用於驗證階段作業記號和增加偵聽程式。執行 servlet 將列印下列訊息:

    SSOToken host name: 192.18.149.33 SSOToken Principal name: uid=amAdmin,ou=People,dc=red,dc=iplanet,dc=com Authentication type used: LDAP IPAddress of the host: 192.18.149.33 The token id is AQIC5wM2LY4SfcyURnObg7vEgdkb+32T43+RZN30Req/BGE= Property: Company is - Sun Microsystems Property: Country is - USA SSO Token Validation test Succeeded

  9. 在安裝用戶端 SDK 所在電腦的 AMConfig.properties 中設定特性 com.iplanet.am.notification.url=


    com.iplanet.am.notification.url=http://clientSDK_host.domain:port
    /servlet
        com.iplanet.services.comm.client.PLLNotificationServlet
  10. 重新啟動 Web Server。

  11. amadmin 的身份登入 Access Manager。

    http://AcceessManager-HostName :3000/amconsole

  12. 再次在瀏覽器位置欄位中輸入 http://remote_SDK_host:58080/servlet/SSOTokenSampleServlet 並驗證 SSOToken 來執行 servlet。

    執行遠端 SDK 的機器接收到通知時,它會在階段作業狀態變更時呼叫對應的偵聽程式。請注意,唯有在 Web 容器上安裝遠端 SDK,才可接收通知。

Procedure在僅限入口網站安裝中啟用通知服務

本節描述在預設會以輪詢模式執行的僅限入口網站安裝中,使用 WebLogic 8.1 啟用通知的步驟。對於也包含 amserver 元件的入口網站實例,則不需要這些程序。amserver 元件會自動配置,以執行通知。

  1. 在 WebLogic 中註冊 PLLNotificationServlet

    WebLogic 8.1 要求部署 Web 應用程式。此外,servlet URL 必須有效,以便從瀏覽器存取時,可以傳回下列訊息:


    Webtop 2.5 Platform Low Level notification servlet
  2. 將註冊的 URL 輸入到 AMConfig.properties,如下所示:

    com.iplanet.am.notifaction.url=http:// weblogic_instance-host.domain:port/notification/PLLNotificationServlet

  3. 在 AMConfig.properties 中禁用輪詢。這會自動啟用通知:

    com.iplanet.am.session.client.polling.enable=false

  4. 重新啟動 WebLogic 並測試配置。

    如果您已將除錯模式設為 message,您應該會在觸發後,看到抵達入口網站的階段作業通知。例如,從 Access Manager 主控台終止使用者這樣的類似動作將引發通知事件。