12 命令行实用程序

本章介绍命令行实用程序,用户可以使用这些实用程序从命令行(而不是 OKM Manager GUI)启动备份、导出密钥、导入密钥以及列出数据单元。

可以使用以下命令行实用程序:

注:

OKM 命令行实用程序取代备份命令行实用程序。Oracle 建议只要可能就使用 OKM 命令行实用程序。

OKM 命令行实用程序

使用 OKM 命令行实用程序可以执行以下操作:

  • 调度自动备份

  • 备份 OKM 核心安全性

  • 导入和导出密钥

  • 销毁密钥

  • 列出审计事件

  • 列出数据单元

  • 创建或修改多个代理。

与备份命令行实用程序不同,此实用程序可以使用 X.509 证书验证自身是否为有效 OKM 用户,而不是使用用户名和口令短语,所以您不需要在命令行上输入口令短语。

下表详细介绍了可以执行这些功能的角色:

表 12-1 OKM 命令行实用程序-用户角色访问权限

操作:
角色:

备份

备份操作员

备份 OKM 核心安全性

安全官

导入/导出密钥

操作员

销毁密钥

操作员

列出审计事件

所有角色脚注 1 

列出数据单元

操作员/合规官

创建代理

操作员

设置/更改代理默认密钥组

合规官

更改代理属性

操作员

列出代理

操作员/合规官


脚注 1 如果指定代理 ID、数据单元 ID 或密钥 ID,您必须具有操作员或合规官角色。

此实用程序使用同一安装程序随 OKM Manager GUI 一起安装。

注:

如果要输入链路本地 IPv6 地址,则调用 OKM 命令行实用程序并指定链路本地 IPv6 地址。在地址末尾包括区域 ID(例如 ”%4”)。请参阅"带区域 ID 的 IPv6 地址",以查看进行初始设置必须执行的步骤。

如果使用的是 Solaris 并且希望指定或显示无法以 ASCII 表示的字符,则确保已经在 Solaris 系统上安装了适当的 Solaris 语言环境并且您的环境已经配置为使用此语言环境。有关更多信息,请参阅 Solaris locale(1) 和 localeadm(1M) 手册页。

Solaris/Windows1 语法

okm -v | --version | --help | -h
okm backup [ [ [ --cacert=filename ] [ --usercert=filename ] ]
               [ --directory=dirname ] ] | --oper=username 
               [ --retries=retries ] [ --timeout=timeout ]
               [ --verbose=boolean ]
                 --kma=networkaddress 
                 --output=dirname 
okm backupcs [ [ [ --cacert=filename ] [ --usercert=filename ]]
                 [ --directory=dirname ] | --oper=username ]
                 [ --retries=retries ] [ --timeout=timeout ]
                 [ --verbose=boolean ]
                   --kma=networkaddress 
okm createagent[ [ [ --cacert=filename ] [ --usercert=filename ] ]
                   [ --directory=dirname ] | --oper=username ]
                   [ --retries=retries ] [ --timeout=timeout ]
                   [ --verbose=boolean ]
                   [ --description=description ] 
                   [ --site=siteid ]
                   [ --keygroup=defaultkeygroupid ]
                   [ --onetimepassphrase=boolean ]
                     --kma=networkaddress 
                     --agent=agentid 
                     --passphrase=agentpassphrase
okm currload [ [ [ --cacert=filename ] [ --usercert=filename ] ]
                 [ --directory=dirname ] ] | --oper=username
                 [ --retries=retries ] [ --timeout=timeout ]
               [ --verbose=boolean ]
                 --output=filename 
                 --kma=networkaddress
okm destroykeys [ [ [ --cacert=filename ] [ --usercert=filename ] ]
                    [ --directory=dirname ] | --oper=username ]
                    [ --retries=retries ] [ --timeout=timeout ]
                    [ --verbose=boolean ]
                      --kma=networkaddress 
                      --duids=filename | --all=true
                      --keystate=keystate 
                      --comment="text"
okm export [ [ [ --cacert=filename ] [ --usercert=filename ] ]
               [ --directory=dirname ] | --oper=username ]
               [ --retries=retries ] [ --timeout=timeout ]
               [ --listwait=waittime ] [ --verbose=boolean ]
                 --filter=filter | --duids=filename 
                 --kma=networkaddress 
                 --output=filename 
                 --partner=transferpartnerid 
