Sun Java System Access Manager 7 2005Q4 管理指南

第 IV 部分 命令行参考

这是“命令行参考”,《Sun Java System Access Manager 7 2005Q4 管理指南》的第四部分。

本部分中介绍的所有命令行工具都可以在以下默认位置找到:

AccessManager-base/SUNWam/bin (Solairs)

AccessManager-base/identity/bin (Linux)

本部分包含以下各章:

第 14 章 amadmin 命令行工具

本章介绍有关 amadmin 命令行工具的信息。

amadmin 命令行可执行文件

命令行可执行文件 amadmin 的主要用途是将 XML 服务文件加载到数据存储库中,以及在 DIT 上执行批管理任务。amadmin 位于 AccessManager-base/SUNWam/bin 中,可用来:


注 –

XML 服务文件作为 Access Manager 所引用 XML 数据的静态 blobs 存储在数据存储库中。此信息对 Directory Server 不适用,它只帮助了解 LDAP。



注 –

amadmin 仅支持 Access Manager 控制台所支持的部分功能,且不可完全替代 Access Manager。建议将控制台用于小型管理任务,将 amadmin 用于大型管理任务。


amadmin 语法

要使用 amadmin,必须遵循许多的结构规则。使用该工具的通用语法是:


注 –

必须完全按照语法中所示,输入两个连字符。


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 选项,则即使出现了错误,amadmin 命令仍然会继续处理 XML 文件。例如,如果要同时加载三个 XML 文件,并且第一个 XML 文件加载失败,amadmin 将继续加载其余的文件。continue 选项仅应用于独立请求。

--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) 使用通配符 (*),则必须在 Shell(命令解释器)中用元字符 (\\) 对其进行换码。

--debug (-d)

--debug 选项可以将消息写入在 /var/opt/SUNWam/debug 目录下创建的 amAdmin 文件中。这些消息在技术上很详细,但与 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 文件可以创建、删除和读取各种目录对象,还可以注册和取消注册服务。

--schema (-s)

--schema 选项可将 Access Manager 服务的属性加载到 Directory Server 中。它的变量值为在其中定义服务属性的 XML 服务文件。此 XML 服务文件是基于 sms.dtd 的。可以指定一个或多个 XML 文件。


注 –

根据是要对 DIT 配置批更新还是要加载服务模式和配置数据,必须指定 --data--schema 选项。


--deleteservice (-r)

--deleteservice 选项仅用于删除服务及其模式。

--serviceName

--serviceName 选项的值等于在 XML 服务文件 Service name=... 标签中定义的服务名称。 此部分显示在--serviceName中。


示例 14–1 sampleMailService.xml 的一部分


...
<ServicesConfiguration>
    <Service name="sampleMailService" version="1.0">
        <Schema
 serviceHierarchy="/other.configuration/sampleMailService"
            i18nFileName="sampleMailService"
            i18nKey="iplanet-am-sample-mail-service-description">
...

                  

--help (-h)

--help 参数显示 amadmin 命令的语法。

--version (-n)

--version 参数显示实用程序名称、产品名称、产品版本和法律声明。

使用 amadmin 进行联合管理

本节列出供“联合管理”使用的 amadmin 参数。有关“联合管理”的详细信息,请参阅 Access Manager Federation Management Guide。

将 Liberty 元数据符合性 XML 装入 Directory Server

amadmin -u|--runasdn <user’s DN>
-w|--password <password> or -f|--passwordfile <passwordfile>
-e|--entityname <entity name>
-g|--import <xmlfile>

--runasdn (-u)

用户 DN

--password (-w)

用户密码。

--passwordfile (-f)

包含用户密码的文件的名称。

--entityname (-e)

实体名称。例如,http://www.example.com。某一实体应只属于一个组织。

--import (-g)

包含元数据信息的 XML 文件的名称。此文件应该符合 Liberty 元数据规范和 XSD。

将实体导出到 XML 文件(无 XML 数字签名)

amadmin -u|--runasdn <user’s DN>

-w|--password <password> or -f|--passwordfile <passwordfile>
-e|--entityname <entity name>
-o|--export <filename>

--runasdn (-u)

用户 DN

--password (-w)

用户密码。

--passwordfile (-f)

包含用户密码的文件的名称。

--entityname (--e)

驻留在 Directory Server 中的实体的名称

--export (-o)

要包含实体的 XML 的文件名称。XML 应符合 Liberty 元数据 XSD。

