2.4. サポートされている pki コマンドの概要
本セクションでは、
pki
コマンドとそのサブコマンドの一部と、その機能を紹介します。特定の pki
サブコマンドの使用方法に関する詳細情報は、--help
オプションを追加して実行します。以下に例を示します。
$ pki cert-find --help usage: cert-find [OPTIONS...] --certTypeSecureEmail <on|off> Certifiate Type: Secure Email --certTypeSSLClient <on|off> Certifiate Type: SSL Client --certTypeSSLServer <on|off> Certifiate Type: SSL Server ...
サブコマンドの一部は、pki(1) の man ページにも記載されています。
2.4.1. pki クライアントによるクライアント管理
pki client-* コマンドを使用すると、Certificate System クライアント環境を管理できます。これらのコマンドの詳細は、pki-client(1) の man ページを参照してください。
クライアントの初期化
- pki client-init
- 新しいクライアント環境を初期化します。このコマンドは、デフォルトの証明書データベースディレクトリー
~/.dogtag/nssdb/
にセキュリティーデータベースを作成します。新しいセキュリティーデータベースのパスワードは、-c
オプションまたは-C
オプションで指定する必要があります。以下に例を示します。$ pki -c Secret123 client-init ------------------ Client initialized ------------------
注記この操作は管理者にとっては任意です。管理者が新しいサブシステムを作成すると、クライアントセキュリティーデータベースが自動的に作成されます。
ローカル証明書の一覧表示
- pki client-cert-find
- クライアントセキュリティーデータベース内のすべての証明書を一覧表示します。
証明書および秘密鍵のインポート
- pki client-cert-import
- PKCS #12 ファイルから CA 証明書またはクライアント証明書をインポートします。
例2.1 CA サーバーからの CA 証明書のインポート
CA サーバーから CA 証明書をダウンロードしてインポートするには、以下を実行します。$ pki -c Secret123 -n "CA Signing Certificate - EXAMPLE" client-cert-import --ca-server ------------------------------------------------------- Imported certificate "CA Signing Certificate - EXAMPLE" -------------------------------------------------------
例2.2 ファイルからの CA 証明書のインポート
ファイルから CA 証明書をインポートするには、以下を実行します。$ pki -c Secret123 -n "CA Signing Certificate - EXAMPLE" client-cert-import --ca-cert ca.pem ------------------------------------------------------- Imported certificate "CA Signing Certificate - EXAMPLE" -------------------------------------------------------
注記CA 証明書のインポートは任意です。コマンドラインから SSL 経由でサーバーに接続するときに CA 証明書がクライアントセキュリティーデータベースに存在しない場合は、CA サーバーから CA 証明書をダウンロードしてインポートするかどうかが尋ねられます。例2.3 クライアント証明書および秘密鍵のインポート
PKCS #12 から秘密鍵をインポートするには、以下を実行します。$ pki -c Secret123 client-cert-import --pkcs12 ca_admin_cert.p12 --pkcs12-password Secret123 ---------------------------------------- Imported certificates from PKCS #12 file ----------------------------------------
注記管理者では、証明書と秘密鍵のインポートは任意です。管理者が新しいサブシステムを作成すると、管理者証明書と秘密鍵はクライアントセキュリティーデータベースに自動的に保存されます。
ローカル証明書の削除
- pki client-cert-del
- ローカル証明書を削除します。
2.4.2. pki証明書を使用した証明書管理
pki cert-* コマンドを使用すると、CA で証明書および証明書要求を管理できます。これらのコマンドの詳細は、pki-cert(1) の man ページを参照してください。
証明書の一覧表示
- pki cert-find
- すべての証明書を一覧表示します。
例2.4 有効な証明書のみの一覧表示
有効な証明書のみを一覧表示するには、以下を実行します。$ pki cert-find --status VALID
例2.5 検索制約が設定されたファイルに基づく証明書の一覧表示
ファイルで定義された検索制約で証明書を一覧表示するには、以下を実行します。- 検索制約を定義する XML ファイルを準備します。ファイルは以下の形式に従う必要があります。
<?xml version="1.0" encoding="UTF-8" standalone="yes"?> <CertSearchRequest> <serialNumberRangeInUse>true</serialNumberRangeInUse> <serialFrom></serialFrom> <serialTo></serialTo> <subjectInUse>false</subjectInUse> <eMail></eMail> <commonName></commonName> <userID></userID> <orgUnit></orgUnit> <org></org> <locality></locality> <state></state> <country></country> <matchExactly>false</matchExactly> <status></status> <revokedByInUse>false</revokedByInUse> <revokedBy></revokedBy> <revokedOnFrom>false</revokedOnFrom> <revokedOnTo></revokedOnTo> <revocationReasonInUse>false</revocationReasonInUse> <revocationReason></revocationReason> <issuedByInUse>false</issuedByInUse> <issuedBy></issuedBy> <issuedOnInUse>false</issuedOnInUse> <issuedOnFrom></issuedOnFrom> <issuedOnTo></issuedOnTo> <validNotBeforeInUse>false</validNotBeforeInUse> <validNotBeforeFrom></validNotBeforeFrom> <validNotBeforeTo></validNotBeforeTo> <validNotAfterInUse>false</validNotAfterInUse> <validNotAfterFrom></validNotAfterFrom> <validNotAfterTo></validNotAfterTo> <validityLengthInUse>false</validityLengthInUse> <validityOperation></validityOperation> <validityCount></validityCount> <validityUnit></validityUnit> <certTypeInUse>false</certTypeInUse> <certTypeSubEmailCA></certTypeSubEmailCA> <certTypeSubSSLCA></certTypeSubSSLCA> <certTypeSecureEmail></certTypeSecureEmail> </CertSearchRequest>
- コマンドにファイルパスを追加して、pki cert-find コマンドを実行します。
$ pki cert-find --input filename
証明書の表示
- pki cert-show
- 指定した証明書を表示または取得します。
例2.6 証明書のダウンロード
pki cert-show を使用して証明書をダウンロードするには、次のコマンドを実行します。$ pki cert-show certificate ID --encoded --output filename
証明書要求の作成
- pki cert-request-profile-show および pki cert-request-submit
- これらのコマンドは、証明書要求を作成して送信するために使用できます。
例2.7 証明書要求の作成および送信
pki cert-request-profile-show および pki cert-request-submit を使用して証明書 要求を作成して送信 するには、以下を実行します。- CSR を生成します。
$ certutil -R -d security database directory -s subject DN -a
- 以下のコマンドを使用して、プロファイルテンプレートを取得します。
$ pki cert-request-profile-show profile --output file
- 出力ファイルを編集し、CSR を
cert_request
属性に挿入します。以下に例を示します。<?xml version="1.0" encoding="UTF-8" standalone="yes"?> <CertEnrollmentRequest> ... <Input id="i1"> ... <Attribute name="cert_request_type"> <Value>pkcs10</Value> ... </Attribute> <Attribute name="cert_request"> <Value> MIIBZTCBzwIBADAmMRAwDgYDVQQKEwdFWEFNUExFMRIwEAYDVQQDEwlUZXN0IFVz ZXIwgZ8wDQYJKoZIhvcNAQEBBQADgY0AMIGJAoGBAL7hYQp/g4FblKRd3Cjyfh8e MFGZLbTDZcY+YBxOk43JeqIDLkGZRHpr/84hK4lgISuyXpvz8owKel2jw6q7bP9Z 0D8AGrrJfEvAuMQrAJiMd/O3U6CKF9+U/z8RjzHPXjzAKl/cIVpqnPuAQOMWQGmx HkxmLYZww0hKcc9nl5KPAgMBAAGgADANBgkqhkiG9w0BAQUFAAOBgQCtpV2ts1Hp w+s7ev90d2gRpmPBtNGfOz4OsOpNYbDX3fGabkLFIJAWQ8arjQqToGawIh0nZpND UJ9hSa1gIfI+4uxYKjk6cFQAPnZeVgLg1KgELVIzYZ0Qem5NXHmRsR/Vwxh5abzX XeuHTCnFT0Elpva9mnR+tqe1agZwHghDwQ== </Value> ... </Attribute> </Input> ... </CertEnrollmentRequest>
- pki cert-request-submit コマンドを使用して要求を送信します。
$ pki cert-request-submit filename
証明書要求ステータスの確認
- pki cert-request-show
- 証明書要求のステータスを表示します。
証明書要求の管理
重要
証明書リクエストの表示または処理は、エージェントの認証情報を使用して実行する必要があります。
pki
コマンドの使用時に認証する方法は、「認証」 を参照してください。
- pki cert-request-find
- すべての証明書要求を表示します。
- pki cert-request-review
- 証明書要求を確認し、approve または reject などのアクションを実行します。
例2.8 pki cert-requestを使用した証明書の確認
pki cert-request-review を使用して証明書を確認するには、次のコマンドを実行します。
- 指定の証明書要求で ファイルを生成します。
$ pki agent authentication cert-request-review request_ID --output filename
- 生成された出力ファイルを手動で確認し、必要に応じて編集します。
- コマンドラインに以下のアクションの 1 つを入力してレビューを完了します。
- approve
- reject
- cancel
- update
- validate
- assign
- unassign
注記
--action
を使用して、必要なレビューアクションを直接コマンドに渡すことで、承認プロセスを 1 つのステップで実行することができます。以下に例を示します。
$ pki agent authentication cert-request-review request_ID --action approve
証明書の取り消し
重要
証明書の取り消し、保持、またはリリースは、エージェントの認証情報を使用して実行する必要があります。
pki
コマンドの使用時に認証する方法は、「認証」 を参照してください。
- pki cert-revoke
- 証明書の取り消し
- pki cert-hold
- 一時的に証明書を保持します。
- pki cert-release-hold
- 保持されている証明書を解放します。
2.4.3. pki ユーザーおよび pki グループを使用したユーザー および グループの管理
pki user-* コマンドおよび pki group-* コマンドを使用すると、ユーザーおよびグループを管理できます。これらのコマンドでは、操作が適用されるサブシステムを指定する必要があります。これらのコマンドの詳細は、pki-user(1) および pki-group(1) の man ページを参照してください。
重要
これらのコマンドはすべて、管理者の認証情報を使用して実行する必要があります。
pki
コマンドの使用時に認証する方法は、「認証」 を参照してください。
- pki subsystem-user-find
- ユーザーを一覧表示します。
- pki subsystem-group-find
- グループを一覧表示します。
- pki subsystem-user-show
- 指定したユーザーの詳細を表示します。
- pki subsystem-group-show
- 指定したグループの詳細を表示します。
- pki subsystem-user-add
- 新しいユーザーを追加します。
- pki subsystem-group-add
- 新規グループを追加します。
- pki subsystem-user-mod
- 既存のユーザーエントリーを変更します。
- pki subsystem-group-mod
- 既存のグループエントリーを変更します。
- pki subsystem-user-del
- ユーザーを削除します。
- pki subsystem-group-del
- グループを削除します。
2.4.4. pki group-member および pki user-membershipを使用したグループメンバーおよびユーザーメンバーシップの管理
- pki group-member-* コマンド
- グループメンバー管理用のコマンド
- pki user-membership-* コマンド
- ユーザーメンバーシップ管理のコマンド
利用可能なグループメンバーおよびユーザーメンバーシップの管理コマンドの完全なリストについては、pki group-member または pki user-membership を実行します。コマンドの詳細は、pki-group-member(1) および pki-user-membership(1) の man ページを参照してください。
2.4.5. pki セキュリティードメインを使用したセキュリティードメイン管理
- pki securitydomain-show
- セキュリティードメイン情報を表示します。このコマンドの詳細は、pki-securitydomain(1) の man ページを参照してください。
2.4.6. pki key-*を使用したキー管理
pki key-* コマンドを使用すると、KRA でキーを管理できます。これらのコマンドの詳細は、pki-key(1) の man ページを参照してください。
テンプレート
- pki key-template-find
- 利用可能なすべてのキーテンプレートを一覧表示します。
- pki key-template-show
- キーテンプレートを表示するか、キーテンプレートをファイルに保存します。
例2.9 キーテンプレートのファイルへの保存
キーテンプレートをファイルに保存するには、以下を実行します。$ pki key-template-show retrieveKey --output retrieveKey.xml
主要なリクエスト
重要
すべてのキー要求は、KRA エージェントの認証情報で実行する必要があります。
pki
コマンドの使用時に認証する方法は、「認証」 を参照してください。
- pki key-request-find
- 送信されたすべてのキー要求を一覧表示します。
- pki key-request-show
- 指定したキーリクエストを表示します
- pki key-request-review
- キー要求を確認します。レビュープロセスは、例2.8「pki cert-requestを使用した証明書の確認」 で説明されているように、証明書要求の確認と同じルールに従います。
鍵
重要
すべてのキー操作は、KRA エージェントの認証情報で実行する必要があります。
pki
コマンドの使用時に認証する方法は、「認証」 を参照してください。
- pki key-find
- アーカイブされたすべての鍵を一覧表示します。
- pki key-generate
- サーバーで新しいキーを生成します。
- pki key-archive
- コマンドラインで指定されたシークレットをアーカイブするテンプレートですでに暗号化されたシークレットをアーカイブするには、以下を実行します。
$ pki -d ~/.dogtag/pki-tomcat/ca/alias/ -c Secret123 -n caadmin key-archive --input archiveKey.xml
- pki key-retrieve
- キーを取得します。
例2.10 ランダムセキュリティーパラメーターを使用した鍵の取得
無作為に生成されるセキュリティーパラメーターでキーを取得するには、以下を実行します。$ pki -d ~/.dogtag/pki-tomcat/ca/alias/ -c Secret123 -n caadmin key-retrieve --keyID 0x1 Retrieve Key Information ------------------------ Key Algorithm: RSA Key Size: 1024 Nonce data: rYkeh4Rb+MI= Actual archived data: MIICdwIBADANBgkqhkiG9w0BAQEFAASCAmEwggJdAgEAAoGBALTyleypbSGRnb8+ P/BItA74mTdLX4eFY+fKE4hraeOV4ts+4M9qfry/FJkbMq3dpIpsxuMmGclbHEUQ J/MfLAHgaxwVLGK8qCGb0IeY0Z7qIbGucSCLcDVpODlsTvqftK/SJZm56ODu7xXh ...
例2.11 カスタムセキュリティーパラメーターによるキーの取得
テンプレートで指定されたカスタムセキュリティーパラメーターでキーを取得するには、以下を実行します。$ pki -d ~/.dogtag/pki-tomcat/ca/alias/ -c Secret123 -n caadmin key-retrieve --input retrieveKey.xml
- pki key-recover
- キーを復元します。
- pki key-show
- 指定したキーの詳細を表示します。
例2.12 キー ID を指定する際のキーの表示
キー ID を指定するときにキーを表示するには、次のコマンドを実行します。$ pki -d ~/.dogtag/pki-tomcat/ca/alias/ -c Secret123 -n caadmin key-show 0x1 Key ID: 0x1 Client Key ID: test Status: active Algorithm: RSA Size: 1024 Owner: kraadmin Public Key: MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQC08pXsqW0hkZ2/Pj/wSLQO+Jk3 S1+HhWPnyhOIa2njleLbPuDPan68vxSZGzKt3aSKbMbjJhnJWxxFECfzHywB4Gsc FSxivKghm9CHmNGe6iGxrnEgi3A1aTg5bE76n7Sv0iWZuejg7u8V4QmU+jBc79O4 ydfTGLzZvtTVrYbgdQIDAQAB
例2.13 クライアントキー ID を指定する際のキーの表示
クライアントキー ID を指定するときにキーを表示するには、次のコマンドを実行します。$ pki -d ~/.dogtag/pki-tomcat/ca/alias/ -c Secret123 -n caadmin key-show --clientKeyID test Key ID: 0x1 Client Key ID: test Status: active Algorithm: RSA Size: 1024 Owner: kraadmin Public Key: MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQC08pXsqW0hkZ2/Pj/wSLQO+Jk3 S1+HhWPnyhOIa2njleLbPuDPan68vxSZGzKt3aSKbMbjJhnJWxxFECfzHywB4Gsc FSxivKghm9CHmNGe6iGxrnEgi3A1aTg5bE76n7Sv0iWZuejg7u8V4QmU+jBc79O4 ydfTGLzZvtTVrYbgdQIDAQAB
- pki key-mod --status active
- キーをアクティブにします。
--status
オプションをinactive
に設定すると、キーが無効になります。
2.4.7. pki ca-kraconnectorを使用した KRA コネクター管理
pki ca-kraconnector-* コマンドを使用すると、KRA コネクターを管理できます。
重要
- pki ca-kraconnector-show
- KRA コネクターを表示します。
- pki ca-kraconnector-add
- 新しい KRA コネクターを追加します。
- pki ca-kraconnector-del
- KRA コネクターを削除します。
2.4.8. pki caを使用した CA 管理
pki ca-* コマンドを使用すると、さまざまな CA サービスにアクセスできます。
プロファイルの一覧表示
- pki ca-profile-find
- 指定されたデータベース内のすべての CA プロファイルを一覧表示します。
プロファイルの表示
- pki ca-profile-show
- データベースで指定されたプロファイルを表示します
2.4.9. pki tpsを使用した TPS 管理
pki tps-* コマンドを使用すると、さまざまな TPS サービスにアクセスできます。
アクティビティー
- tps-activity-find
- すべての TPS アクティビティーを表示します
- tps-activity-show
- 指定したアクティビティーを表示します
Audit
- tps-audit-mod
- 監査設定を変更します。
- tps-audit-show
- 監査設定をファイルに表示します。
Users
- pki tps-user-find
- すべての TPS ユーザーを表示します。
- pki tps-user-show
- 指定した TPS ユーザーを表示します
- pki tps-user-add
- 新しい TPS ユーザーを追加します。
- pki tps-user-mod
- 既存の TPS ユーザーの変更
- pki tps-user-del
- TPS ユーザーを削除します。
プロファイル
- pki tps-profile-find
- すべての TPS プロファイルを表示します。
- pki tps-profile-show
- 指定した TPS ユーザーを表示します
- pki tps-profile-add
- 新しい TPS プロファイルを追加します。
- pki tps-profile-mod
- 既存の TPS プロファイルの変更
- pki tps-profile-del
- TPS プロファイルを削除します。