Sun Desktop Manager 1.0 管理指南

使用 CLI

调用 CLI 命令

CLI 包含 pgtool 命令,此命令以单行命令模式运行,每次执行一个命令。pgtool 包含很多子命令、选项和操作数,在命令摘要中对这些内容进行了介绍。可以使用完整的关键字或关键字缩写来指定选项。以下命令描述中使用的是完整关键字,但在表 3–2 中提供了与这些命令相对应的快捷键。

CLI 所需的引导信息

要定位和查询包含元素和配置文件的数据存储,必须提供引导信息。所需的引导信息包括服务器、端口号、基本标识名 (Distinguished Name, DN) 和管理员的用户名。可以在命令行或引导文件中指定此信息。

引导文件

可以从属性文件中读取引导信息。可以在命令行中使用 --file 选项指定此文件的位置。

--file=<bootstrap file>:引导文件的全限定路径。默认文件为 $HOME/pgtool.properties

示例:--file=/var/opt/apoc/cli.properties

《Sun Desktop Manager 1.0 安装指南》中的附录 A “配置参数”中介绍了该文件的格式。

引导选项

可以在命令行中使用 --url--username 选项指定引导。

--url=<url>:用于标识数据存储的 URL。URL 的格式为 ldap://<hostname>:<port>/<base name>,其中 <hostname> 是服务器名称(默认值为 localhost),<port> 是服务器上的端口号(默认值为 389),<base name> 是基本条目的标识名。

示例:--url=ldap://server1.sun.com:399/o=apoc

--username=<username>:管理员的用户名,以存储后端使用的格式表示。然后将提示管理员输入密码。如果未使用此选项,并且管理员未使用 pgtool login 子命令,则会提示管理员输入用户名和密码。

示例:--username=“jmonroe”

使用用户名和密码进行验证

每次执行一个命令时,都需要输入用户名和密码。

使用 login 命令进行验证

CLI 提供了一个 login 命令,允许将用户名/密码对存储在管理员主目录的证书文件中。此文件名为 .apocpass.apocpass 文件具有受限制的访问权限。

如果成功通过验证,则将用户名/密码对条目添加到 .apocpass 文件中。此用户名/密码对的关键字包括服务器/端口/基本 DN 和用户名,这样可以在同一文件中存储其他后端的用户名/密码对。

成功运行 login 命令后,即可执行其他 CLI 命令,而无需再指定用户名或密码。

有关如何使用 login 命令的详细信息,请参见登录

其他命令的验证

对于其他命令,CLI 将首先检查是否存在当前用户的 .apocpass 文件。

如果此文件不存在,将提示用户输入用户名和密码。如果输入的用户名和密码成功通过验证,将执行命令。

如果不存在证书文件,但已在命令行中指定了用户名,CLI 将查找与此主机、端口、基本 DN 和用户名相对应的条目。如果存在对应的条目,将使用存储的用户 DN 和密码来执行命令;否则,将提示用户输入密码。

如果未在命令行中指定用户名,将在 .apocpass 文件中搜索使用此主机/端口和基本 DN 组合的关键字。如果此组合只有一个对应的条目,将使用存储的用户 DN 和密码来执行命令。如果存在多个条目,将提示用户输入用户名。如果输入的用户名与某个条目匹配,将使用存储的用户 DN 和密码来执行命令。如果输入的用户名与任何条目都不匹配,将提示用户输入密码。

提示用户输入密码之后,将使用 .apocpass 文件中与此主机/端口/基本 DN 组合相对应的条目来验证用户名和密码。如果不存在这样的条目,将使用匿名访问进行验证。

运行命令

每次运行命令时都将创建并初始化与数据存储的连接,并在执行完命令后立即退出。如果命令退出时报告错误,则说明未对配置文件应用任何更改。

表示元素

元素使用 LDAP 完整标识名 (Distinguished Name, DN) 表示。

示例:uid=jmonroe,ou=People,o=apoc