将实体导出到 XML 文件(有 XML 数字签名)

amadmin -u|--runasdn <user’s DN>
-w|--password <password> or -f|--passwordfile <passwordfile>
-e|--entityname <entity name>
-q|--exportwithsig <filename>

--runasdn (-u)

用户 DN

--password (-w)

用户密码。

--passwordfile (-f)

包含用户密码的文件的名称。

--entityname (--e)

驻留在 Directory Server 中的实体的名称

--exportwithsig (-o)

要包含实体的 XML 的文件名称。此文件已经过数字签名。XML 必须符合 Liberty 元数据 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>

第 15 章 ampassword 命令行工具

本章介绍有关 amPassword 命令行工具的信息,包括下面一节:

ampassword 命令行可执行文件

Access Manager 包含一个 ampassword 实用程序,此程序在 SPARC 系统中位于 /opt/SUNWam/bin 下,在 Linux 系统中位于 /opt/sun/Identity/bin 下。利用该实用程序,您可以更改管理员或用户的 Directory Server 密码。

Procedure用 Access Manager 在 SSL 模式下运行 ampassword

步骤
  1. 修改位于以下目录的 serverconfig.xml 文件:


    AccessManager-base/SUNWam/config/
  2. 更改 Access Manager 运行的 SSL 端口的 port 服务器属性。

  3. 更改 SSL 的 type 属性。

    例如:


    <iPlanetDataAccessLayer>
    <ServerGroup name="default" minConnPool="1" maxConnPool="10">
        <Server name="Server1" host="sun.com" port="636" type="SSL" />
        <User name="User1" type="proxy">
            <DirDN>
                     cn=puser,ou=DSAME Users,dc=iplanet,dc=com
            </DirDN>
            <DirPassword>
                      AQIC5wM2LY4Sfcy+AQBQxghVwhBE92i78cqf
             </DirPassword>
     </User> ...
    
    
                   

    ampassword 只更改 Directory Server 中的密码。 您需要手动更改 ServerConfig.xml 中的密码以及 Access Manager 的所有验证模板。

第 16 章 bak2am 命令行工具

本章介绍有关 bak2am 命令行工具的信息,包含下面一节:

bak2am 命令行可执行文件

Access Manager 在 AccessManager-base/SUNWam/bin 下包含 bak2am 实用程序。此实用程序执行由 am2back 实用程序备份的 Access Manager 组件的恢复。

bak2am 语法

在 Solaris 操作系统下使用 bak2am 工具的通用语法为:

./bak2am [ -v | --verbose ] -z | --gzip tar.gz-file
./bak2am [ -v | --verbose ] -t | --tar tar-file
./bak2am -h | --help
./bak2am -n | --version

在 Windows 2000 操作系统下使用 bak2am 工具的通用语法为:

bak2am [ -v | --verbose ] -d | --directory directory-name

bak2am -h | --help
bak2am -n | --version

注 –

必须完全按照语法中所示,输入两个连字符。


bak2am 选项

--gzip backup-name

--gzip 指定 tar.gz 格式的备份文件的完整路径和文件名。默认情况下,此路径为 AccessManager-base/backup。此选项仅适用于 Solaris。

--tar backup-name

--tar 指定 tar 格式的备份文件的完整路径和文件名。默认情况下,此路径为 AccessManager-base/backup。此选项仅适用于 Solaris。

--verbose

--verbose 用于在详细模式下运行备份实用程序。

--directory

--directory 指定备份目录。默认情况下,此路径为 AccessManager-base/backup。此选项仅适用于 Windows 2000。

--help

--help 参数显示 bak2am 命令的语法。

--version

--version 参数显示实用程序名称、产品名称、产品版本和法律声明。

第 17 章 am2bak 命令行工具

本章介绍有关 am2bak 命令行工具的信息。

am2bak 命令行可执行文件

Access Manager 包含一个 am2bak 实用程序,此程序位于 AccessManager-base/SUNWam/bin 下。该实用程序可以对 Access Manager 的全部或部分组件进行备份。在备份日志时必须运行 Directory Server。

am2bak 语法

在 Solaris 操作系统上使用 am2bak 工具的通用语法是:

./am2bak [ -v | --verbose ] [ -k | --backup backup-name ] [ -l | --location location ] [[-c | --config] | [-b | --debug] | [-g | --log] | [-t | --cert] | [-d | --ds] | [-a | --all]]*

