本章介绍了如何使用 Service Registry 的管理工具(“管理工具”)。
本章包括以下内容:
Service Registry 管理工具提供了一个简单的命令行界面,可用于执行公用管理任务(例如,向 Registry 中添加关联和从 Registry 中删除对象)。
该工具能够以两种模式运行:
在批处理模式中,可以在工具的命令行中指定一个或多个命令。
在交互式模式中,可以在工具的交互式 Shell 中输入命令。
多个命令(例如 ls 和 rm)可模仿对文件和文件夹运行的已知 UNIX® 命令的名称和行为。其他命令没有相应的等效 UNIX 命令。
要启动管理工具,请执行 admin-tool.jar 文件:
java java-options -jar ServiceRegistry-base/lib/admin-tool.jar [admin-tool-options]... |
java 命令通常位于目录 /usr/jdk/entsys-j2se/bin 中。
ServiceRegistry-base 的位置为 /opt/SUNWsrvc-registry(在 Solaris 操作系统上)或 /opt/sun/srvc-registry(在 Linux 和 HP-UX 系统上)。
您可以安全地忽略启动工具时显示的警告。
要退出管理工具,请使用 quit 命令。
要在批处理模式中运行管理工具,请在启动管理工具时在命令行中指定 -command 选项。
例如,以下命令将执行 ls 命令:
java -jar ServiceRegistry-base/lib/admin-tool.jar -command "ls *.html" |
管理工具将把您的命令和工具的响应回显到屏幕上,然后在执行完命令后退出。
确保正确转义对 Shell 有效的所有字符。
要在交互式模式中运行管理工具,请在命令行中指定除了 -command 以外的任何选项(或不指定任何选项)来启动管理工具 Shell:
java -jar ServiceRegistry-base/lib/admin-tool.jar |
管理工具将显示以下提示符并等待您输入命令:
admin> |
访问密钥库中的用户证书时使用的别名。请指定您在注册为用户时使用的别名。如果使用管理工具向 Registry 中发布数据,则需要此选项。
在不从交互式 Shell 中获取命令的情况下运行的管理工具命令序列。使用分号 (;) 可以分隔多个命令。不必在 commands 中包括 quit 命令。如果需要不将分号用作命令分隔符,请在分号前加上一个反斜杠:
\; |
运行管理工具的 Shell 可能需要使用另一个反斜杠来转义该反斜杠:
\\; |
如果命令中包含空格,请把整个命令序列用单引号或双引号引起来,以使管理工具将该序列作为一个命令行参数而不是多个命令行参数进行处理。如果您的 Shell 还将分号解释为 Shell 命令的分隔符,则必须始终把多个管理工具命令序列用引号引起来。
如果有必要,则创建由 -root 选项指定的注册表包 (RegistryPackage),并根据需要创建任意个注册表包 (RegistryPackage) 父对象。仅当运行管理工具的用户被授权创建对象时,此选项才有效。
输出在调试时会有用的附加信息。
提供这些选项的列表。
访问密钥库中的用户证书时使用的密码。请指定您在注册为用户时使用的密码。如果使用管理工具向 Registry 中发布数据,则需要此选项。
与本地文件系统中的文件相关的命令所使用的本地文件系统中的基本目录。
选择资源包时使用的语言环境(例如 en 或 fr),将使用该语言环境显示错误消息和状态消息。默认值由 Java 虚拟机 (Java Virtual Machine, JVM) 确定。
连接指向的 ebXML 注册表的 URL。默认值为 http://localhost:6480/soar/registry/soap。
注册表包 (RegistryPackage)的定位器(例如 /registry/userData),用作把系统信息库作为注册表包 (RegistryPackage) 对象的树(每个对象都包含其他注册表对象 (RegistryObject) 和注册表包 (RegistryPackage) 对象)处理的命令的基础。默认值是为所有用户的数据定义的注册表包 (RegistryPackage):/registry/userData。
执行 SQL-statement 来选取注册表 (Registry) 对象。该语句必须是以 select 为开头的完整的 SQL 语句。SQL 语句必须用引号引起来,但无需以分号结尾。如果指定此选项,然后使用不带参数的 select 命令,则命令将执行 SQL-statement,直到您使用带参数(而不是 SQL-statement)的 select 命令为止。
指定状态消息的详细输出。
-help 选项的输出将列出不受此版本支持的两个选项:-class 和 -property。
您可以使用某些管理工具命令向 Registry 中发布内容:例如 cp 和 import。此外,可以使用 rm 命令从 Registry 中删除内容。在使用这些命令之前,必须执行一些其他步骤。
按照《Service Registry 3.1 用户指南》中的“创建用户帐户”中的说明执行用户注册。
请记住您下载的 PKCS12 证书的位置,以及您指定的用户名和密码。
启动管理工具:
java -jar ServiceRegistry-base/lib/admin-tool.jar |
执行 keystoreMover 命令将 PKCS12 证书导出到 JKS 密钥库中。有关详细信息,请参见keystoreMover。
通常,只需指定命令示例中显示的四个选项。
停止管理工具:
quit |
再次启动管理工具。这次,按如下方式指定选项:
java -Djaxr-ebxml.security.storetype=JKS \ -Djaxr-ebxml.security.keystore=security/filename \ -Djaxr-ebxml.security.storepass=ebxmlrr \ -jar ServiceRegistry-base/lib/admin-tool.jar -alias alias -keypass password |
其中,filename 是证书文件的名称,通常为 keystore.jks。security/filename 是相对于 $HOME/soar/3.0/jaxr-ebxml 目录的位置。alias 和 password 值是您在创建用户帐户时指定的别名和密码。
要保存键入的内容,请创建脚本以执行此命令。
此部分介绍了管理工具的以下功能:
使用管理工具时,您只能执行在启动工具时指定其主别名和密码的用户可以执行的操作。只有具有管理员角色的用户才能执行对不属于该用户的对象进行更改的命令。有关详细信息,请参见创建管理员。
使用管理工具可以使您避免在命令失败时查看较长的堆栈追踪。
当命令失败时,管理工具将打印堆栈追踪的第一行及以下消息:
An error occurred when executing the function. Use the show exception command to view messages. |
如果需要更多信息,则接着执行 show exception 命令以查看完整的堆栈追踪。
show exception 命令用于始终显示紧接在前面的命令的堆栈追踪。
识别注册表 (Registry) 对象的主要方法是通过名称来识别。但是,通常通过从 registry 根目录到注册表包 (RegistryPackage) 的路径来识别注册表包 (RegistryPackage) 对象。例如,/registry/userData 是指向 userData 注册表包 (RegistryPackage) 的路径。
匹配某些名称时可以使用通配符。使用问号 (?) 可以匹配单个字符。使用星号 (*) 可以匹配零个或多个字符。
一些命令(例如 cd 和 chown)支持通过对象的统一资源名称 (Uniform Resource Name, URN)(必须以 urn: 开头)来对其进行识别。例如,urn:uuid:2702f889-3ced-4d49-82d1-e4cd846cb9e4 便是一个有效的 URN。
chown 和 cp 命令还支持使用 %number 来引用上一个 users 命令列出的用户 (User)。
对于某些命令,您可以输入包含空格的名称,方法为把整个名称用双引号引起来,或在名称中的每个空格前加一个反斜杠。
select 命令支持使用 SQL 通配符:百分号 (%) 用于匹配多个字符,下划线 (_) 用于匹配单个字符。
一个注册表对象 (RegistryObject)(或注册表包 (RegistryPackage))可以有多个名称,每个名称又可与不同的语言环境相关联。
您指定的路径和对象名称仅是针对当前语言环境求得的结果。当您尝试按名称选择具有多个名称的注册表 (Registry) 对象时,Registry 仅尝试根据注册表 (Registry) 对象的一个名称(其语言环境与当前语言环境的匹配程度最接近的选项)来对您提供的名称进行匹配,而不根据注册表 (Registry) 对象的所有多个名称进行匹配。
例如,假定当前注册表包 (RegistryPackage) 有一个成员对象具有两个名称,每个名称与不同的语言环境相关联:en(英语)语言环境中的 red 和 fr(法语)语言环境中的 rouge。在当前语言环境为 en 时,命令 ls rouge 不显示该成员对象,但在语言环境为 fr(或其变形之一)时,则显示该成员对象。
管理工具识别的命令名称和字符参数不区分大小写。例如,ls、Ls 和 LS 是等效的。
赋值的选项将被对应地传递给使用该选项的代码。
下面几个部分将介绍可用的命令。
对于每个命令,选项和操作数的一般形式和说明遵守以下印刷约定:
斜体表示一个选项参数或操作数,它应由运行命令时的实际值替代。
大括号 ({ }) 用于限定一组选项或操作数,您必须在命令中包括其中的一项。用竖线 (|) 分隔选项或操作数。
方括号 ([ ]) 用于限定一个或一组选项或操作数,您可以省略其中的项目。
选项或操作数之后的省略号 (...) 表示可以重复使用该参数或操作数。
其他内容是运行命令时必须包括的字符文本。
向 Registry 中添加关联 (Association) 对象。
add association 命令用于向 Registry 中添加指定类型的关联 (Association) 对象。
您可以使用以下类型:
AccessControlPolicyFor
AffiliatedWith(拥有 EmployeeOf 和 MemberOf 子概念)
Contains
ContentManagementServiceFor
EquivalentTo
Extends
ExternallyLinks
HasFederationMember
HasMember
Implements
InstanceOf
InvocationControlFileFor(拥有 CatalogingControlFileFor 和 ValidationControlFileFor 子概念)
OffersService
OwnerOf
RelatedTo
Replaces
ResponsibleFor
SubmitterOf
Supersedes
Uses
关联 (Association) 对象的类型。
源对象的 URN。
目标对象的 URN。
以下命令(全都在一行)将在具有两个指定 URN 的对象之间创建 RelatedTo 关系。
admin> add association -type RelatedTo urn:uuid:ab80d8f7-3bea-4467-ad26-d04a40045446 urn:uuid:7a54bbca-2131-4a49-8ecc-e7b4ac86c4fd |
向 Registry 中添加用户。
add user 命令用于添加用户 (User) 对象。通常,用户 (User) 对象至少包含一个邮政地址 (PostalAddress)、电话号码 (TelephoneNumber) 和电子邮件地址 (EmailAddress) 对象。
在命令行中或通过 -load 选项指定含有信息的 Java 属性文件来指定有关用户的信息。将按照信息选项和 -load 选项在命令行中显示的顺序求值。例如,您可以在命令行中指定一些属性,从某个属性文件中装入其他属性,然后用后面的命令行选项覆盖该属性文件中的信息。
您最多可以为一个新用户指定三组地址、电话号码和电子邮件地址。如果需要指定更多信息,您可以在以后使用 Web 控制台或 JAXR 来添加。
当您指定地址、电话号码或电子邮件地址时,必须提供针对其类型的值:例如,-emailType OfficeEmail。
您可以在命令行中针对每个用户都需要的某些通用信息使用缩略选项(例如 -fn)。但是,当您在属性文件中提供此信息时,必须使用较长的形式。例如,您可以在命令行中使用 -email1.address、-emailAddress 或 -email 指定用户的第一个电子邮件地址。但是,当您在属性文件中指定第一个电子邮件地址时,必须使用 email1.address=。由于用户的第二个电子邮件地址只有一个选项,因此在命令行中必须使用 -email2.address,在属性文件中必须使用 email2.address=。
如果指定了 -edit 选项,管理工具将启动编辑器,以使您可以编辑新用户的信息。有关详细信息,请参见选项说明。
此命令将为新用户在主目录的 $HOME/soar/3.0/jaxr-ebxml/security/keystore.jks 文件中创建证书密钥库。如果您以 root 身份运行此工具,则主目录为 / 或 /root。
使用 -load 装入或使用 -edit 编辑的属性文件使用 IS0-8859-1 字符集,就象所有 Java 属性文件一样。有关如何在属性文件中表示不属于 ISO-8859-1 的字符的详细信息,请参见 java.util.Properties.load(InputStream) 文档。
使管理工具启动编辑器,以使您可以编辑新用户的信息。对其他命令行参数求值之后,管理工具将启动编辑器。因此,首先编辑对命令行或属性文件中指定的所有信息进行求值所得的结果。编辑程序必须在不出错的情况下终止,然后命令才能继续执行。管理工具将启动由 set editor 命令(请参见set)指定的编辑器;默认情况下,此编辑器为 vi 编辑器。
在此版本中,-edit 可与 emacsclient 和 NetBeansTM 命令 bin/runide.sh --open 结合使用(但不是很好) ,但还不能与 vi 结合使用。
指定用于指定用户属性的 Java 属性文件。属性名称与 add user 命令选项的长型名称(例如 lastName 和 post1.type)相同。
指定用户的名字。
指定用户的姓氏。姓氏是必需的信息,必须在命令行或属性文件中指定。
指定用户的中间名。
访问密钥库中的用户证书时使用的别名。此选项是必需的选项。别名的长度不能少于三个字符。
访问密钥库中的用户证书时使用的密码。此选项是必需的选项。密码的长度不能少于六个字符。
第一个邮政地址 (PostalAddress) 的类型。类型是必需的信息,必须在命令行或属性文件中指定。值为一个任意字符串(例如 Office 或 Home)。
第一个邮政地址 (PostalAddress) 的城市。
第一个邮政地址 (PostalAddress) 的国家/地区。
第一个邮政地址 (PostalAddress) 的邮政编码。
第一个邮政地址 (PostalAddress) 的省/自治区/直辖市。
第一个邮政地址 (PostalAddress) 的街道名称。
第一个邮政地址 (PostalAddress) 的门牌号码。
第二个邮政地址 (PostalAddress) 的类型。如果指定了第二个邮政地址 (PostalAddress),则类型是必需的信息,必须在命令行或属性文件中指定。值为一个任意字符串(例如 Office 或 Home)。
第二个邮政地址 (PostalAddress) 的城市。
第二个邮政地址 (PostalAddress) 的国家/地区。
第二个邮政地址 (PostalAddress) 的邮政编码。
第二个邮政地址 (PostalAddress) 的省/自治区/直辖市。
第二个邮政地址 (PostalAddress) 的街道名称。
第二个邮政地址 (PostalAddress) 的门牌号码。
第三个邮政地址 (PostalAddress) 的类型。如果指定了第三个邮政地址 (PostalAddress),则类型是必需的信息,必须在命令行或属性文件中指定。值为一个任意字符串(例如 Office 或 Home)。
第三个邮政地址 (PostalAddress) 的城市。
第三个邮政地址 (PostalAddress) 的国家/地区。
第三个邮政地址 (PostalAddress) 的邮政编码。
第三个邮政地址 (PostalAddress) 的省/自治区/直辖市。
第三个邮政地址 (PostalAddress) 的街道名称。
第三个邮政地址 (PostalAddress) 的门牌号码。
第一个电话号码 (TelephoneNumber) 的类型。类型是必需的信息,必须在命令行或属性文件中指定。值为一个任意字符串,但可以指定下面的一种已知类型:Beeper、FAX、HomePhone、MobilePhone 或 OfficePhone。
第一个电话号码 (TelephoneNumber) 的区号。
第一个电话号码 (TelephoneNumber) 的国家/地区代码。
第一个电话号码 (TelephoneNumber) 的分机。
第一个电话号码 (TelephoneNumber) 的电话号码后缀(不包括国家/地区代码或区号)。号码是必需的信息,必须在命令行或属性文件中指定。
第一个电话号码 (TelephoneNumber) 的 URL(可以在网上拨打此号码的 URL)。
第二个电话号码 (TelephoneNumber) 的类型。如果指定了第二个电话号码 (TelephoneNumber),则类型是必需的信息,必须在命令行或属性文件中指定。值为一个任意字符串,但可以指定下面的一种已知类型:Beeper、FAX、HomePhone、MobilePhone 或 OfficePhone。
第二个电话号码 (TelephoneNumber) 的区号。
第二个电话号码 (TelephoneNumber) 的国家/地区代码。
第二个电话号码 (TelephoneNumber) 的分机。
第二个电话号码 (TelephoneNumber) 的电话号码后缀(不包括国家/地区代码或区号)。如果指定了第二个电话号码 (TelephoneNumber),则号码是必需的信息,必须在命令行或属性文件中指定。
第二个电话号码 (TelephoneNumber) 的 URL(可以在网上拨打此号码的 URL)。
第三个电话号码 (TelephoneNumber) 的类型。如果指定了第三个电话号码 (TelephoneNumber),则类型是必需的信息,必须在命令行或属性文件中指定。值为一个任意字符串,但可以指定下面的一种已知类型:Beeper、FAX、HomePhone、MobilePhone 或 OfficePhone。
第三个电话号码 (TelephoneNumber) 的区号。
第三个电话号码 (TelephoneNumber) 的国家/地区代码。
第三个电话号码 (TelephoneNumber) 的分机。
第三个电话号码 (TelephoneNumber) 的电话号码后缀(不包括国家/地区代码或区号)。如果指定了第三个电话号码 (TelephoneNumber),则号码是必需的信息,必须在命令行或属性文件中指定。
第三个电话号码 (TelephoneNumber) 的 URL(可以在网上拨打此号码的 URL)。
第一个电子邮件地址 (EmailAddress) 的类型。类型是必需的信息,必须在命令行或属性文件中指定。值为一个任意字符串,但可以指定下面的一种已知类型:HomeEmail 或 OfficeEmail。
第一个电子邮件地址。第一个电子邮件地址是必需的信息。
第二个电子邮件地址 (EmailAddress) 的类型。如果指定了第二个电子邮件地址 (EmailAddress),则类型是必需的信息,必须在命令行或属性文件中指定。值为一个任意字符串,但可以指定下面的一种已知类型:HomeEmail 或 OfficeEmail。
第二个电子邮件地址。
第三个电子邮件地址 (EmailAddress) 的类型。如果指定了第三个电子邮件地址 (EmailAddress),则类型是必需的信息,必须在命令行或属性文件中指定。值为一个任意字符串,但可以指定下面的一种已知类型:HomeEmail 或 OfficeEmail。
第三个电子邮件地址。
以下命令将从用户主目录的 JaneSmith.properties 文件中装入用户 (User) 属性。
admin> add user -load ~/JaneSmith.properties |
以下命令(全都在一行)将指定创建用户 (User) 对象所必需的最少属性。
admin> add user -ln Smith -postaltype Office -country US -phonetype Office -number 333-3333 -emailtype OfficeEmail -emailaddress JaneSmith@JaneSmith.com -alias 123 -keypass 123456 |
更改注册表包 (RegistryPackage) 的位置。
cd 命令将目录(广义的)转到指定路径处或具有指定 URN 的注册表包 (RegistryPackage)。
当同一路径中存在多个注册表包 (RegistryPackage) 对象(对于当前语言环境)时,此命令将目录转到指定的 URN。
从系统信息库的根目录到系统信息库中某个对象的注册表 (Registry) 对象名称的路径,每个名称前加上一个正斜杠 (/)。
例如,属于 registry 注册表包 (RegistryPackage)(它本身不是任何注册表包 (RegistryPackage) 的成员)的 userData 注册表包 (RegistryPackage) 的定位器为 /registry/userData。属于 userData 注册表包 (RegistryPackage) 的 folder1 注册表包 (RegistryPackage) 的定位器为 /registry/userData/folder1。
注册表包 (RegistryPackage) 的 URN,必须是以 urn: 为开头的 URN。
以下命令将目录转到 URN 为 urn:uuid:92d3fd01-a929-4eba-a5b4-a3f036733017 的注册表包 (RegistryPackage)。
admin> cd urn:uuid:92d3fd01-a929-4eba-a5b4-a3f036733017 |
以下命令将目录转到位置 /registry/userData/myData。
admin> cd /registry/userData/myData |
更改注册表对象 (RegistryObject) 的拥有者。
chown 命令用于把前面的 select 命令所选取的对象的拥有权更改到前面的 users 命令列出时通过 URN 或引用用户的 URN 指定的用户。
只有具有管理员角色的用户才能成功地执行此命令。
URN 指定的用户 (User) 对象。
在前面的 users 命令中列出的用户 (User) 对象的 URN 的数字引用。
以下命令将把选定对象的拥有权更改到 URN urn:uuid:26aa17e6-d669-4775-bfe8-a3a484d3e079 所指定的用户。
admin> chown urn:uuid:26aa17e6-d669-4775-bfe8-a3a484d3e079 |
以下命令将把选定对象的拥有权更改到前面的 users 命令中的编号为 2 的用户。
admin> chown %2 |
将文件和文件夹复制到 Registry 中。
cp 命令用于将文件夹和文件分别作为注册表包 (RegistryPackage) 和外部对象 (ExtrinsicObject) 对象复制到 Registry 中。
从其中复制文件和文件夹的本地文件系统中的本地目录默认为启动管理工具的当前目录。您可以在启动管理工具时使用 -localdir 选项来更改本地目录,也可以在启动管理工具之后使用 lcd 命令来更改本地目录。您可以使用 show localdir 命令获取当前本地目录的绝对路径。
该命令是递归命令。即,如果指定一个目录,则该命令将复制该目录下的所有文件和文件夹。
将复制的注册表 (Registry) 对象的拥有者设置为通过 URN 或 %index 参数指定的用户。有关这些参数的说明,请参见 chown 命令的说明。您必须具有管理员角色才能指定您之外的拥有者。
复制其文件名不包含指定模式的所有文件,其中 pattern 是由文字字符和特殊字符星号 (*)(表示零个或多个字符)和问号 (?)(表示一个字符,且仅表示一个字符)组成的模式。
可以多次指定此选项。
复制其文件名包含指定模式的所有文件,其中 pattern 是由文字字符和特殊字符星号 (*)(表示零个或多个字符)和问号 (?)(表示一个字符,且仅表示一个字符)组成的模式。
可以多次指定此选项。
要复制的文件或文件夹,通过由文字字符和特殊字符星号 (*)(表示零个或多个字符)和问号 (?)(表示一个字符,且仅表示一个字符)组成的模式指定。可以指定多个 pattern。
以下命令将把目录 mydir 复制到 Registry,以将其归前面的 users 命令中编号为 4 的用户拥有。
admin> cp -owner %4 mydir |
以下命令将把目录 mydir 复制到 Registry 中(以字符串 .z 或 .c 结尾的文件和目录除外)。
admin> cp mydir -exclude \\.z -exclude \\.c |
回显字符串。
echo 命令用于将指定的 string 回显到输出中。在以批处理模式运行管理工具时,如果您在 -command 选项中指定此命令会十分有用。
一个字符序列。
以下命令将把日期和 ls 命令的结果打印到日志文件中。
java -jar admin-tool.jar -command "echo ”date”; ls" > admin.log |
显示关于命令的信息。
help 命令用于显示关于可用命令或指定命令的信息。
对于具有子命令的命令(例如 add 和 show),help 命令将显示关于子命令的信息。
如果不指定参数,help 命令将显示所有命令的用法信息。
管理工具命令的名称。
以下命令将显示所有命令的用法信息。
admin> help |
以下命令将显示 lcd 命令的用法信息。
admin> help lcd |
以下命令将显示 add 子命令的用法信息。
admin> help add |
导入定义注册表 (Registry) 对象的 XML 文件。
import 命令用于通过提交符合 SubmitObjectsRequest 协议(如 ebXML Registry Services and Protocols Version 3.0 规范中所述)的 XML 文件,向 Registry 中添加一个或多个新对象或系统信息库项。
所提供的 XML 文件和所有附件构成了发送到 Registry 并在其中处理的 SOAP 消息的内容。因此,此操作属于非常底层的操作,是为那些非常熟悉 ebXML 规范的用户提供的。
将文件附加为外部对象的系统信息库项。pathname 是待添加文件的路径名。mimeType 指定文件的 MIME 类型。id 是外部对象的唯一标识符,对于外部对象而言此为系统信息库项 (??)。可以多次指定此选项。
包含注册表 (Registry) 对象定义的 XML 文件。
以下命令将导入在文件 MyRequest.xml 中定义的一组对象:
admin> import MyRequest.xml |
以下命令(全都在一行)将导入外部对象及其系统信息库项(图像文件):
admin> import --attach chicken.jpg, image/jpeg, urn:bird:poultry:chicken ChickenRequest.xml |
将一个或多个密钥从一种密钥库格式导出为另一种格式。
开发者用于对 Registry 执行操作的接口需要使用 JKS 密钥库,而 Web 控制台需要可以导入 Web 浏览器的 PKCS12 或 DER 证书。
如果您使用 Registry 生成的 PKCS12 证书创建了用户帐户,并希望使用管理工具向注册表中发布内容,请使用 keystoreMover 命令将此证书导出到 JKS 密钥库。还可以使用此命令运行开发者针对 Registry 开发的应用程序。
如果您使用 add user 命令创建了用户,并希望该用户能够使用 Web 控制台,则可以使用此命令将由 add user 创建的 JKS 密钥库导出为 PKCS12 格式。
有关使用 Web 控制台创建用户帐户的详细信息,请参见《Service Registry 3.1 用户指南》中的“创建用户帐户”。有关将 keystoreMover 与管理工具结合使用的信息,请参见使用管理工具向 Registry 中发布内容。有关使用 add user 命令的信息,请参见add user。
有关开发 Registry 应用程序的信息,请参见《Service Registry 3.1 Developer’s Guide》。
指定要导出的密钥库的类型。参数必须为 PKCS12 或 JKS。默认值为 PKCS12。
指定包含源密钥库的文件的路径名。此选项是必需的选项。通常,这是在创建用户时创建的证书文件的路径名。
指定源密钥库的密码。通常,这是在创建用户时指定的密码。此选项是必需的选项。
指定要导出的别名。如果不指定此选项,命令将导出密钥库中的所有别名。从 Web 控制台下载的密钥库仅包含一个别名。
指定特定于别名的密码(而不是密钥库密码)。如果不指定此选项,此密码与密钥库密码相同(通常为这种情况)。
指定目标密钥库的类型。参数可以为 JKS 或 PKCS12。默认值为 JKS。
指定将包含目标密钥库的文件的路径名。此选项是必需的选项。通常,此参数为 HOME/soar/3.0/jaxr-ebxml/security/keystore.jks,其中 HOME 是用户的主目录。
指定目标密钥库的密码。此参数是必需的参数。此属性的默认值为 ebxmlrr。
指定新的别名(如果要重命名别名)。如果不指定此选项,新别名与源证书的别名相同。
指定特定于别名的密码(而不是密钥库密码)。如果不指定此选项,此密码与密钥库密码相同(通常为这种情况)。
所有密码的长度至少应为 6 个字符。
以下命令将用户主目录下 generated-key.p12 中的证书导出到用户主目录下 soar/3.0/jaxr-ebxml/security/keystore.jks 的 JKS 密钥库中。源密钥库密码是用户在 Registry 中注册时提供的密码。目标密钥库密码是默认值 ebxmlrr。全都在一行中指定命令。
admin> keystoreMover -sourceKeystorePath /home/myname/generated-key.p12 -sourceKeystorePassword mypass -destinationKeystorePath /home/myname/soar/3.0/jaxr-ebxml/security/keystore.jks -destinationKeystorePassword ebxmlrr |
更改本地文件系统中的当前目录。
lcd 命令用于更改本地文件系统中的当前本地目录。
如果不指定参数,lcd 命令将把当前目录更改到您的默认主目录。
目录名称;可以是绝对目录,也可以是相对目录。
以下命令将把当前本地目录更改到 /usr/share 目录。
admin> lcd /usr/share |
以下命令将把当前本地目录更改到本地文件系统中的默认主目录。
admin> lcd |
列出当前注册表包 (RegistryPackage) 中的对象。
如果不带参数,ls 命令将列出当前注册表包 (RegistryPackage) 中的对象。当提供 pattern 或 URN 时,此命令将列出当前注册表包 (RegistryPackage) 中名称(当前语言环境中)或唯一标识符与 pattern 或 URN 相匹配的对象。
由文字字符和特殊字符星号 (*)(表示零个或多个字符)和问号 (?)(表示一个字符,且仅表示一个字符)组成的模式。可以指定多个 pattern。
以 urn: 为开头的 URN,例如 urn:uuid:4a6741e7-4be1-4cfb-960a-e5520356c4fd。可以指定多个 URN。URN 必须是对象的唯一标识符,不能是逻辑标识符。
以下命令将列出当前注册表包 (RegistryPackage) 中的所有对象。
admin> ls |
以下命令将列出名称与模式 urn:bird:poultry:chicken 相匹配或 ID 为 urn:bird:poultry:chicken 的所有对象。
admin> ls urn:bird:poultry:chicken |
以下命令将列出名称与模式 *bird* 相匹配的所有对象。(如果 *bird* 是有效 ID,该命令还将列出 ID 为 *bird* 的对象。)
admin> ls *bird* |
以下命令将列出名称与模式 *bird* 或 urn:bird:poultry:chicken 相匹配或 ID 为 urn:bird:poultry:chicken 的所有对象。
admin> ls *bird* urn:bird:poultry:chicken |
显示指向当前注册表包 (RegistryPackage) 的路径。
pwd 命令用于使用与当前语言环境匹配度最好的名称显示指向当前注册表包 (RegistryPackage) 的路径,同时还显示路径的语言环境。
admin> pwd (en_US) /registry/userData |
退出管理工具。
quit 命令用于退出管理工具。
admin> quit |
从注册表包 (RegistryPackage) 中删除对象。
rm 命令用于删除当前注册表包 (RegistryPackage) 中名称(当前语言环境中)与 pattern 或 URN 指定的模式相匹配的成员对象。
如果匹配的注册表对象 (RegistryObject) 是多个注册表包 (RegistryPackage) 对象的成员,则此命令仅删除当前注册表包 (RegistryPackage) 与该对象之间的关联。仅当删除关联后该对象与任何其他注册表对象 (RegistryObject)(包括其他包含注册表包 (RegistryPackage) 对象的对象)都没有关联时,才会从 Registry 中删除该对象。
如果匹配的成员对象本身是一个包含其他对象的注册表包 (RegistryPackage),则除非指定 -r 选项或 -d 选项,否则该对象和当前注册表包 (RegistryPackage) 与成员注册表包 (RegistryPackage) 之间的关联都不会被删除。
同时指定 -d 和 -r 选项时将递归应用 -d 选项,因此无论是否有其他关联,所有由 -r 选取的对象(及其关联)都将被删除。
删除当前注册表包 (RegistryPackage) 与指定注册表包 (RegistryPackage) 之间的关联。仅当指定的注册表包 (RegistryPackage) 仅剩下与其成员对象之间的关联时才将前者删除。对于立即删除的注册表包 (RegistryPackage) 的成员对象,它们并非其他 HasMember 关联的目标,现在可以作为 Registry 根的成员来访问它们了。
删除指定的注册表包 (RegistryPackage) 对象及其所有的子对象(对象具有其他关联时除外)。
由文字字符和特殊字符星号 (*)(表示零个或多个字符)和问号 (?)(表示一个字符,且仅表示一个字符)组成的模式。可以指定多个 pattern。
以 urn: 为开头的 URN,例如 urn:uuid:4a6741e7-4be1-4cfb-960a-e5520356c4fd。可以指定多个 URN。
以下命令将删除包含字符串 "stat" 的所有注册表包 (RegistryPackage) 对象及其所有子对象。
admin> rm -r *stat* |
执行一个 SQL select 语句。
select 命令用于选取并列出通过将整条命令作为一个 SQL 查询执行所指定的对象。如果不指定参数,该命令将列出由前面的 select 命令或 -sqlselect 选项选取的所有对象。
SQL select 语句(前面无需加 select,因为已经以命令名称的方式提供了该语句)。
以下命令将列出 Registry 中的所有分类方案 (ClassificationScheme) 对象:
admin> select s.* from ClassificationScheme s |
设置属性值。
set 命令用于设置管理工具 Shell 的属性的值。
管理工具支持以下属性和值。
set debug {true | on | yes | false | off | no}启用或禁用调试信息的输出。
set editor string设置在管理工具启动交互式编辑器时使用的命令。在 UNIX 和 Linux 系统上,默认值为 /bin/vi。
set verbose {true | on | yes | false | off | no}启用或禁用执行命令时更详细的消息输出。
下列属性之一:debug、editor、verbose。
指定的属性所支持的值。有关详细信息,请参见“说明”部分。
以下命令将把编辑器设置为 /usr/bin/vi,而不是默认的 /bin/vi。
admin> set editor /usr/bin/vi |
以下命令将启用调试。
admin> set debug true |
以下命令将禁用详细输出。
admin> set verbose off |
显示属性值。
show 命令用于显示管理工具 Shell 的属性的值。
如果不指定参数,此命令将显示所有属性的值。
此命令支持以下属性:
是否启用调试输出。
管理工具启动交互式编辑器时使用的编辑器。
从前面刚执行的命令返回的异常堆栈追踪(如果有)。
本地文件系统中的当前目录。可以使用 lcd 命令设置此属性。有关详细信息,请参见lcd。
当前语言环境。
是否启用详细输出。
要显示其当前值的属性。可以显示 exception 和 locale 属性,但不能使用 set 命令设置这两个属性。
以下命令将显示上一个命令返回的异常。
admin> show exception |
列出当前的用户 (User) 对象。
users 命令用于列出 Registry 中当前的用户 (User) 对象。
输出采用以下格式:
%index: URN lastname, firstname middlename |
在输出中,index 是可以使用的数字值,包括百分号 (%),以在运行 chown 或 cp 命令时引用用户。lastname、firstname 和 middlename 是用户的姓氏、名字和中间名。
以下命令将显示当前用户:
admin> users %0: urn:freebxml:registry:predefinedusers:registryoperator Operator, Registry %1: urn:freebxml:registry:predefinedusers:registryguest Guest, Registry %2: urn:freebxml:registry:predefinedusers:farrukh Najmi, Farrukh Salahudin %3: urn:freebxml:registry:predefinedusers:nikola Stojanovic, Nikola %4: urn:uuid:799cc524-b7cd-4e51-8b34-d93b79ac52de User, Test %5: urn:uuid:85428d8e-1bd5-473b-a8c8-b9d595f82728 Parker, Miles |