okm import [ [ [ --cacert=filename ] [ --usercert=filename ] ]
               [ --directory=dirname ] ] | --oper=username 
               [ --retries=retries ] [ --timeout=timeout ]
               [ --verbose=boolean ]
               [ --overrideeuiconflict=boolean ]
                 --kma=networkaddress 
                 --input=filename 
                 --partner=transferpartnerid 
                 --keygroup=keygroupid 
okm listagentperformance [ [ [ --cacert=filename ] [ --usercert=filename ] ]
                             [ --directory=dirname ] | --oper=username ]
                             [ --filter=filter ]
                             [ --retries=retries ] [ --timeout=timeout ]
                             [ --listwait=waittime ] [ --verbose=boolean ]
                             [ --output=filename ]
                             [ --startdate=date ] [ --enddate=date ]
                             [ --localtimezone=boolean ]
                             [ --rateinterval=rateinterval ]
                               --kma=networkaddress   
okm listagents[ [ [ --cacert=filename ] [ --usercert=filename ] ]
                  [ --directory=dirname ] | --oper=username ]
                  [ --retries=retries ] [ --timeout=timeout ]
                  [ --listwait=waittime ] [ --verbose=boolean ]
                  [ --filter=filter ] [ --output=filename ]
                    --kma=networkaddress 
