| Sun ONE Identity Server 6.1 管理指南 |
第 9 章
amadmin 指令行工具本章提供有關 amadmin 指令行工具的資訊,包含以下小節:
amadmin 指令行工具可執行檔指令行可執行檔 amadmin 的主要用途是將 XML 服務檔案載入 Directory Server,並對 DIT 執行批次管理工作。amadmin 位於 IdentityServer_base/SUNWam/bin 中,用來執行以下作業:
- 載入 XML 服務檔案 - 管理員將使用 XML 服務檔案格式 (在 sms.dtd 中定義) 的服務載入 Identity Server 中。必須使用 amadmin 載入所有服務;不能透過 Identity Server 主控台匯入這些服務。
註
XML 服務檔案作為供 Identity Server 參考之 XML 資料的靜態 blob 儲存在 Directory Server 中。Directory Server 不使用該資訊,它僅識別 LDAP。
- 對 DIT 執行身份物件的批次更新 - 管理員可使用 amadmin.dtd 中定義的批次處理 XML 檔案格式對 Directory Server DIT 執行批次更新。例如,如果管理員希望建立 10 個組織、1000 個使用者和 100 個群組,可以將這些請求放在一個或多個批次處理 XML 檔案中,然後使用 amadmin 載入這些檔案,從而一次達到上述目的。在「Sun One Identity Server Programmer’s Guide」中的「Service Management」一章中可以找到有關此作業的更多資訊。
amadmin 語法
要使用 amadmin,必須遵循許多結構上的規則。使用該工具的一般語法如下:
- amadmin -u | --runasdn dnname -w | --password password [-l | --locale localename] [[-v | --verbose] | [-d |--debug]] -t | --data xmlfile1 [xmlfile2 ...]
- amadmin -u | --runasdn dnname -w | --password password [-l | --locale localename] [[-v | --verbose] | [-d | --debug]] -s | --schema xmlfile1 [xmlfile2 ...]
- amadmin -u | --runasdn dnname -w | --password password [-l | --locale localename] [[-v | --verbose] | [-d | --debug]] -r | --deleteService serviceName1 [serviceName2 ...]
- amadmin -u | --runasdn dnname -w | --password password or -f | --password file passwordfile [-c | --continue] [-l | --locale localename] [[-v | --verbose] | [-d | --debug]] -m | --session servername pattern
- amadmin -h | --help
- amadmin -n | --version
- amadmin -u | --runasdn dnname -w | --password password or - f |--passwordfile passwordfile [-l | --locale localename] [[-v | --verbose] | [-d] |--debug]] -a |--addAttributes serviceName schemaType xmlfile[xmlfile2] ...
amadmin 選項
以下是 amadmin 指令行參數選項的定義:
--runasdn (-u)
--runasdn 用於為 LDAP 伺服器認證使用者。此引數的值等於經授權執行 amadmin 的使用者之識別名稱 (DN);例如
--runasdn uid=amAdmin,ou=People,o=iplanet.com,o=isp。
DN 亦可透過在網域元件之間插入空格並為整個 DN 加上雙引號來進行格式化,例如:--runasdn "uid=amAdmin, ou=People, o=iplanet.com, o=isp"。
--password (-w)
--password 是強制性選項,其值等於使用 --runasdn 選項指定的 DN 之密碼。
--locale (-l)
--locale 是值等於語言環境名稱的選項。此選項可用於自訂訊息語言。如果沒有提供語言環境,系統會使用預設語言環境 en_US。
--continue (-c)
--continue 是在即使出現錯誤的情況下仍將繼續處理 XML 檔案的選項。例如,如果要同時載入三個 XML 檔案,並且載入第一個 XML 檔案失敗,而 amadmin 將繼續載入其餘檔案。
--session (-m)
--session (-m) 是管理階段作業或顯示目前階段作業的選項。指定的 --runasdn 必須與 AMConfig.properties 中超級使用者的 DN 相同,或者就是頂層管理員使用者的 ID。
以下範例將顯示特定服務主機名稱的所有階段作業:
amadmin -u uid=amadmin,ou=people,dc=iplanet,dc=com -v -w 12345678 -m http://sun.com:58080
以下範例將顯示特定使用者的階段作業:
amadmin -u uid=amadmin,ou=people,dc=iplanet,dc=com -v -w 12345678 -m http://sun.com:58080 username
您可以輸入索引編號來終止相應的階段作業,還可以輸入多重索引編號 (以空格分隔) 來終止相應的多重階段作業。
使用以下選項時:
amadmin -m | --session servername pattern
pattern 可以是萬用字元 (*)。如果此式樣使用萬用字元 (*),則必須使用圖元字元 (\) 使其從 shell 退出。
--debug (-d)
--debug 是將訊息寫入 amadmin 檔案 (於 IdentityServer_base/var/opt/SUNWam/debug 目錄之下建立) 的選項。這些訊息是技術方面的詳細說明,但不符合 i18n 標準。若要產生 amadmin 作業日誌,將資料庫驅動程式的類別路徑記錄到資料庫中時,需要將其手動加入。例如,在記錄到 amadmin 中的 mysql 時,可加入以下各行:
CLASSPATH=$CLASSPATH:/opt/IS61/SUNWam/lib/mysql-connector-java-3.0.6-stable-bin.jar
export CLASSPATH
--verbose (-v)
--verbose 是將 amadmin 指令的總體進度列印到螢幕上的選項。它不會將詳細資訊列印到檔案中。輸出到指令行的訊息符合 i18n 標準。
--data (-t)
--data 是以要匯入的批次處理 XML 檔案之名稱作為值的選項。可以指定一個或多個 XML 檔案。這種 XML 檔案可以建立、刪除和讀取各種目錄物件,還可以註冊和取消註冊服務。如需有關可將何種 XML 檔案傳送至此選項的更多資訊,請參閱「Sun ONE Identity Server Programmer’s Guide」中的「Servic Management」一章。
--schema (-s)
--schema 是將 Identity Server 服務的屬性載入 Directory Server 的選項。它以定義服務屬性的 XML 服務檔案作為引數。這種 XML 服務檔案基於 sms.dtd。可以指定一個或多個 XML 檔案。
--deleteservice (-r)
--deleteservice 是用於僅刪除服務及其綱目的選項。
--serviceName
--serviceName 是值等於在 XML 服務檔案的 Service name=... 標籤下定義的服務名稱的選項。此部分顯示在程式碼範例 9-1 中。
--help (-h)
--help 是顯示 amadmin 指令語法的引數。
--version (-n)
--version 是顯示公用程式名稱、產品名稱、產品版本和法律聲明的引數。
使用 amadmin 建立策略可以透過 amadmin 管理策略,但是不能使用 amadmin 直接修改策略。若要修改策略,必須先刪除策略,然後使用 amadmin 加入修改後的策略。
若要使用 amadmin 加入策略,必須先根據 policy.dtd. 產生策略 XML 檔案。(「Sun ONE Identity Server Customization and API Guide」中描述了policy.dtd。) 開發了策略的 XML 檔案後,您可以使用以下指令載入此檔案:
IdentityServer_base/SUNWam/bin/amadmin
--runasdn "uid=amAdmin,ou=People,default_org,root_suffix"
--password password
--data policy.xml
若要同時加入多重策略,請將這些策略放在一個 XML 檔案中,這一點與在每個 XML 檔案中放一個策略相反。如果使用多重 XML 檔案連續快速載入策略,則內部策略索引可能會損毀,而且某些策略可能不參與策略評估。
透過 amadmin 建立策略時,請確保建立認證綱目條件時將認證模組註冊到組織;建立組織、LDAP 群組的主題、LDAP 角色的主題以及 LDAP 使用者的主題時,相應的 LDAP 物件 (組織、群組、角色和使用者) 已存在;建立 IdentityServerRoles 主題時,Identity Server 角色已存在;以及建立子組織參考或同級組織參考時相關的組織已存在。
請注意,SubOrgReferral、PeerOrgReferral、Organization 主題、IdentityServerRoles 主題、LDAPGroups 主題、LDAPRoles 主題和 LDAPUsers 主題中值元素的文字需要是完整的 DN。