5.2. IdM CLI での外部証明書の変換および IdM ユーザーアカウントへの読み込み
IdM CLI では、最初の行および最後の行 (-----BEGIN CERTIFICATE----- および -----END CERTIFICATE-----) が削除された PEM 証明書のみが使用できます。
以下の手順に従って、外部証明書を PEM 形式に変換し、IdM CLI を使用して IdM ユーザーアカウントに追加します。
手順
証明書を
PEM形式に変換します。証明書が
DER形式の場合は、次のようになります。openssl x509 -in cert.crt -inform der -outform pem -out cert.pem
$ openssl x509 -in cert.crt -inform der -outform pem -out cert.pemCopy to Clipboard Copied! Toggle word wrap Toggle overflow ファイルが
PKCS #12形式 (一般的なファイル名拡張子は.pfxと.p12) であり、証明書、秘密鍵、およびその他のデータが含まれている場合は、openssl pkcs12ユーティリティーを使用して証明書を抽出します。プロンプトが表示されたら、そのファイルに保存されている秘密鍵をパスワードで保護します。openssl pkcs12 -in cert_and_key.p12 -clcerts -nokeys -out cert.pem
$ openssl pkcs12 -in cert_and_key.p12 -clcerts -nokeys -out cert.pem Enter Import Password:Copy to Clipboard Copied! Toggle word wrap Toggle overflow
管理者の認証情報を取得します。
kinit admin
$ kinit adminCopy to Clipboard Copied! Toggle word wrap Toggle overflow 以下のいずれかの方法で、
IdM CLIを使用して証明書をユーザーアカウントに追加します。文字列を
ipa user-add-certコマンドに追加する前に、sedユーティリティーを使用してPEMファイルの最初の行および最後の行 (-----BEGIN CERTIFICATE----- および -----END CERTIFICATE-----) を削除します。ipa user-add-cert some_user --certificate="$(sed -e '/BEGIN CERTIFICATE/d;/END CERTIFICATE/d' cert.pem)"
$ ipa user-add-cert some_user --certificate="$(sed -e '/BEGIN CERTIFICATE/d;/END CERTIFICATE/d' cert.pem)"Copy to Clipboard Copied! Toggle word wrap Toggle overflow 最初の行と最後の行 (-----BEGIN CERTIFICATE----- および -----END CERTIFICATE-----) がない証明書ファイルのコンテンツを、
ipa user-add-certコマンドにコピーして貼り付けます。ipa user-add-cert some_user --certificate=MIIDlzCCAn+gAwIBAgIBATANBgkqhki...
$ ipa user-add-cert some_user --certificate=MIIDlzCCAn+gAwIBAgIBATANBgkqhki...Copy to Clipboard Copied! Toggle word wrap Toggle overflow 注記最初の行および最後の行 (-----BEGIN CERTIFICATE----- および -----END CERTIFICATE-----) を削除せずに、直接証明書を含む
PEMファイルを、ipa user-add-certコマンドへの入力として直接渡すことはできません。ipa user-add-cert some_user --cert=some_user_cert.pem
$ ipa user-add-cert some_user --cert=some_user_cert.pemCopy to Clipboard Copied! Toggle word wrap Toggle overflow このコマンドの結果、"ipa: ERROR: Base64 decoding failed: Incorrect padding" エラーメッセージが表示されます。
証明書がシステムによって許可されたかどうかを確認するには、次のコマンドを実行します。
ipa user-show some_user
$ ipa user-show some_userCopy to Clipboard Copied! Toggle word wrap Toggle overflow