./am2bak -h | --help

./am2bak -n | --version

在 Windows 2000 操作系统上使用 am2bak 工具的通用语法是:

am2bak [ -v | --verbose ] [ -k | --backup backup-name ] [ -l | --location location ] [[-c | --config] | [-b | --debug] | [-g | --log] | [-t | --cert] | [-d | --ds] | [-a | --all]]*

am2bak -h | --help

am2bak -n | --version


注 –

必须完全按照语法中所示,输入两个连字符。


am2bak 选项

--verbose (-v)

--verbose 用于在详细模式下运行备份实用程序。

--backup backup-name (-k)

--backup backup-name 定义备份文件的名称。默认名称为 ambak

--location (-l)

--location 指定备份文件的目录位置。默认位置为 AccessManager-base/backup

--config (-c)

--config 指定仅为配置文件备份。

--debug (-b)

--debug 指定仅为调试文件备份。

--log (-g)

--log 指定仅为日志文件备份。

--cert (-t)

--cert 指定仅为证书数据库文件备份。

--ds (-d)

--ds 指定仅为 Directory Server 备份。

--all (-a)

--all 指定对整个 Access Manager 进行完整备份。

--help (-h)

--help 参数显示 am2bak 命令的语法。

--version (-n)

--version 参数显示实用程序名称、产品名称、产品版本和法律声明。

Procedure运行备份程序