okm listauditevents [ [ [ --cacert=filename ] 
                        [ --usercert=filename ] ]
                        [ --directory=dirname ] | 
                        [ --oper=username ]
                        [ --filter=filter ]
                        [ --localtimezone=boolean ] 
                        [ --maxcount=count ]
                        [ --retries=retries ] 
                        [ --timeout=timeout ]
                        [ --verbose=boolean ]
                        [ --output=filename ]
                        [ --agentids=agentids | 
                          --dataunitids=dataunitds | 
                          --keyids=keyids ]
                          --kma=networkaddress 
okm listdu [ [ [ --cacert=filename ] [ --usercert=filename ] ]
               [ --directory=dirname ] ] | --oper=username 
               [ --filter=filter ]
               [ --retries=retries ] [ --timeout=timeout ]
               [ --listwait=waittime ] [ --verbose=boolean ]
               [ --output=filename ]
                 --kma=networkaddress 
okm listdukeycount[ [ [ --cacert=filename ] [ --usercert=filename ] ]
                  [ --directory=dirname ] | --oper=username ]
                  [ --filter=filter ]
                  [ --retries=retries ] [ --timeout=timeout ]
                  [ --listwait=waittime ] [ --verbose=boolean ]
                  [ --output=filename ]
                    --kma=networkaddress 
                    --duids=filename | --all=true
okm listkeys [ [ [ --cacert=filename ] [ --usercert=filename ] ]
                 [ --directory=dirname ] | --oper=username ]
                 [ --filter=filter ]
                 [ --retries=retries ] [ --timeout=timeout ]
                 [ --listwait=waittime ] [ --verbose=boolean ]
                 [ --output=filename ]
                   --kma=networkaddress
okm listkmaperformance [ [ [ --cacert=filename ] [ --usercert=filename ] ]
                           [ --directory=dirname ] | --oper=username ]
                           [ --filter=filter ]
                           [ --retries=retries ] [ --timeout=timeout ]
                           [ --listwait=waittime ] [ --verbose=boolean ]
                           [ --output=filename ]
                           [ --startdate=date ] [ --enddate=date ]
                           [ --localtimezone=boolean ]
                           [ --rateinterval=rateinterval ]
                             --kma=networkaddress
okm modifyagent[ [ [ --cacert=filename ] [ --usercert=filename ] ]
                   [ --directory=dirname ] | --oper=username ]
                   [ --retries=retries ] [ --timeout=timeout ]
                   [ --verbose=boolean ]
                   [ --description=description ] | 
                   [ --site=siteid ] |
                   [ --keygroup=defaultkeygroupid ] | 
                   [ --passphrase=agentpassphrase ] |
                   [ --enabled=boolean ] |
                   [ --onetimepassphrase=boolean ]
                     --kma=networkaddress 
                     --agent=agentid 

参数描述

下面是 OKM 命令行实用程序子命令。

子命令

backup

backup 子命令生成 OKM 数据的备份并将此备份下载到指定输出目录中的备份数据文件和备份密钥文件。

backupcs

backupcs 子命令生成 OKM 核心安全性的备份并将此备份存储在输出文件中。

createagent

createagent 子命令创建新代理。

destroykeys

destroykeys 子命令销毁已取消激活或已泄密密钥。

export

export 子命令为随 OKM 建立的传输伙伴创建安全密钥文件。与数据单元列表关联的所有密钥都使用此密钥文件导出并使用对该密钥文件进行签名的 AES-256 位密钥进行保护。此数据单元列表是给定过滤字符串或文件名的结果。然后,可以使用此密钥文件通过 import 子命令将密钥导入传输伙伴的 OKM。调用一个 kms 命令,最多可以导出 1,000 个数据单元。

import

import 子命令为随 OKM 建立的传输伙伴读取安全密钥文件。使用此密钥文件导入密钥及其关联的数据单元。导入 OKM 的密钥传输私钥用于验证密钥文件。此文件必须是先前使用 export 子命令从其他 OKM 导出的文件。

listagents

listagents 子命令生成代理及其属性的列表。可以对该列表进行过滤以生成特定报告,仅包含一部分代理。

listauditevents

listauditevents 子命令列出审计事件。

listdu

listdu 子命令列出数据单元及其属性。可以在执行 export 子命令之前调用此子命令,以确定使用指定过滤器(如果有)导出的数据单元。

modifyagent

modifyagent 子命令更改现有代理的属性,包括其默认密钥组。还必须指定下面至少一个选项:

  • --enabled

  • --site

  • --description

  • --keygroup

  • --passphrase

  • --onetimepassphrase

选项

下面的选项列表显示长和短选项名称。长选项名称与其值通过等号 (=) 分隔;短选项名称与其值通过空格分隔。

以下选项用于用户验证。

注:

用户必须首先从 OKM Manager GUI 导出根 CA 和用户 X.509 证书,然后才能使用 --cacert--directory--usercert 选项调用此实用程序。

--agent=agentid

短名称:-B

指定要创建或修改的代理 ID。此代理 ID 的长度必须在 1 到 64 个字符之间,包含 1 和 64。

--cacert=filename

短名称:-a

为此实用程序指定 OKM 根 CA X.509 证书 PEM 文件,用于通过 OKM 对该实用程序自身进行验证。如果未指定,则该实用程序在由 --directory 选项指定的目录中查找 ca.crt 文件。此选项与 --oper 选项互斥。

--description=description

短名称:-R

指定正在创建或修改的代理的描述。描述的长度必须在 1 到 64 个字符之间,包含 1 和 64。

--directory=dirname

短名称:-d

指定一个目录,在其中搜索包含 OKM 根 CA X.509 证书的 PEM 文件和包含 OKM 用户 X.509 证书的 PEM 文件。如果未指定,则此实用程序在当前工作目录中查找证书文件。此选项与 --oper 选项互斥。

--enddate

短名称:-e

使用以下格式指定性能查询的结束日期和时间:YYYY-MM-DD hh:mm:ss,表示国际协调时间 (universal coordinated time, UTC) 或本地时间(如果 localtimezone 选项为 true)的值。默认值为当前值。

--localtimezone

短名称:-L

指定一个布尔值,确定输入和输出时间位于本地时区,而不是国际协调时间 (Universal Coordinated Time, UTC)。这将影响输入值(例如开始和结束日期)的解释以及审计事件时间戳的显示。布尔值可以为 "true" 或 "false"。

--oper=username

短名称:-b

指定此实用程序的 OKM 用户 ID,以使用 OKM 对该实用程序自身进行验证。如果指定,其将提示提供用户的口令短语,因为未使用证书。此选项与 --cacert--usercert--directory 选项互斥。

--rateinterval 短名称:-I 指定比率显示间隔。请求率将根据选择的比率显示间隔来推断并且显示为每个选定间隔的平均请求数(例如,推断的每天平均创建密钥请求数)。可能值为 "second"、"minute"、"hour"、"day"、"week"、"month"、"year" 或 "entire"。如果选择 "entire",将显示每种请求类型的计数,而不是其比率。默认值为 "entire"。

--startdate 短名称:-s 使用以下格式指定性能查询的开始日期和时间:YYYY-MM-DD hh:mm:ss,表示国际协调时间 (universal coordinated time, UTC) 或本地时间(如果 localtimezone 选项为 true)的值。默认值为数据收集开始时间。

--usercert=filename

短名称:-u

为此实用程序指定 OKM 用户的 X.509 证书 PEM 文件,用于通过 OKM 对该实用程序自身进行验证。此证书文件还必须包含用户的私钥。如果未指定,则该实用程序在由 --directory 选项指定的目录中查找 clientkey.pem 文件。此选项与 --oper 选项互斥。

以下列表显示其他选项。

--agentids=agentids

短名称:-A

为关联的审计事件指定逗号分隔的代理 ID 列表。每个代理 ID 的长度必须在 1 到 64 个字符之间。OKM 用户必须具有操作员或合规官角色才能指定此选项。此选项与 --dataunitids--keyids 选项互斥。

--all=true

短名称:-l

指示此实用程序为所有数据单元销毁 --keystate 选项指示的所有已取消激活或已泄密密钥。此选项与 --duids 选项互斥。

--comment=”text

短名称:-C

指定注释,用于描述密钥销毁。此注释的长度必须在 1 到 64 个字符之间。

--dataunitids=dataunitds

短名称:-D

为关联的审计事件指定逗号分隔的数据单元 ID 列表。每个数据单元 ID 都必须是 32 个十六进制字符。OKM 用户必须具有操作员或合规官角色才能指定此选项。此选项与 --agentids--keyids 选项互斥。

--duids=filename

短名称:-i

对于密钥导出或销毁,此选项指定包含一组数据单元 ID(每行一个,使用换行分隔)的文件名。每个数据单元 ID 都必须是 32 个十六进制字符。在 destroykeys 子命令上,如果特定数据单元没有任何已取消激活或已泄密密钥,则忽略该数据单元。如果指定的文件为空,则 destroykeys 子命令销毁所有数据单元的所有已取消激活或已泄密密钥(请参见 --all 选项)。此选项与 --filter--all 选项互斥。

--filter=filter

短名称:-f

指定过滤字符串,将处理该字符串来生成要显示或导出的数据单元 ID 列表或要显示的审计事件列表。如果该字符串包含空格,必须使用引号(在 Windows 上为双引号)将该字符串引起来(请参见"示例")。

导出花费的时间与数据单元和密钥的数量成比例,所以您应该指定过滤器来减小数据单元的集合。

在 export 子命令上,此选项与 --duids 选项互斥。

exportlistdu 子命令上,此过滤字符串的语法为:

DUState=state[, Exported=boolean ][, Imported=boolean]

[, DataUnitID=duid][, ExternalTag=tag]

[, ExternalUniqueID=euid]

DUState=state

其中 state 可以是 "normal"、"needs-rekey" 或 "normal+needs-rekey"。如果未指定 DUState 过滤器,则默认为 "DUState=normal+needs-rekey"。

Exported=boolean

其中 boolean 可以是 "true" 或 "false"。如果未指定 Exported 过滤条件,则数据单元选择不考虑已导出状态,所以已导出数据单元和尚未导出的数据单元都可以进行选择。

Imported=boolean

其中 boolean 可以是 "true" 或 "false"。如果未指定 Imported 过滤条件,则数据单元选择不考虑已导入状态,所以已导入数据单元和尚未导入的数据单元都可以进行选择。

DataUnitID=duid

其中 duid 是数据单元 ID。

ExternalTag=tag

其中 tag 是外部标记(对于为 LTO 磁带机创建的数据单元,必须使用空格将此标记填充为 32 个字符)。

ExternalUniqueID=euid

其中 euid 是外部唯一 ID。

在 listagentperformance 子命令上,此过滤字符串的语法为:

AgentID=agentid[, SiteID=siteid][, DefaultKeyGroupID=kgid]

AgentID=agentid

其中 agentid 是代理名称。CLI 在匹配此字段时使用 "starts with" 运算符(而不是等号),因为一些代理在此字段值的结尾添加空格。

SiteID=siteid

其中 siteid 是站点 ID。

DefaultKeyGroupID=kgid

其中 kgid 是密钥组 ID。

listauditevents 子命令上,此过滤字符串的语法为:

StartDate=date[, EndDate=date ][, Severity=text]

[, Operation=text][, Condition=text] [, Class=text]

[, RetentionTerm=text] [, KMAName=kmaname]

[, EntityID=entityid][, EntityNetworkAddress=netaddress]

[, SortOrder=order][, ShowShortTerm=boolean]

StartDate=date

其中 date 具有以下格式:YYYY-MM-DD hh:mm:ss 并表示 UTC 时间。

EndDate=date

其中 date 具有以下格式:YYYY-MM-DD hh:mm:ss 并表示 UTC 时间。

Severity=text

其中 text 是审计严重性字符串(例如 "Error")。

Operation=text

其中 text 是审计操作字符串(例如 "Retrieve Root CA Certificate")。

Condition=text

其中 text 是审计情况字符串(例如 "Success")。

Class=text

其中 text 是审计类字符串(例如 "Security Violation")。

RetentionTerm=text

其中 text 是审计保留期限字符串(例如 "MEDIUM TERM RETENTION")。

KMAName=kmaname

其中 kmaname 是 KMA 名称。

EntityID=entityid

其中 entityid 是实体 ID。

EntityNetworkAddress=netaddress

其中 netaddress 是 IP 地址或主机名。

SortOrder=order

其中 order 可以是 "asc" 或 "desc"。默认情况下,按 "Created Date" 降序显示审计事件。

ShowShortTerm=boolean

其中 boolean 可以是 "true" 或 "false"。默认情况下,不显示保留期限较短的审计事件。

在 listkeys 子命令上,此过滤字符串的语法为:

KeyState=state[, KeyID=keyid][, KeyGroupID=kgid] [, Exported=boolean][, Imported=boolean] [, Revoked=boolean]

KeyState=state,其中 state 可以是以下值之一:gen、ready、pnp、proc、deact、comp、dest

KeyID=keyid,其中 keyid 是密钥 ID。

KeyGroupID=kgid,其中 kgid 是密钥组 ID。

Exported=boolean,其中 boolean 可以是 "true" 或 "false"。

Imported=boolean,其中 boolean 可以是 "true" 或 "false"。

Revoked=boolean,其中 boolean 可以是 "true" 或 "false"。

在 listkmaperformance 子命令上,此过滤字符串的语法为:

KMAName=kmaname[, SiteID=siteid]

KMAName=kmaname,其中 kmaname 是 KMA 名称。

SiteID=siteid,其中 siteid 是站点 ID。

--help

短名称:-h

显示帮助信息。

--input=filename

短名称:-i

指定要从中导入数据单元和密钥的文件名。此文件也称为密钥传输文件。

--keygroup=keygroupid

短名称:-g

指定为 OKM 定义的密钥组的 ID。

--keyids=keyids

短名称:-K

为关联的审计事件指定逗号分隔的密钥 ID 列表。OKM 用户必须具有操作员或合规官角色才能指定此选项。此选项与 --agentids--dataunitids 选项互斥。

--keystate=keystate

短名称:-s

指定要销毁的密钥的状态。keystate 值可以是 "deact"(用于已取消激活密钥)、"comp"(用于已泄密密钥)或 "deact+comp"(用于已取消激活或已泄密密钥)。

--kma=networkaddress

短名称:-k

指定 KMA 的网络地址以发出请求。网络地址可以是主机名、IPv4 地址或 IPv6 地址。

--listwait=waittime

短名称:-w

指定 exportlistdu 子命令发出的列出数据单元请求之间的秒数。默认值为 2。

--localtimezone=boolean

短名称:-L

显示本地时区(而不是国际协调时间 (universal coordinated time, UTC))的审计事件的时间戳。此外,StartDate 和 EndDate 过滤器解释为采用本地时间。

--maxcount=count

短名称:-c

指定要列出的最大审计事件数。默认值为 20,000。

--onetimepassphrase=boolean

短名称:-O

指定一个布尔值,确定注册口令短语是否仅可用于验证一次。布尔值可以为 "true" 或 "false"。

--output=filenamedirname

短名称:-o

指定存储结果的文件名。这些结果是 backupbackupcs 请求的备份、export 请求的密钥传输文件、listdu 请求列出的数据单元及其属性以及 listauditevents 请求列出的审计事件。在 listdulistauditevents 请求时,可以为 stdout 指定 "-",其也是默认值。在 backup 请求时,此选项指定备份数据文件和备份密钥文件下载到的目录。

--overrideeuiconflict=boolean

短名称:-O

指定一个布尔值,确定在现有数据单元与正在导入的数据单元具有相同外部唯一 ID 时是否覆盖冲突。如果此值为 "true",则更新现有数据单元以清除其外部唯一 ID,而导入数据单元保留其外部唯一 ID。否则,导入请求失败。布尔值可以为 "true" 或 "false"。

--partner=transferpartnerid

短名称:-p

指定为 OKM 定义的且可以发送或接收导出的密钥的传输伙伴。

--passphrase=passphrase

短名称:-P

指定正在创建或修改的代理的口令短语。口令短语的长度可以为 8 到 64 个字符,包含 8 和 64。口令短语必须遵循 OKM 口令短语规则。

--rclientcert=filename

短名称:-C

指定证书颁发机构为此 KMA 颁发 X.509 证书 PEM 文件。

--rclientkey=filename

短名称:-K

指定客户机证书文件随附的私钥文件。

--rclientpassword=password

短名称:-P

指定保护私钥的密码(如果有)。

--retries=retries

短名称:-r

指定 KMA 忙碌时此实用程序尝试连接到该 KMA 的次数。默认值为 60。

--server=networkaddress

短名称:-S

指定远程系统日志系统的网络地址(IP 地址或主机名(如果配置了 DNS))。

--site=siteid

短名称:-S

指定正在创建或修改的代理的站点 ID。此站点 ID 的长度必须在 1 到 64 个字符之间,包含 1 和 64。

--timeout=timeout

短名称:-t

指定这些尝试之间的超时值(以秒为单位)。默认值为 60。

--verbose=boolean

短名称:-n

指示此实用程序生成详细输出,包括请求处理过程中的进度状态。布尔值可以为 "true" 或 "false"。

--version

短名称:-v

显示命令行用法。

示例

这些示例显示单个命令行。在某些情况下,命令行显示为多行以方便阅读。在 Solaris 示例中,反斜杠表示命令行继续。

以下示例使用给定目录中 ca.crt 和 clientkey.pem 文件中的证书生成备份以进行验证。

Solaris:

okm backup --kma=mykma1 \
           --directory/export/home/Joe/.sunw/kms/BackupOperatorCertificates \
           --output=/export/home/KMSBackups

Windows:

okm backup --kma=mykma1
           --directory=D:\KMS\Joe\BackupOperatorCertificates
           --output=D:\KMS\KMSBackups

以下示例使用 OKM 用户的用户 ID 和口令短语生成备份以进行验证。

Solaris:

okm backup -k mykma1 -o /export/home/KMSBackups -b Joe

Windows:

okm backup -k mykma1 -o D:\KMS\KMSBackups -b Joe

以下示例使用当前工作目录中 ca.pem 和 op.pem 文件中的证书导出密钥以进行验证。

Solaris:

okm export -k 10.172.88.88 -d "." -a ca.pem -u op.pem \
           -f "DUState = normal+needs-rekey, Exported = false" \
           -o Partner.dat -p Partner

Windows:

okm export -k 10.172.88.88 -d "." -a ca.pem -u op.pem
           -f "DUState = normal+needs-rekey, Exported = false"
           -o Partner.dat -p Partner

以下示例使用 OKM 用户的用户 ID 和口令短语导出密钥以进行验证。

Solaris:

okm export --kma=mykma1 --oper=tpFreddy \
           --filter="Exported = false" --output=Partner.dat \ 
           --partner=Partner

Windows:

okm export --kma=mykma1 --oper=tpFreddy
           --filter="Exported = false" --output=Partner.dat 
           --partner=Partner

以下示例使用当前工作目录中 ca.crt 和 clientkey.pem 文件中的证书导入密钥以进行验证。

Solaris:

okm import --kma=10.172.88.88 --directory="." \
           --input=DRKeys.dat --partner=Partner \
           --keygroup=OpenSysBackupKeyGroup

Windows:

okm import --kma=10.172.88.88 --directory="."
           --input=DRKeys.dat --partner=Partner
           --keygroup=OpenSysBackupKeyGroup

以下示例使用 OKM 用户的用户 ID 和口令短语导入密钥以进行验证。

Solaris:

okm import --kma=mykma1 --oper=Joe --input=DRKeys.dat \
           --partner=Partner --keygroup=OpenSysBackupKeyGroup

Windows:

okm import --kma=mykma1 --oper=Joe --input=DRKeys.dat
           --partner=Partner --keygroup=OpenSysBackupKeyGroup

以下示例使用给定目录中 ca.crt 和 clientkey.pem 文件中的证书列出数据单元以进行验证。

Solaris:

okm listdu --kma=10.172.88.88 \
            --directory=/export/home/Joe/.sunw/kms/OperatorCertificates \
            --output=/export/home/KMSDataUnits

Windows:

okm listdu --kma=10.172.88.88
           --directory=D:\KMS\Joe\OperatorCertificates 
           --output=D:\KMS\KMSDataUnits

以下示例使用 OKM 用户的用户 ID 和口令短语列出数据单元以进行验证。

Solaris:

okm listdu -k mykma1 -b Joe -f "Exported=false" \
           --output=/export/home/KMSDataUnits

Windows:

okm listdu -k mykma1 -b Joe -f "Exported=false"
           --output=D:\KMS\KMSDataUnits

以下示例使用给定目录中 ca.crt 和 clientkey.pem 文件中的证书列出审计事件以进行验证。

Solaris:

okm listauditevents --kma=10.172.88.88 \
                    --directory=/export/home/Joe/.sunw/kms/OperatorCertificates \
                    --filter=Severity=Error \
                    --output=/export/home/KMSAuditEvents

Windows:

okm listauditevents --kma=10.172.88.88
                    --directory=D:\KMS\Joe\OperatorCertificates
                    --filter=Severity=Error
                    --output=D:\KMS\KMSAuditEvents

以下示例使用 OKM 用户的用户 ID 和口令短语列出审计事件以进行验证。

Solaris:

okm listauditevents -k mykma1 -b Joe -f "Severity=Error" \
                    --output=/export/home/KMSAuditEvents

Windows:

okm listauditevents -k mykma1 -b Joe -f "Severity=Error"
                    --output=D:\KMS\KMSAuditEvents

以下示例使用给定目录中 ca.crt 和 clientkey.pem 文件中的证书销毁所有已泄密密钥以进行验证。

Solaris:

okm destroykeys --kma=10.172.88.88 \
                --directory=/export/home/Joe/.sunw/kms/OperatorCertificates \
                --all=true --keystate=comp \
                --comment="Joe destroyed compromised keys"

Windows:

okm destroykeys --kma=10.172.88.88
                --directory=D:\KMS\Joe\OperatorCertificates
                --all=true --keystate=comp
                --comment="Joe destroyed compromised keys"

以下示例使用 OKM 用户的用户 ID 和口令短语销毁与数据单元 ID 列表关联的已取消激活密钥以进行验证。

Solaris:

okm destroykeys -k mykma1 -b Joe -i DeactivatedDUIDs.txt \
                -s deact -C "Joe destroyed deactivated keys"

Windows:

okm destroykeys -k mykma1 -b Joe -i DeactivatedDUIDs.txt
                -s deact -C "Joe destroyed deactivated keys"

以下示例使用给定目录中 ca.crt 和 clientkey.pem 文件中的证书备份核心安全性以进行验证。

Solaris:

okm backupcs --kma=10.172.88.88 \
             --directory=/export/home/Joe/.sunw/kms/SecurityOfficerCertificates \
             --output=/export/home/KMSCoreSecurity.xml

Windows:

okm backupcs --kma=10.172.88.88
             --directory=D:\KMS\Joe\SecurityOfficerCertificates
             --output=D:\KMS\KMSCoreSecurity.xml

以下示例使用 OKM 用户的用户 ID 和口令短语备份核心安全性以进行验证。

Solaris:

okm backupcs -k mykma1 -b Joe -o /export/home/KMSCoreSecurity.xml

Windows:

okm backupcs -k mykma1 -b Joe -o D:\KMS\KMSCoreSecurity.xml

退出值

返回以下退出值:

 0    Successful completion
 >0   An error occurred

样例 Perl 脚本

下面是一些基本 Perl 脚本,这些脚本可以进行定制并在 Solaris 或 Windows 上运行。这些示例都使用基于证书的验证并要求根 CA 证书和用户的证书位于当前工作目录中。

注:

Perl 脚本不随 OKM 命令行实用程序安装。如果要从 Perl 脚本调用 OKM 命令行实用程序,则使用文本编辑器创建一个类似下面显示的 Perl 脚本之一的脚本。
  • listdu.pl

    #!/opt/csw/bin/perl
    ## the kms CLI utility must be in your path
    $cmd="okm";
    $KMA="kma1.example.com";
    $FILTER="--filter=Exported=false";
    $DIRECTORY=".";
    $OUTPUT="listdu.txt";
    system("$cmd listdu --verbose=true --directory=$DIRECTORY --kma=$KMA $FILTER
           --output=$OUTPUT")
    
  • export.pl

    #!/opt/csw/bin/perl
    ## the kms CLI utility must be in your path
    $cmd="okm";
    $KMA="kma1.example.com";
    $TP="DestinationPartner";
    $FILTER="Exported=false";
    $OUTPUT="$TP.dat";
    system("$cmd export --verbose=true --kma=$KMA --directory=. --filter=$FILTER
           --partner=$TP --output=$OUTPUT");
    
  • import.pl

    #!/opt/csw/bin/perl
    ## the kms CLI utility must be in your path
    $cmd="okm";
    $KMA="kma1.example.com";
    $TP="SourceTransferPartner";
    $KEYGROUP="MyKeyGroup"; 
    $INPUT="../aberfeldy/KeyBundle.dat";
    system("$cmd import --verbose=true --kma=$KMA --directory=. --partner=$TP 
           --keygroup=$KEYGROUP --input=$INPUT");
    
  • backup.pl

    #!/opt/csw/bin/perl
    ## the following must be in your path
    $cmd="okm";
    $KMA="kma1.example.com";
    $DIRECTORY="."; 
    $OUTPUT=".";
    system("$cmd backup --verbose=true --directory=$DIRECTORY --kma=$KMA 
           --output=$OUTPUT")
    

备份命令行实用程序

使用备份命令行实用程序,您可以从命令行(而不是 "Backup List" 菜单)启动备份。您还可以调度自动备份。

此实用程序使用同一安装程序随 OKM Manager GUI 一起安装。

注:

如果要输入链路本地 IPv6 地址,则调用备份实用程序并指定链路本地 IPv6 地址。在地址末尾包括区域 ID(例如 "%4")。

请参阅"带区域 ID 的 IPv6 地址",以查看进行初始设置必须执行的步骤。

Solaris 语法

OKM_Backup [-UserID userid] [-Passphrase passphrase]
           -KMAIPAddress IPaddress -BackupFilePath pathname 
           [-Retries retries] [-Timeout timeout]

Windows 语法

OKMBackupUtility [-UserID userid] [-Passphrase passphrase]
                 -KMAIPAddress IPaddress -BackupFilePath pathname 
                 [-Retries retries] [-Timeout timeout]

参数描述

userid

备份操作员用户 ID。这必须是备份操作员。

passphrase

用户 ID 的口令短语。

如果未指定 userid 或 passphrase 值,实用程序会提示您输入这些值。

IPaddress

在其上启动备份的 KMA 管理网络地址。

pathname

在您的系统上应将备份文件和备份密钥文件下载到的位置。

retries

KMA 忙碌时此实用程序尝试连接到该 KMA 的次数。默认值为 60。

timeout

这些尝试之间的超时值(以秒为单位)。默认值为 60。

示例

以下示例创建备份文件(格式:OKM-Backup-backupid-timestamp.dat)和备份密钥文件(格式:OKM-BackupKey-backupid-timestamp.xml)。

OKM_Backup -UserID MyBackupOperator \
           -KMAIPAddress 10.0.60.172 \
           -BackupFilePath /tmp/MyKMSDownloads
OKM Backup Utility  Version 3.0.0 (build2020)
Copyright (c) 2007, 2013, Oracle and/or its affiliates.  All Rights Reserved.
Enter Passphrase:

注:

可以选择使用 -Passphrase 参数在命令行上指定口令短语。