このセクションでは、Desktop Manager の CLI 機能のサブコマンドについて説明します。
下位互換のために、CLI では --entity オプションを使用して Desktop Manager ユーザーインタフェースの「要素」を指定します。両方の用語の意味は同じです。--element オプションはありません。
使用できるすべての CLI コマンドの一覧を表示するには、pgtool --help と入力します。
バージョン情報を表示するには、pgtool --version と入力します。
プロファイルを要素に割り当てます。
構文
add [--scope=<user|host>] [--entity=<entity>] <profile name> <target entity>
--scope=<user|host> : プロファイルのスコープ。ユーザーまたはホストを指定できます。このオプションを指定しないと、デフォルトでユーザースコープが使用されます。
--entity=<entity> : プロファイルが配置されている要素。このオプションを指定しないと、--scope オプションに応じて、デフォルトでルート組織またはドメイン要素が使用されます。
<profile name> : 要素に割り当てられるプロファイルの名前。指定した名前とスコープを持つプロファイルがこの階層にない場合、または複数ある場合、コマンドはエラーを表示して終了します。
<target entity> : プロファイルが割り当てられる要素。
% pgtool add UserProfile1 cn=Role1,o=staff,o=apoc
ルート組織に配置されているプロファイル「UserProfile1」が要素「cn=Role1,o=staff,o=apoc」に割り当てられます。
新しい空のプロファイルを作成します。
構文
create [--name=<profile name>] [--scope=<user|host>] [--entity=<entity>] [--priority=<priority>]
--name=<profile name> : 作成するプロファイルの名前。この名前とスコープを持つプロファイルがこの階層にすでに存在する場合、コマンドはエラーを表示して終了します。指定しない場合、プロファイル名はデフォルトで「NewProfile」、「NewProfile2」、「NewProfile3」 ... の順に指定されます。
--scope=<user|host> : プロファイルのスコープ。ユーザーまたはホストを指定できます。指定しない場合、デフォルトでユーザースコープが使用されます。
--entity=<entity> : プロファイルが作成される要素。指定しない場合、--scope オプションに応じて、デフォルトでルート組織またはドメイン要素が使用されます。
--priority=<priority>: プロファイルの優先順位を指定する厳密な意味での正の整数。指定した優先順位がこの階層にある同じスコープの既存のプロファイルと同じである場合、priority オプションは無視されます。指定しない場合、作成されるプロファイルはこの階層で最高の優先順位になります。
% pgtool create --scope=host --name=NewHostProfile1
ドメインルートに、スコープが「host」の「NewHostProfile1」という名前の新しいプロファイルが作成されます。
プロファイルを削除します。
構文
delete --name=<profile name> [--scope=<user|host>] [--entity=<entity>]
--name=<profile name> : 削除するプロファイルの名前。このオプションは必須です。指定した名前とスコープを持つプロファイルがこの階層にない場合、または複数ある場合、コマンドはエラーを表示して終了します。
--scope=<user|host> : プロファイルのスコープ。ユーザーまたはホストを指定できます。このオプションを指定しないと、デフォルトでユーザースコープが使用されます。
--entity=<entity> : プロファイルが配置されている要素。指定しない場合、--scope オプションに応じて、デフォルトでルート組織またはドメイン要素が使用されます。
% pgtool delete --scope=host --name=renamedNewHostProfile1
ルートドメインにある「renamedNewHostProfile1」プロファイルが削除されます。
プロファイルに含まれているプロファイルを、指定したターゲットに zip ファイル形式を使用してエクスポートします。
構文
export --name=<profile name> [--scope=<user|host>] [--entity=<entity>] <target>
--name=<profile name> : エクスポートするプロファイルの名前。このオプションは必須です。指定した名前とスコープのプロファイルがこの階層にない場合、または複数ある場合、コマンドはエラーを表示して終了します。
--scope=<user|host> : プロファイルのスコープ。ユーザーまたはホストを指定できます。このオプションを指定しないと、デフォルトでユーザースコープが使用されます。
--entity=<entity> : プロファイルが配置されている要素。指定しない場合、--scope オプションに応じて、デフォルトでルート組織またはドメイン要素が使用されます。
<target> : プロファイルがエクスポートされる zip ファイルのフルパス。パスにファイル名を指定しない場合、デフォルトのファイル名 <profile name>.zip が使用されます。宛先が書き込み可能でない場合、コマンドはエラーを表示して終了します。
% pgtool export --scope=host --name=HostProfile1 /tmp/newdir
ルートドメインにある「HostProfile1」が、新しいディレクトリ /tmp/newdir に作成される HostProfile1.zip にエクスポートされます。
特定のソースから、zip ファイル形式で保存されているプロファイルをインポートします。ソースには、プロファイルにインポートされるプロファイルが含まれています。
構文
import [--name=<profile name>] [--scope=<user|host>] [--entity=<entity>] [--priority=<priority>] <source>
--name=<profile name> : インポートするプロファイルの名前。指定しない場合、デフォルトで .zip ソースファイルの名前が使用されます。同じ名前とスコープのプロファイルがこの階層にすでに存在する場合は、上書きされます。
--scope=<user|host> : プロファイルのスコープ。ユーザーまたはホストを指定できます。このオプションを指定しないと、デフォルトでユーザースコープが使用されます。
--entity=<entity> : プロファイルが配置されている要素。このオプションを指定しないと、--scope オプションに応じて、デフォルトでルート組織またはドメイン要素が使用されます。
--priority=<priority>: プロファイルの優先順位を指定する厳密な意味での正の整数。指定した優先順位がこの階層にある同じスコープの既存のプロファイルと同じである場合、このオプションは無視されます。指定しない場合、インポートされるプロファイルはこの階層で最高の優先順位になります。
<source> : インポートされるプロファイルを含む zip ファイルのフルパス。
% pgtool import --scope=host --name=NewHostProfile1 --priority=7 /tmp/HostProfile1.zip
ルートドメインにある名前「NewHostProfile1」、スコープ「host」、優先順位「7」のプロファイルが HostProfile1.zip からインポートされます。
すべてのプロファイル、または要素およびプロファイルの割り当てを一覧表示します。
--name オプションも --entity オプションも指定しない場合、--scope オプションに応じて、すべてのユーザープロファイルまたはすべてのホストプロファイルが表示されます。
--name オプションを指定すると、プロファイルに割り当てられているすべての要素が表示されます。
--entity オプションを指定すると、要素に割り当てられているすべてのプロファイルが表示されます。
構文
list [--scope=<user|host>] [--entity=<entity>] [--name =<profile name>]
--scope=<user|host> : プロファイルのスコープ。ユーザーまたはホストを指定できます。このオプションを指定しないと、デフォルトでユーザースコープが使用されます。
--entity=<entity> : --name オプションを指定する場合は、プロファイルが配置されている要素。それ以外の場合は、表示されるプロファイルが割り当てられている要素。前者の場合にこのオプションを指定しないと、--scope オプションに応じて、デフォルトでルート組織またはドメイン要素が使用されます。
--name=<profile name> : 割り当てられている要素が表示されるプロファイルの名前。指定した名前とスコープを持つプロファイルがこの階層にない場合、または複数ある場合、コマンドはエラーを表示して終了します。
% pgtool list
ルート組織に割り当てられているプロファイルが表示されます。
% pgtool list --scope=host --name=HostProfile1
ルートドメインにあるプロファイル「HostProfile1」に割り当てられている要素が表示されます。
このデータストアに対する認証が成功したあとに、データストアバックエンドのユーザ名とパスワードを保存します。このユーザー名とパスワードは、将来 pgtool を呼び出すときに使用できます。
この資格情報は、管理者のホームディレクトリの .apocpass というファイルに保存されます。このファイルがすでに存在し、このファイルに正しいアクセス権が設定されていない場合、コマンドはエラーを表示して終了します。
ユーザー名を指定すると、パスワードの入力を求めるメッセージが表示されます。ユーザー名を指定していない場合、ユーザー名とパスワードの入力を求めるメッセージが表示されます。ユーザー名とパスワードの認証は、データストアに対する匿名アクセスを使用して行われます。匿名アクセスがサポートされていない場合は、承認済みのユーザー名とパスワードの入力を求めるメッセージが表示されます。承認済みのユーザー名による認証が失敗する場合、コマンドはエラーを表示して終了します。
認証が行われると、ホスト / ポート / ベース DN とユーザー名の組み合わせで構成されるキーを使用して、ユーザー名とパスワードのペアのエントリが管理者の .apocpass ファイルに保存されます。それによって、ユーザー名とパスワードのペアがほかのバックエンドに対して同じファイルに保存されます。
ブートストラップ情報をコマンドで指定するには、その情報があるファイルを示す --file オプションを使用するか、その情報を直接指定する --url オプションを使用します。ブートストラップの詳細は、「CLI で必要となるブートストラップ情報」を参照してください。
ブートストラップ情報が利用できないか、資格情報ファイルが作成できない場合は、コマンドはエラーを表示して終了します。
資格情報ファイルが正常に作成される場合は、このストレージバックエンドを使用する後続の pgtool コマンドでユーザー名とパスワードを指定する必要はありません。資格情報ファイルに保存されているユーザー名とパスワードの詳細が使用されます。
構文
login [--username=<username>] [--file=<bootstrap file>] [--url=<url>]
--username=<username> : ストレージバックエンドで使用されている書式で管理者のユーザー名を指定します (例: “jmonroe”)。
--file=<bootstrap file> : ブートストラップファイルの完全修飾パス。デフォルトのファイルは $HOME/pgtool.properties です。このオプションは --url オプションとともに使用することはできません。
--url=<url> : データストアを識別する URL。URL の書式は ldap://<hostname>:<port>/<base name> です。<hostname> はサーバー名 (デフォルトは localhost)、<port> はサーバー上のポート名 (デフォルトは 389)、および <base name> はベースエントリの識別名です。
% pgtool login --username=jmonroe [メッセージが表示されたら正しいパスワードを入力]
「jmonroe」と「password」のエントリとともに ~/.apocpass という名前のファイルが作成されます。ファイルのアクセス権は 600 です。接続先のバックエンドに関する情報は、デフォルトのブートストラップファイル ~/pgtool.properties にあります。
プロファイルの優先順位を変更します。
構文
modify [--scope=<user|host>] [--entity=<entity>] <profile name> <priority>
--scope=<user|host> : プロファイルのスコープ。ユーザーまたはホストを指定できます。このオプションを指定しないと、デフォルトでユーザースコープが使用されます。
--entity=<entity> : プロファイルが配置されている要素。このオプションを指定しないと、--scope オプションに応じて、デフォルトでルート組織またはドメイン要素が使用されます。
<profile name> : 優先順位を変更するプロファイルの名前。指定した名前とスコープを持つプロファイルがこの階層にない場合、または複数ある場合、コマンドはエラーを表示して終了します。
<priority> : プロファイルの優先順位を指定する厳密な意味での正の整数。指定された優先順位がこの階層における同じスコープの既存のプロファイルと同じである場合、コマンドはエラーを表示して終了します。
% pgtool modify UserProfile1 15
ルート組織にある「UserProfile1」の優先順位が 15 に変更されます。
要素からプロファイルの割り当てを解除します。
構文
remove [--scope=<user|host>] [--entity=<entity>] <profile name> <target entity>
--scope=<user|host> : プロファイルのスコープ。ユーザーまたはホストを指定できます。このオプションを指定しないと、デフォルトでユーザースコープが使用されます。
--entity=<entity> : プロファイルが配置されている要素。このオプションを指定しないと、--scope オプションに応じて、デフォルトでルート組織またはドメイン要素が使用されます。
<profile name> : ターゲットの要素から割り当て解除するプロファイルの名前。
<target entity>: プロファイルの割り当てを解除する要素。
% pgtool remove UserProfile1 cn=Role1,o=staff,o=apoc
ルート組織に配置されているプロファイル「UserProfile1」が要素「cn=Role1,o=staff,o=apoc」から割り当て解除されます。
プロファイルの名前を変更します。
構文
rename [--scope=<user|host>] [--entity=<entity>] <profile name> <newname>
--scope=<user|host> : プロファイルのスコープ。ユーザーまたはホストを指定できます。このオプションを指定しないと、デフォルトでユーザースコープが使用されます。
--entity=<entity> : プロファイルが配置されている要素。このオプションを指定しないと、--scope オプションに応じて、デフォルトでルート組織またはドメイン要素が使用されます。
<profile name> : 名前を変更するプロファイルの現在の名前。
<newname> : プロファイルの新しい名前。この名前とスコープのプロファイルが同じ階層にすでに存在する場合、コマンドはエラーを表示して終了します。
% pgtool rename NewUserProfile2 renamedNewUserProfile2
ルート組織にある「NewUserProfile2」の名前が「renamedNewUserProfile2」に変更されます。