AWS Identity and Access Management (IAM) に SSL 証明書をアップロードし、インポートするにはどうすればよいですか?

SSL 証明書は AWS Certificate Manager にインポートすることを推奨しています。ただし、ユーザーが、ACM や関連付け済み AWS リソースが現在サポートしていない証明書のアルゴリズムとキーサイズを利用している場合は、AWS コマンドラインインターフェイス (AWS CLI)を利用し、SSL 証明書を IAM にアップロードすることもできます。

SSL 証明書を IAM にインポートするには、以下の条件を満たす必要があります。

  • 証明書はアップロード時に有効でなければなりません。証明書の有効期間前または有効期限後には、証明書のアップロードはできません。
  • 証明書、プライベートキー、および証明書チェーンはすべて PEM エンコードされている必要があります。詳細については、サーバー証明書の使用のトラブルシューティングを参照してください。

証明書がこれらの基準を満たしていることを確認した後、証明書チェーンの順序が正しいことを確認してから、証明書をアップロードします。

証明書チェーンの順序が正しいことを確認します

証明書チェーンは、認証機関 (CA) が作成した証明書から始まり、CA のルート証明書で終わらなければなりません。証明書チェーンの順序が間違っていると、次のようなエラーメッセージを受け取ります。"An error occurred (MalformedCertificate) when calling the UploadServerCertificate operation: Unable to validate certificate chain. The certificate chain must start with the immediate signing certificate, followed by any intermediaries in order. The index within the chain of the invalid certificate is: -1 (UploadServerCertificate オペレーションの呼び出し時にエラーが発生しました (不正な形式の証明書)。証明書チェーンを有効化できません。証明書チェーンは直接のデジタル署名用証明書から始まり、その後中間証明書が順番に続いていなければなりません。無効な証明書チェーンのインデックスは -1 です)"

証明書チェーンは、「-----BEGIN CERTIFICATE-----」から始まり、「-----END CERTIFICATE-----」で終わっていなければなりません。PEM エンコードされた証明書チェーンの例は次のとおりです。

-----BEGIN CERTIFICATE-----
Base64-encoded Intermediate certificate 2
-----END CERTIFICATE-----
-----BEGIN CERTIFICATE-----
Base64-encoded Intermediate certificate 1
-----END CERTIFICATE-----
-----BEGIN CERTIFICATE-----
Optional: Base64-encoded Root certificate
-----END CERTIFICATE-----

注意: 先頭と末尾にスペースが入らないよう注意してください。

証明書をアップロードする

以下のコマンドを実行し、証明書をアップロードします。

$ aws iam upload-server-certificate --server-certificate-name ExampleCertificate --certificate-body file://Certificate.pem --certificate-chain file://CertificateChain.pem --private-key file://PrivateKey.pem

注意: ファイル名と ExampleCertificate には、アップロードするファイルと証明書を入力します。詳細については、「upload-server-certificate」を参照してください。

証明書がアップロードされると、コマンドはアップロードされた証明書のメタデータを返します。このメタデータには、証明書の Amazon リソースネーム (ARN)、フレンドリ名、識別子 (ID)、有効期限が含まれています。アップロードした証明書を表示するには、以下のコマンドを実行します。

aws iam list-server-certificates

注意: Amazon CloudFront で利用するサーバー証明書をアップロードした場合は、--path を用いてパスを指定してください。パスは /cloudfront で始まり、末尾のスラッシュであることが必要です (例: /cloudfront/test/)。詳細については、「Amazon CloudFront で使用するためにアップロードした証明書が AWS コンソールからアクセス可能なことを確認するにはどうすればいいですか。」を参照してください。


このページは役に立ちましたか? はい | いいえ

AWS サポートナレッジセンターに戻る

サポートが必要ですか?AWS サポートセンターをご覧ください。

公開日: 2018 年 5 月 11 日