Red Hat Training

A Red Hat training course is available for Red Hat Enterprise Linux

24.4.2. コマンドラインでの証明書プロファイル管理

IdM プロファイルを管理する certprofile プラグインを使用すると、特権ユーザーは IdM 証明書プロファイルをインポート、変更、または削除できます。プラグインがサポートするすべてのコマンドを表示するには、ipa certprofile コマンドを実行します
$ ipa certprofile
Manage Certificate Profiles

...

EXAMPLES:

  Import a profile that will not store issued certificates:
    ipa certprofile-import ShortLivedUserCert \
      --file UserCert.profile --desc "User Certificates" \
      --store=false

  Delete a certificate profile:
    ipa certprofile-del ShortLivedUserCert
...
certprofile 操作を実行するには、必要なパーミッションを持つユーザーとして操作する必要がある点に注意してください。IdM には、デフォルトで以下の証明書プロファイル関連の権限が含まれています。
システム: 証明書プロファイルの読み取り
ユーザーがすべてのプロファイル属性を読み取ることができます。
システム: 証明書プロファイルのインポート
ユーザーが証明書プロファイルを IdM にインポートできるようにします。
システム: 証明書プロファイルの削除
ユーザーが既存の証明書プロファイルを削除できるようにします。
システム: 証明書プロファイルの変更
ユーザーがプロファイル属性を変更でき、プロファイルを無効にまたは有効化できます。
これらのすべてのパーミッションは、デフォルトの CA Administrator 特権に含まれます。IdM のロールベースのアクセス制御およびパーミッションの管理に関する詳細は、「ロールベースのアクセス制御の定義」 を参照してください。
注記
証明書を要求する際に 、--profile-id オプションを ipa cert-request コマンドに追加して、使用するプロファイルを指定できます。プロファイル ID が指定されていない場合、default caIPAserviceCert プロファイルが証明書に使用されます。
本セクションでは、プロファイル管理に ipa certprofile コマンドを使用する最も重要な側面のみを説明します。コマンドの詳細は、以下のように --help オプションを指定して実行します。
$ ipa certprofile-mod --help
Usage: ipa [global-options] certprofile-mod ID [options]

Modify Certificate Profile configuration.
Options:
  -h, --help     show this help message and exit
  --desc=STR     Brief description of this profile
  --store=BOOL   Whether to store certs issued using this profile
...

証明書プロファイルのインポート

新しい証明書プロファイルを IdM にインポートするには、ipa certprofile-import コマンドを使用します。オプションを指定せずにコマンドを実行すると、certprofile -import スクリプトが、証明書のインポートに必要な情報を求める対話セッションを開始します。
$ ipa certprofile-import

Profile ID: smime
Profile description: S/MIME certificates
Store issued certificates [True]: TRUE
Filename of a raw profile. The XML format is not supported.: smime.cfg
------------------------
Imported profile "smime"
------------------------
  Profile ID: smime
  Profile description: S/MIME certificates
  Store issued certificates: TRUE
ipa certprofile-import コマンドは、複数のコマンドラインオプションを受け入れます。以下に例を示します。
--file
このオプションは、プロファイル設定を含むファイルを ipa certprofile-import に直接渡します。以下は例になります。
$ ipa certprofile-import --file=smime.cfg
--store
このオプションは、Store issued certificates 属性を設定します。以下の 2 つの値を使用できます。
  • true: 発行した証明書をクライアントに配信し、ターゲットの IdM プリンシパルの userCertificate 属性に保存します。
  • false: 発行された証明書をクライアントに配信しますが、IdM に保存しません。このオプションは、複数の短期証明書を発行する際に最も一般的に使用されるオプションです。
ipa certprofile-import で指定されたプロファイル ID がすでに使用されている場合や、プロファイルコンテンツが正しくない場合は、インポートに失敗します。たとえば、必須属性がない場合や、指定されたファイルで定義されたプロファイル ID 値が ipa certprofile-import で指定されているプロファイル ID に一致しないと、インポートに失敗します。
新しいプロファイルのテンプレートを取得するには、指定した既存プロファイルをファイルにエクスポートする --out オプションを指定して ipa certprofile-show コマンドを実行します。以下は例になります。
$ ipa certprofile-show caIPAserviceCert --out=file_name
次に、必要に応じてエクスポートファイルを編集し、新しいプロファイルとしてインポートできます。

証明書プロファイルの表示

IdM に現在保存されている証明書プロファイルをすべて表示するには、ipa certprofile-find コマンドを使用します。
$ ipa certprofile-find
------------------
3 profiles matched
------------------
  Profile ID: caIPAserviceCert
  Profile description: Standard profile for network services
  Store issued certificates: TRUE

  Profile ID: IECUserRoles
...
特定のプロファイルに関する情報を表示するには、ipa certprofile-show コマンドを使用します。
$ ipa certprofile-show profile_ID
  Profile ID: profile_ID
  Profile description: S/MIME certificates
  Store issued certificates: TRUE

証明書プロファイルの変更

既存の証明書プロファイルを変更するには、ipa certprofile-mod コマンドを使用します。ipa certprofile-mod で使用できるコマンドラインオプションを使用して、コマンドで必要な変更を渡します。たとえば、プロファイルの説明を変更し、IdM が発行した証明書を保存するかどうかを変更するには、次のコマンドを実行します。
$ ipa certprofile-mod profile_ID --desc="New description" --store=False
------------------------------------
Modified Certificate Profile "profile_ID"
------------------------------------
  Profile ID: profile_ID
  Profile description: New description
  Store issued certificates: FALSE
証明書プロファイル設定を更新するには 、--file オプションを使用して更新された設定を含むファイルをインポートします。以下は例になります。
$ ipa certprofile-mod profile_ID --file=new_configuration.cfg

証明書プロファイルの削除

IdM から既存の証明書プロファイルを削除するには、ipa certprofile-del コマンドを使用します。
$ ipa certprofile-del profile_ID
-----------------------
Deleted profile "profile_ID"
-----------------------