Sun Java System Identity Server 2004Q2 管理指南 |
第 10 章
amadmin 指令行工具本章提供有關 amadmin 指令行工具的資訊,包含以下小節:
amadmin 指令行工具可執行檔指令行可執行檔 amadmin 的主要用途是將 XML 服務檔案載入 Directory Server,並對 DIT 執行批次管理工作。amadmin 位於 IdentityServer_base/SUNWam/bin 中,用來執行以下作業:
- 載入 XML 服務檔案 - 管理員將使用 XML 服務檔案格式 (在 sms.dtd 中定義) 的服務載入 Identity Server 中。必須使用 amadmin 載入所有服務;不能透過 Identity Server 主控台匯入這些服務。
注意
XML 服務檔案儲存在 Directory Server 中,作為供 Identity Server 參考之 XML 資料的靜態 blob。Directory Server 僅能夠識別 LDAP,並不使用該資訊。
- 對 DIT 執行身份物件的批次更新 - 管理員可使用 amadmin.dtd 中定義的批次處理 XML 檔案格式對 Directory Server DIT 執行批次更新。例如,如果管理員希望建立 10 個組織、1000 個使用者和 100 個群組,可以將這些請求放在一個或多個批次處理 XML 檔案中,然後使用 amadmin 載入這些檔案,從而一次達到上述目的。如需更多的相關資訊,請參閱「Identity Server Developer’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 檔案 (於 identity_server_root/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 檔案傳送至此選項的更多資訊,請參閱「Identity Server Developer’s Guide」中的「Servic Management」一章。
--schema (-s)
--schema 是將 Identity Server 服務的屬性載入 Directory Server 的選項。它以定義服務屬性的 XML 服務檔案作為引數。這種 XML 服務檔案基於 sms.dtd。可以指定一個或多個 XML 檔案。
--deleteservice (-r)
--deleteservice 是用於僅刪除服務及其模式的選項。
--serviceName
--serviceName 是值等於在 XML 服務檔案的 Service name=... 標籤下定義的服務名稱的選項。此部分顯示在程式碼範例 10-1 中。
--help (-h)
--help 是顯示 amadmin 指令語法的引數。
--version (-n)
--version 是顯示公用程式名稱、產品名稱、產品版本和法律聲明的引數。
在聯盟管理中使用 amadmin
這個部份列出用於聯盟管理的 amadmin 參數。 如需有關聯盟管理的更多資訊,請參閱「Identity Server Federation Management Guide」。
載入自由中繼相容 XML 到 Directory Server
amadmin -u|--runasdn <使用者的 DN>
-w|--password <密碼> 或 -f|--passwordfile <密碼檔案>
-e|--entityname <實體名稱>
-g|--import <xml 檔>
--runasdn (-u)
使用者的 DN:
--password (-w)
使用者的密碼。
--passwordfile (-f)
包含使用者密碼的檔案名稱。
--entityname (-e)
實體名稱。 例如 http://www.example.com。 實體必須只屬於一個組織。
--import (-g)
包含中繼資訊的 XML 檔案名稱。 這個檔案必須附屬在自由中繼規格以及 XSD 中。
匯出一個實體到 XML 檔 (無 XML 數位登入)
amadmin -u|--runasdn <使用者的 DN>
-w|--password <密碼> 或 -f|--passwordfile <密碼檔案>
-e|--entityname <實體名稱>
-o|--export <檔案名稱>
--runasdn (-u)
使用者的 DN:
--password (-w)
使用者的密碼。
--passwordfile (-f)
包含使用者密碼的檔案名稱。
--entityname (--e)
位於 Directory Server 中的實體名稱
--export (-o)
包含實體 XML 的檔案名稱。 XML 必須為自由中繼 XSD 相容。
匯出一個實體到 XML 檔 (含 XML 數位登入)
amadmin -u|--runasdn <使用者的 DN>
-w|--password <密碼> 或 -f|--passwordfile <密碼檔案>
-e|--entityname <實體名稱>
-q|--exportwithsig <檔案名稱>
--runasdn (-u)
使用者的 DN:
--password (-w)
使用者的密碼。
--passwordfile (-f)
包含使用者密碼的檔案名稱。
--entityname (--e)
位於 Directory Server 中的實體名稱
--exportwithsig (-o)
包含實體 XML 的檔案名稱。 已經數位簽名這個檔案。 XML 必須符合自由中繼 XSD。
在資源套件中使用 amadmin
下列部分顯示新增、尋找和刪除資源套件的 amadmin 語法。
新增資訊套件
amadmin -u|--runasdn <user-dn> -w|--password <user-password>
-b|--addresourcebundle <name-of-resource-bundle>
-i|--resourcebundlefilename <resource-bundle-file-name>
[-R|--resourcelocale] <locale>
取得資源字串
amadmin -u|--runasdn <user-dn> -w|--password <user-password>
-z|--getresourcestrings <name-of-resource-bundle>
[-R|--resourcelocale] <locale>
刪除資訊套件
amadmin -u|--runasdn <user-dn> -w|--password <user-password>
-j|--deleteresourcebundle <name-of-resource-bundle>
[-R|--resourcelocale] <locale>