証明書やキーの文字列表現で作業する

UNIXシェルで以下のコマンドを実行すると、PEM形式の証明書が\n(エスケープされた改行)を使って単一の文字列に結合されます。

awk 'NF {sub(/\r/, ""); printf "%s\\n",$0;}' certificate.pem | pbcopy

Was this helpful?

/

このコマンドは値をクリップボードのバッファにコピーするため、必要な場所に貼り付けることができます。

詳細情報

ルールやManagement API v2要求での作業に証明書やキーを使用する場合には、ほぼ確実にファイルの文字列表現が必要になります。

テキストエディターで証明書ファイル(cerpem)を開くと、以下のように表示されます。

-----BEGIN CERTIFICATE-----
MIICzDCCAbQCCQDH8GvxPIeH+DANBgkqhkiG9w0BAQsFADAoMQswCQYDVQQGEwJh
cjEZMBcGA1UEAwwQaHR0cHM6Ly9uaWNvLmNvbTAeFw0xOTA0MDgxODA3NTVaFw0y
//
// more lines of base64-encoded information
//
nSWyabd+LiBGtLTMB+ZLbOIi3EioWPGw/nHOI8jzPrqhiCLuZCSQmiqrLQYNsc1W
-----END CERTIFICATE-----

Was this helpful?

/

ヘッダーの-----BEGIN CERTIFICATE-----とフッターの-----END CERTIFICATE-----の間には、base64エンコードされたバイナリ情報が含まれます。公開鍵と秘密鍵(.keyファイル)は似ているように見えますが、ヘッダーとフッターが異なります。

証明書やキーのファイルの文字列表現では、改行を\n(エスケープされた改行)に置き換えて、すべてを単一の行に結合する必要があります。そのため、上のサンプルは以下のようになります。

"-----BEGIN CERTIFICATE-----
\nMIICzDCCAbQCCQDH8GvxPIeH+DANBgkqhkiG9w0BAQsFADAoMQswCQYDVQQGEwJh\n
[..all the other lines..]
-----END CERTIFICATE-----\n"

Was this helpful?

/

もっと詳しく