步骤
  1. 以超级用户身份登录。

    运行此脚本的用户必须具有超级用户权限。

  2. 如果需要,运行确保使用正确路径的脚本。

    此脚本将会备份以下 Solaris™ 操作环境文件:

    • 配置文件和自定义文件:

      • AccessManager-base/SUNWam/config/

        • AccessManager-base/SUNWam/locale/

        • AccessManager-base/SUNWam/servers/httpacl

        • AccessManager-base/SUNWam/lib/*.properties(Java 属性文件)

        • AccessManager-base/SUNWam/bin/amserver. instance-name

        • AccessManager-base/SUNWam/servers/https- all_instances

        • AccessManager-base/SUNWam/servers/web-apps- all_instances

        • AccessManager-base/SUNWam/web-apps/services/WEB-INF/config

        • AccessManager-base/SUNWam/web-apps/services/config

        • AccessManager-base/SUNWam/web-apps/applications/WEB-INF/classes

        • AccessManager-base/SUNWam/web-apps/applications/console

        • /etc/rc3.d/K55amserver.all_instances

        • /etc/rc3.d/S55amserver.all_instances

        • DirectoryServer-base/slapd- host /config/schema/

        • DirectoryServer-base/slapd- host /config/slapd-collations.conf

        • Access Manager/slapd- host /config/dse.ldif

        日志文件和调试文件:

        • var/opt/SUNWam/logs(Access Manager 日志文件)

        • var/opt/SUNWam/install(Access Manager 安装日志文件)

        • var/opt/SUNWam/debug(Access Manager 调试文件)

        证书:

        • Access Manager/SUNWam/servers/alias

        • Access Manager/alias

          此脚本还将备份以下 Microsoft® Windows 2000 操作系统文件:

        配置文件和自定义文件:

        • AccessManager-base/web-apps/services/WEB-INF/config/*

        • AccessManager-base/locale/*

        • AccessManager-base/web-apps/applications/WEB-INF/classes/*.properties(java 属性文件)

        • AccessManager-base/servers/https- host/config/jvm12.conf

        • AccessManager-base/servers/https- host/config/magnus.conf

        • AccessManager-base/servers/https- host/config/obj.conf

        • DirectoryServer-base/slapd-host/config/schema/*.ldif

        • DirectoryServer-base/slapd-host/config/slapd-collations.conf

        • DirectoryServer-base/slapd-host/config/dse.ldif

        日志文件和调试文件:

        • var/opt/logs(Access Manager 日志文件)

        • var/opt/debug(Access Manager 调试文件)

        证书:

        • AccessManager-base/servers/alias

        • AccessManager/alias

第 18 章 amserver 命令行工具

本章介绍有关 amserver 命令行工具的信息。本章包含下面一节:

amserver 命令行可执行文件

amserver 命令行可执行文件启动和停止 amunixdamsercuridd 帮助器,它们分别与 Unix 和 SecurID 验证模块相关。

amserver 语法

使用该工具的通用语法为:

./amserver { start | stop }

start

start 为启动帮助器的命令。

stop

stop 为停止帮助器的命令。

第 19 章 VerifyArchive 命令行工具

本章提供有关 VerifyArchive 命令行工具的信息,包含下面一节:

VerifyArchive 命令行可执行文件

VerifyArchive 用来检验日志归档文件。日志归档文件为一组带有时间戳的日志及其相应的密钥库(密钥库包含用于生成 MAC 和“数字签名”的密钥,MAC 和“数字签名”用于检测日志文件是否被篡改)。检验归档文件可以检测归档文件中是否可能有文件被篡改和/或删除。

对于给定 logNameVerifyArchive 会提取所有归档文件集和属于每个归档文件集的所有文件。执行检测时,VerifyArchive 搜索每个日志记录是否进行了篡改。如果检测到篡改,则将打印一条消息,指定已被篡改的文件和记录编号。

VerifyArchive 也检查所有从归档文件集中删除的文件。如果检测到文件被删除,则将打印一条消息,说明验证已失败。如果未检测到文件被篡改或被删除,将返回一条消息,说明归档文件的验证已成功完成。


注 –

如果以无管理员权限的用户身份运行 amverifyarchive,可能会出错。


VerifyArchive 语法

所有的参数选项都是必需的。其语法如下所示:

amverifyarchive -l logName -p path -u 
uname -w password

VerifyArchive 选项

logName

logName 指要验证的日志的名称(如 amConsoleamAuthentication 等)。VerifyArchive 验证给定 logName 的访问和错误日志。例如,如果指定了 amConsole,则验证程序将验证 amConsole.accessamConsole.error 文件。logName 也可以指定为 amConsole.accessamConsole.error,以限制只验证某些日志。

path

path 是存放日志文件的完整目录路径。

uname

uname 是 Access Manager 管理员的用户 ID。

password

password 是 Access Manager 管理员的密码。

第 20 章 amsecuridd 帮助器

本章介绍有关 amsecuiridd 帮助器的信息,包含以下章节:

amsecuridd 帮助器命令行可执行文件

通过安全动态 ACE/客户机 C API 和 amsecruidd 帮助器实现 Access Manager SecurID 验证模块,该帮助器在 Access Manager SecurID 验证模块和 SecurID 服务器之间通信。SecurID 验证模块通过打开套接字 localhost:57943 调用 amsecuridd 守护进程来侦听 SecurID 验证请求。


注 –

57943 为默认端口号。如果此端口号已被使用,可以在 SecurID 验证模块中的“SecurID 帮助器验证端口”属性中指定不同的端口号。此端口号在所有组织中必须唯一。


amsecuridd 的接口以明文形式通过 stdin,因此仅允许本地主机连接。amsecuridd 在后台使用 SecurID 远程 API(版本 5.x)进行数据加密。

amsecuridd 帮助器在端口号为 58943(默认)的端口上侦听,以接收其配置信息。如果此端口已被使用,可以在 AMConfig.properties 文件(默认情况下,位于 AccessManager-base /SUNWam/config/)中的 securidHelper.ports 属性中对其进行更改。securidHelp.ports 属性包含每个 amsecuridd 帮助器实例的端口列表(以空格分隔)。保存对 AMConfig.properties 所作的更改后,重新启动 Access Manager。


注 –

应为每个组织运行 amsecuridd 的单独实例,此组织与单独的 ACE/Server(包含不同的 sdconf.rec 文件)进行通信。


amsecuridd 语法

其语法如下所示:

amsecuridd [-v] [-c portnum]

amsecuridd 选项

verbose (-v)

打开详细模式,然后登录到 /var/opt/SUNWam/debug/securidd_client.debug

configure portnumber (-c portnm)

配置侦听端口号。默认端口为 58943。

运行 amsecuridd 帮助器

默认情况下,amsecuridd 位于 AccessManager-base /SUNWam/share/bin。要在默认端口上运行帮助器,请输入以下命令(不需要选项):

./amsecuridd

要在非默认端口上运行帮助器,请输入以下命令:

./amsecuridd [-v] [-c portnm]

amsecuridd 也可以通过 amserver 命令行实用程序运行,但其只能在默认端口上运行。

必需的库

为了运行帮助器,需要以下的库(多数库位于操作系统的 /usr/lib/)


注 –

LD_LIBRARY_PATH 设置为 AccessManager-base /Sunwam/lib/ 以找到 libaceclnt.so