AWS Certificate Manager - ユーザーガイド · 2018-07-13 · AWS Certificate Manager...

113
AWS Certificate Manager ユーザーガイド Version 1.0-

Transcript of AWS Certificate Manager - ユーザーガイド · 2018-07-13 · AWS Certificate Manager...

Page 1: AWS Certificate Manager - ユーザーガイド · 2018-07-13 · AWS Certificate Manager ユーザーガイド Table of Contents AWS Certificate Manager とは何ですか?.....

AWS Certificate Managerユーザーガイド

Version 1.0-

Page 2: AWS Certificate Manager - ユーザーガイド · 2018-07-13 · AWS Certificate Manager ユーザーガイド Table of Contents AWS Certificate Manager とは何ですか?.....

AWS Certificate Manager ユーザーガイド

AWS Certificate Manager: ユーザーガイドCopyright © 2018 Amazon Web Services, Inc. and/or its affiliates. All rights reserved.

Amazon's trademarks and trade dress may not be used in connection with any product or service that is not Amazon's, in any mannerthat is likely to cause confusion among customers, or in any manner that disparages or discredits Amazon. All other trademarks notowned by Amazon are the property of their respective owners, who may or may not be affiliated with, connected to, or sponsored byAmazon.

Page 3: AWS Certificate Manager - ユーザーガイド · 2018-07-13 · AWS Certificate Manager ユーザーガイド Table of Contents AWS Certificate Manager とは何ですか?.....

AWS Certificate Manager ユーザーガイド

Table of ContentsAWS Certificate Manager とは何ですか? ............................................................................................... 1

概念 .......................................................................................................................................... 1ACM 証明書 ....................................................................................................................... 2Apex ドメイン ................................................................................................................... 3非対称キー暗号 .................................................................................................................. 3認証機関 ............................................................................................................................ 3証明書の透明性ログ記録 ...................................................................................................... 4ドメインネームシステム ...................................................................................................... 4ドメイン名 ........................................................................................................................ 4暗号化と復号 ..................................................................................................................... 5完全修飾ドメイン名 (FQDN) ................................................................................................ 5パブリックキー構造 ............................................................................................................ 6ルート証明書 ..................................................................................................................... 6Secure Sockets Layer (SSL) ................................................................................................ 6安全な HTTPS ................................................................................................................... 6SSL サーバー証明書 ........................................................................................................... 6対称キー暗号化 .................................................................................................................. 6Transport Layer Security (TLS) ............................................................................................. 6信頼 .................................................................................................................................. 6

ACM 証明書の特徴 ..................................................................................................................... 7サポートされているリージョン ..................................................................................................... 8統合サービス ............................................................................................................................. 9サイトシールおよびトラストロゴ ................................................................................................ 10制限 ........................................................................................................................................ 10

1 年間の ACM 証明書の数 (過去 365 日間) ........................................................................... 11ACM 証明書ごとのドメイン名の数 ...................................................................................... 11プライベート CA および証明書の数 ..................................................................................... 11

ベストプラクティス .................................................................................................................. 12AWS CloudFormation ........................................................................................................ 12証明書ピニング ................................................................................................................. 12ドメイン検証 .................................................................................................................... 13ドメイン名の追加または削除 .............................................................................................. 13証明書の透明性ログ記録のオプトアウト ............................................................................... 13AWS CloudTrail の有効化 ................................................................................................... 14

料金表 ..................................................................................................................................... 15セットアップ .................................................................................................................................... 16

AWS および IAM のセットアップ ................................................................................................ 16AWS へのサインアップ ..................................................................................................... 16IAM ユーザーを作成する .................................................................................................... 16

ドメイン名を登録する ............................................................................................................... 17サイトまたはアプリの設定 ......................................................................................................... 17

Linux クイックスタート ..................................................................................................... 18Windows クイックスタート ................................................................................................ 18

(オプション) E メールを設定する ................................................................................................ 18WHOIS データベース ........................................................................................................ 19MX レコード .................................................................................................................... 19

(オプション) CAA の設定 ........................................................................................................... 19開始方法 .......................................................................................................................................... 22

パブリック証明書のリクエスト ................................................................................................... 22コンソールを使用してパブリック証明書をリクエストする ...................................................... 23CLI を使用してパブリック証明書をリクエストする ................................................................ 24

プライベート証明書のリクエスト ................................................................................................ 24コンソールを使用したプライベート証明書のリクエスト ......................................................... 25CLI を使用したプライベート証明書のリクエスト ................................................................... 25

Version 1.0-iii

Page 4: AWS Certificate Manager - ユーザーガイド · 2018-07-13 · AWS Certificate Manager ユーザーガイド Table of Contents AWS Certificate Manager とは何ですか?.....

AWS Certificate Manager ユーザーガイド

プライベート証明書のエクスポート ............................................................................................. 26コンソールを使用したプライベート証明書のエクスポート ...................................................... 26CLI を使用したプライベート証明書のエクスポート ................................................................ 26

DNS を使用した検証 ................................................................................................................. 27データベースに CNAME を追加する .................................................................................... 30データベースから CNAME を削除する ................................................................................. 31

E メールによる検証 .................................................................................................................. 31証明書の一覧表示 ...................................................................................................................... 34

証明書の一覧表示 (コンソール) ........................................................................................... 34証明書の一覧表示 (CLI) ...................................................................................................... 35

証明書の説明 ............................................................................................................................ 36証明書の説明 (コンソール) ................................................................................................. 36証明書の説明 (CLI) ............................................................................................................ 36

証明書の削除 ............................................................................................................................ 38証明書の削除 (コンソール) ................................................................................................. 38証明書の削除 (CLI) ............................................................................................................ 38

ACM 証明書のインストール ....................................................................................................... 38E メールの再送信 (オプション) ................................................................................................... 38

E メールの再送信 (コンソール) ........................................................................................... 39E メールの送信 (CLI) ........................................................................................................ 39

マネージド型更新 .............................................................................................................................. 40ドメイン検証 ............................................................................................................................ 40

自動ドメイン検証の仕組み ................................................................................................. 41自動検証に失敗した場合 .................................................................................................... 41

更新ステータスの確認 ............................................................................................................... 42ステータスの確認 (コンソール) ........................................................................................... 43ステータスの確認 (API) ..................................................................................................... 43ステータスの確認 (CLI) ...................................................................................................... 43ステータスの確認 (PHD) .................................................................................................... 43

電子メールをリクエストする (オプション) .................................................................................... 44証明書のインポート .......................................................................................................................... 46

前提条件 .................................................................................................................................. 46証明書の形式 ............................................................................................................................ 47証明書のインポート .................................................................................................................. 48

コンソールを使用してインポートする .................................................................................. 48AWS CLI を使用してインポートする ................................................................................... 49

証明書の再インポート ............................................................................................................... 49コンソールを使用した再インポート ..................................................................................... 50AWS CLI を使用した再インポート ...................................................................................... 50

ACM 証明書へのタグ付け .................................................................................................................. 52タグの制限 ............................................................................................................................... 52タグを管理する ......................................................................................................................... 52

タグの管理 (コンソール) .................................................................................................... 53タグの管理 (AWS Command Line Interface) .......................................................................... 54タグの管理 (AWS Certificate ManagerAPI) ............................................................................ 54

認証とアクセスコントロール .............................................................................................................. 55認証 ........................................................................................................................................ 55アクセスコントロール ............................................................................................................... 56アクセス管理の概要 .................................................................................................................. 56

ACM リソースおよびオペレーション ................................................................................... 57リソース所有権について .................................................................................................... 57ACM 証明書へのアクセスの管理 ......................................................................................... 57

AWS 管理ポリシー .................................................................................................................... 58AWSCertificateManagerReadOnly ........................................................................................ 58AWSCertificateManagerFullAccess ...................................................................................... 58

カスタマー管理ポリシー ............................................................................................................ 59インラインポリシー .................................................................................................................. 59

Version 1.0-iv

Page 5: AWS Certificate Manager - ユーザーガイド · 2018-07-13 · AWS Certificate Manager ユーザーガイド Table of Contents AWS Certificate Manager とは何ですか?.....

AWS Certificate Manager ユーザーガイド

証明書の一覧 .................................................................................................................... 59証明書を取得する .............................................................................................................. 60証明書のインポート .......................................................................................................... 60証明書の削除 .................................................................................................................... 60ACM への読み取り専用アクセス ......................................................................................... 60ACM への完全アクセス ...................................................................................................... 61すべての AWS リソースへの管理者アクセス ......................................................................... 61

ACM API の権限リファレンス .................................................................................................... 62AWS CloudTrail を使用する ............................................................................................................... 63

ACM API 呼び出しのログ作成 .................................................................................................... 63タグを追加する ................................................................................................................. 64証明書の削除 .................................................................................................................... 65証明書についての説明 ....................................................................................................... 65証明書のエクスポート ....................................................................................................... 66証明書のインポート .......................................................................................................... 67証明書の一覧 .................................................................................................................... 68タグをリスト表示する ....................................................................................................... 69タグの削除 ....................................................................................................................... 70証明書のリクエスト .......................................................................................................... 70E メールの再送信 ............................................................................................................. 71証明書を取得する .............................................................................................................. 72

ACM 関連の API 呼び出しのログ記録 .......................................................................................... 72ロードバランサーの作成 .................................................................................................... 73Amazon EC2 を登録する。 ................................................................................................ 73プライベートキーの暗号化 ................................................................................................. 74プライベートキーの復号化 ................................................................................................. 75

ACM API の使用 ............................................................................................................................... 77AddTagsToCertificate ................................................................................................................ 77DeleteCertificate ....................................................................................................................... 79DescribeCertificates ................................................................................................................... 80ExportCertificate ....................................................................................................................... 82GetCertificate ........................................................................................................................... 84ImportCertificate ........................................................................................................................ 86ListCertificates .......................................................................................................................... 88ListTagsForCertificate ................................................................................................................ 89RemoveTagsFromCertificate ....................................................................................................... 91RequestCertificate ..................................................................................................................... 92ResendValidationEmail .............................................................................................................. 94

ACM のプライベートキーのセキュリティ ............................................................................................. 96トラブルシューティング .................................................................................................................... 97

CAA レコード .......................................................................................................................... 97E メール .................................................................................................................................. 97

検証 E メールが受信されない ............................................................................................. 98サブドメインに E メールが送信された ................................................................................. 99非表示の連絡先情報 .......................................................................................................... 99証明書の更新 .................................................................................................................. 100WHOIS スロットリング ................................................................................................... 100

証明書のインポート ................................................................................................................. 100証明書のピニング .................................................................................................................... 100証明書のリクエスト ................................................................................................................. 101

証明書リクエストタイムアウト ......................................................................................... 101証明書リクエストに失敗した ............................................................................................. 101

証明書の更新 .......................................................................................................................... 103自動ドメイン検証 ............................................................................................................ 103非同期プロセス ............................................................................................................... 103

証明書の検証 .......................................................................................................................... 104検証未完了 ..................................................................................................................... 104

Version 1.0-v

Page 6: AWS Certificate Manager - ユーザーガイド · 2018-07-13 · AWS Certificate Manager ユーザーガイド Table of Contents AWS Certificate Manager とは何ですか?.....

AWS Certificate Manager ユーザーガイド

.IO ドメイン ........................................................................................................................... 104API Gateway .......................................................................................................................... 105

ドキュメント履歴 ............................................................................................................................ 106

Version 1.0-vi

Page 7: AWS Certificate Manager - ユーザーガイド · 2018-07-13 · AWS Certificate Manager ユーザーガイド Table of Contents AWS Certificate Manager とは何ですか?.....

AWS Certificate Manager ユーザーガイド概念

AWS Certificate Manager とは何ですか?

AWS Certificate Manager (ACM) サービスへようこそ。ACM は、AWS ベースのウェブサイトとアプリケーション用のパブリック SSL/TLS 証明書の複雑な作成と管理を処理します。ACM が提供するパブリック証明書 (p. 22) (ACM 証明書) または ACM にインポートする証明書 (p. 46) を使用できます。ACM証明書は、ドメイン内の複数のドメイン名と複数の名前を保護できます。また、ACM を使用して、無制限の数のサブドメインを保護できるワイルドカード SSL 証明書を作成することもできます。

ACM は AWS Certificate Manager Private Certificate Authority と緊密にリンクしています。ACM PCA を使用してプライベート認証機関 (CA) を作成でき、ACM を使用してプライベート証明書を発行できます。これらは、ユーザー、コンピュータ、アプリケーション、サービス、サーバー、およびその他のデバイスを内部的に識別する SSL/TLS X.509 証明書です。プライベート証明書はパブリックに信頼されません。ACM PCA の詳細については、AWS Certificate Manager Private Certificate Authority User Guide を参照してください。ACM を使用して発行されたプライベート証明書は、パブリック ACM 証明書と良く似ています。これらには同様の利点と制限があります。利点には、証明書に関連付けられたプライベートキーの管理、証明書の更新、およびコンソールを使用して統合されたサービスでプライベート証明書をデプロイすることが含まれます。ACM の使用に関連する制限の詳細については、「プライベート証明書のリクエスト (p. 24)」を参照してください。ACM を使用すると、プライベート証明書と暗号化されたプライベートキーをエクスポートして、どこでも使用することもできます。詳細については、「プライベート証明書のエクスポート (p. 26)」を参照してください。ACM PCA をスタンドアロンサービスとして使用してプライベート証明書を発行する利点については、ACM PCA ユーザーガイドを参照してください。

Note

ウェブサイトやアプリケーションに直接パブリック ACM 証明書をインストールすることはできません。ACM および ACM PCA と統合されたサービスの 1 つを使用して証明書をインストールする必要があります。これらのサービスの詳細については、「AWS Certificate Manager に統合されるサービス (p. 9)」を参照してください。

トピック• 概念 (p. 1)• ACM 証明書の特徴 (p. 7)• サポートされているリージョン (p. 8)• AWS Certificate Manager に統合されるサービス (p. 9)• サイトシールおよびトラストロゴ (p. 10)• 制限 (p. 10)• ベストプラクティス (p. 12)• AWS Certificate Manager の料金表 (p. 15)

概念このセクションでは、AWS Certificate Manager (ACM) に関連する基本的な用語や概念について説明します。

トピック• ACM 証明書 (p. 2)• Apex ドメイン (p. 3)• 非対称キー暗号 (p. 3)• 認証機関 (p. 3)

Version 1.0-1

Page 8: AWS Certificate Manager - ユーザーガイド · 2018-07-13 · AWS Certificate Manager ユーザーガイド Table of Contents AWS Certificate Manager とは何ですか?.....

AWS Certificate Manager ユーザーガイドACM 証明書

• 証明書の透明性ログ記録 (p. 4)• ドメインネームシステム (p. 4)• ドメイン名 (p. 4)• 暗号化と復号 (p. 5)• 完全修飾ドメイン名 (FQDN) (p. 5)• パブリックキー構造 (p. 6)• ルート証明書 (p. 6)• Secure Sockets Layer (SSL) (p. 6)• 安全な HTTPS (p. 6)• SSL サーバー証明書 (p. 6)• 対称キー暗号化 (p. 6)• Transport Layer Security (TLS) (p. 6)• 信頼 (p. 6)

ACM 証明書ACM は X.509 バージョン 3 証明書を生成します。それぞれ 13 か月間有効で、次の拡張機能が含まれています。

• 基本的な制約 - 証明書の対象が認証機関 (CA) かどうかを指定します• 認証キー識別子 - 証明書に署名するために使用されるプライベートキーに対応するパブリックキーの識

別を可能にします。• サブジェクトキー識別子 - 特定のパブリックキーを含む証明書を識別することができます。• キーの使用状況 - 証明書に埋め込まれたパブリックキーの目的を定義します。• 拡張キー用途 - キーの使用状況拡張機能で指定された目的に加えて、パブリックキーを使用する目的を

1 つ以上指定します。• CRL ディストリビューションポイント - CRL 情報を取得できる場所を指定します。

Certificate: Data: Version: 3 (0x2) Serial Number: f2:16:ad:85:d8:42:d1:8a:3f:33:fa:cc:c8:50:a8:9e Signature Algorithm: sha256WithRSAEncryption Issuer: O=Example CA Validity Not Before: Jan 30 18:46:53 2018 GMT Not After : Jan 31 19:46:53 2018 GMT Subject: C=US, ST=VA, L=Herndon, O=Amazon, OU=AWS, CN=example.com Subject Public Key Info: Public Key Algorithm: rsaEncryption Public-Key: (2048 bit) Modulus: 00:ba:a6:8a:aa:91:0b:63:e8:08:de:ca:e7:59:a4: 69:4c:e9:ea:26:04:d5:31:54:f5:ec:cb:4e:af:27: e3:94:0f:a6:85:41:6b:8e:a3:c1:c8:c0:3f:1c:ac: a2:ca:0a:b2:dd:7f:c0:57:53:0b:9f:b4:70:78:d5: 43:20:ef:2c:07:5a:e4:1f:d1:25:24:4a:81:ab:d5: 08:26:73:f8:a6:d7:22:c2:4f:4f:86:72:0e:11:95: 03:96:6d:d5:3f:ff:18:a6:0b:36:c5:4f:78:bc:51: b5:b6:36:86:7c:36:65:6f:2e:82:73:1f:c7:95:85: a4:77:96:3f:c0:96:e2:02:94:64:f0:3a:df:e0:76: 05:c4:56:a2:44:72:6f:8a:8a:a1:f3:ee:34:47:14: bc:32:f7:50:6a:e9:42:f5:f4:1c:9a:7a:74:1d:e5:

Version 1.0-2

Page 9: AWS Certificate Manager - ユーザーガイド · 2018-07-13 · AWS Certificate Manager ユーザーガイド Table of Contents AWS Certificate Manager とは何ですか?.....

AWS Certificate Manager ユーザーガイドApex ドメイン

68:09:75:19:4b:ac:c6:33:90:97:8c:0d:d1:eb:8a: 02:f3:3e:01:83:8d:16:f6:40:39:21:be:1a:72:d8: 5a:15:68:75:42:3e:f0:0d:54:16:ed:9a:8f:94:ec: 59:25:e0:37:8e:af:6a:6d:99:0a:8d:7d:78:0f:ea: 40:6d:3a:55:36:8e:60:5b:d6:0d:b4:06:a3:ac:ab: e2:bf:c9:b7:fe:22:9e:2a:f6:f3:42:bb:94:3e:b7: 08:73 Exponent: 65537 (0x10001) X509v3 extensions: X509v3 Basic Constraints: CA:FALSE X509v3 Authority Key Identifier: keyid:84:8C:AC:03:A2:38:D9:B6:81:7C:DF:F1:95:C3:28:31:D5:F7:88:42 X509v3 Subject Key Identifier: 97:06:15:F1:EA:EC:07:83:4C:19:A9:2F:AF:BA:BB:FC:B2:3B:55:D8 X509v3 Key Usage: critical Digital Signature, Key Encipherment X509v3 Extended Key Usage: TLS Web Server Authentication, TLS Web Client Authentication X509v3 CRL Distribution Points: Full Name: URI:http://example.com/crl

Signature Algorithm: sha256WithRSAEncryption 69:03:15:0c:fb:a9:39:a3:30:63:b2:d4:fb:cc:8f:48:a3:46: 69:60:a7:33:4a:f4:74:88:c6:b6:b6:b8:ab:32:c2:a0:98:c6: 8d:f0:8f:b5:df:78:a1:5b:02:18:72:65:bb:53:af:2f:3a:43: 76:3c:9d:d4:35:a2:e2:1f:29:11:67:80:29:b9:fe:c9:42:52: cb:6d:cd:d0:e2:2f:16:26:19:cd:f7:26:c5:dc:81:40:3b:e3: d1:b0:7e:ba:80:99:9a:5f:dd:92:b0:bb:0c:32:dd:68:69:08: e9:3c:41:2f:15:a7:53:78:4d:33:45:17:3e:f2:f1:45:6b:e7: 17:d4:80:41:15:75:ed:c3:d4:b5:e3:48:8d:b5:0d:86:d4:7d: 94:27:62:84:d8:98:6f:90:1e:9c:e0:0b:fa:94:cc:9c:ee:3a: 8a:6e:6a:9d:ad:b8:76:7b:9a:5f:d1:a5:4f:d0:b7:07:f8:1c: 03:e5:3a:90:8c:bc:76:c9:96:f0:4a:31:65:60:d8:10:fc:36: 44:8a:c1:fb:9c:33:75:fe:a6:08:d3:89:81:b0:6f:c3:04:0b: a3:04:a1:d1:1c:46:57:41:08:40:b1:38:f9:57:62:97:10:42: 8e:f3:a7:a8:77:26:71:74:c2:0a:5b:9e:cc:d5:2c:c5:27:c3: 12:b9:35:d5

Apex ドメイン「ドメイン名 (p. 4)」を参照してください。

非対称キー暗号非対称暗号化は、対称キー暗号化 (p. 6) と異なり、異なるが数学的に関連しているキーを使用して、コンテンツの暗号化と復号を行います。キーの 1 つはパブリックで、通常、X.509 v3 証明書で使用できます。もう 1 つのキーはプライベートで、安全に保存されます。X.509 証明書は、ユーザー、コンピュータ、その他のリソース (証明書件名) のアイデンティティをパブリックキーにバインドします。

ACM 証明書は、ウェブサイトのアイデンティティと組織の詳細を、証明書に含まれているパブリックキーにバインドする X.509 SSL/TLS 証明書です。ACM は、関連するプライベートキーをハードウェアセキュリティモジュール (HSM) に保存します。

認証機関認証機関 (CA) とは、デジタル証明書を発行するエンティティです。流通している最も一般的なタイプのデジタル証明書は、ISO X.509 規格に基づいています。CA は、証明書件名の ID を肯定するデジタル証明書

Version 1.0-3

Page 10: AWS Certificate Manager - ユーザーガイド · 2018-07-13 · AWS Certificate Manager ユーザーガイド Table of Contents AWS Certificate Manager とは何ですか?.....

AWS Certificate Manager ユーザーガイド証明書の透明性ログ記録

を発行し、その ID を証明書に含まれるパブリックキーにバインドします。また、通常の場合、CA は証明書の失効も管理します。

証明書の透明性ログ記録誤って発行された SSL/TLS 証明書や漏洩した CA から保護されるようにするために、一部のブラウザではドメインで発行されたパブリック証明書を証明書の透明性ログに記録する必要があります。ドメイン名が記録されます。プライベートキーは記録されません。通常、ログに記録されない証明書は、ブラウザでエラーを生成します。

ログをモニタリングして、承認した証明書のみがドメインに対して発行されていることを確認できます。Certificate Search などのサービスを使用してログを確認することができます。

Amazon CA がドメインにパブリックに信頼できる SSL/TLS 証明書を発行する前に、少なくとも 2 つの証明書の透明性ログサーバーに証明書を送信します。これらのサーバーは、パブリックデータベースに証明書を追加し、署名付き証明書タイムスタンプ (SCT) を Amazon CA に返します。CA は SCT を証明書に埋め込み、証明書に署名して発行します。タイムスタンプは他の X.509 拡張機能に含まれています。

X509v3 extensions:

CT Precertificate SCTs: Signed Certificate Timestamp: Version : v1(0) Log ID : BB:D9:DF:...8E:1E:D1:85 Timestamp : Apr 24 23:43:15.598 2018 GMT Extensions: none Signature : ecdsa-with-SHA256 30:45:02:...18:CB:79:2F Signed Certificate Timestamp: Version : v1(0) Log ID : 87:75:BF:...A0:83:0F Timestamp : Apr 24 23:43:15.565 2018 GMT Extensions: none Signature : ecdsa-with-SHA256 30:45:02:...29:8F:6C

オプトアウトする場合を除き、証明書をリクエストまたは更新すると、証明書の透明性ログが自動的に記録されます。オプトアウトの詳細については、「証明書の透明性ログ記録のオプトアウト (p. 13)」を参照してください。

ドメインネームシステムドメインネームシステム (DNS) は、コンピュータおよびインターネットやプライベートネットワークに接続するその他のリソースの階層的な分散命名方式です。DNS は主に、aws.amazon.com などの文字形式のドメイン名を、111.222.333.444 形式の数値的な IP (インターネットプロトコル) アドレスに変換するために使用されます。ただし、ドメインの DNS データベースには多数のレコードが含まれており、他の目的に使用できます。たとえば、ACM では、CNAME レコードを使用して、証明書をリクエストする際にドメインの所有者または管理者であることを検証できます。詳細については、「DNS を使用したドメインの所有権の検証 (p. 27)」を参照してください。

ドメイン名ドメイン名は、ドメインネームシステム (DNS) により IP アドレスに変換できる、www.example.com などのテキスト文字列です。インターネットを含むコンピュータネットワークでは、テキスト名ではなく IPアドレスが使用されます。ドメイン名はピリオドで区切られた個別のラベルで構成されます。

Version 1.0-4

Page 11: AWS Certificate Manager - ユーザーガイド · 2018-07-13 · AWS Certificate Manager ユーザーガイド Table of Contents AWS Certificate Manager とは何ですか?.....

AWS Certificate Manager ユーザーガイド暗号化と復号

TLD

1 番右のラベルは最上位ドメイン (TLD) と呼ばれます。一般的な例には、.com、.net、.edu などがあります。また、一部の国で登録されたエンティティの TLD は国名の略であり、国コードと呼ばれます。たとえば、英国は .uk、ロシアは .ru、フランスは .fr です。国コードを使用する場合、登録されたエンティティの種類を識別するために、TLD の第 2 レベルの階層がよく使用されます。たとえば、.co.uk というTLD は、英国の営利事業を識別します。

Apex ドメイン

apex ドメイン名には最上位ドメインが含まれ、そこで拡張されます。国コードを含むドメイン名の場合、apex ドメインには、登録されたエンティティのタイプを識別するコードとラベル (ある場合) が含まれます。apex ドメインには、サブドメインは含まれません (次の段落を参照)。www.example.com では、apex ドメインの名前は example.com です。www.example.co.uk では、apex ドメインの名前は example.co.uk です。apex の代わりによく使用されるその他の名前には、base、bare、root、rootapex、zone apex があります。

サブドメイン

サブドメイン名は apex ドメイン名の前に付き、ピリオドでドメイン名から区切られるとともに、相互にも区切られます。最も一般的なサブドメイン名は www ですが、任意の名前を付けることができます。また、サブドメイン名には複数のレベルを含めることができます。たとえば、jake.dog.animals.example.com で、サブドメインは jake、dog、animals の順になります。

完全修飾ドメイン名 (FQDN) は、ネットワークまたはインターネットに接続されるコンピュータ、ウェブサイト、またはその他のリソースの完全な DNS 名です。たとえば、aws.amazon.com は Amazon WebServices の FQDN です。FQDN には、最上位ドメインまでのすべてのドメインが含まれます。たとえば、[subdomain1].[subdomain2]...[subdomainn].[apex domain].[top–level domain] はFQDN の一般的な形式を表します。

PQDN

完全修飾されていないドメイン名は、部分修飾ドメイン名 (PQDN) と呼ばれ、あいまいです。[subdomain1.subdomain2.] などの名前は、ルートドメインを特定できないため、PQDN です。

登録

ドメイン名を使用する権限は、ドメイン名レジストラによって委任されます。通常、レジストラは、Internet Corporation for Assigned Names and Numbers (ICANN) によって認定されます。さらに、レジストリと呼ばれる他の組織が TLD データベースを維持します。ドメイン名をリクエストすると、レジストラは適切な TLD レジストリに情報を送信します。レジストリはドメイン名を割り当て、TLD データベースを更新して、情報を WHOIS に公開します。通常は、ドメイン名を購入する必要があります。

暗号化と復号暗号化とは、データに機密性を提供する処理です。復号化では、このプロセスを逆転して元のデータを復元します。暗号化されていないデータは、テキストであるかどうかに関係なく一般的にプレーンテキストと呼ばれます。暗号化されたデータは、通常、暗号化テキストと呼ばれます。クライアントとサーバー間のメッセージの HTTPS 暗号化にはアルゴリズムとキーが使用されます。アルゴリズムは段階的な手順で定義され、これによってプレーンテキストのデータは暗号化テキストに変換され (暗号化)、暗号化テキストは元のプレーンテキストに復元されます (復号化)。暗号化または復号化プロセス中にアルゴリズムによってキーが使用されます。キーはプライベートまたはパブリックとなります。

完全修飾ドメイン名 (FQDN)「ドメイン名 (p. 4)」を参照してください。

Version 1.0-5

Page 12: AWS Certificate Manager - ユーザーガイド · 2018-07-13 · AWS Certificate Manager ユーザーガイド Table of Contents AWS Certificate Manager とは何ですか?.....

AWS Certificate Manager ユーザーガイドパブリックキー構造

パブリックキー構造パブリックキー構造 (PKI) は、ハードウェア、ソフトウェア、ユーザー、ポリシー、ドキュメント、そしてデジタル証明書の作成、発行、管理、配布、使用、保存、失効に必要な手順で構成されます。PKI は、コンピュータネットワークにおける情報の安全な転送に役立ちます。

ルート証明書認証機関 (CA) は通常、相互の親子関係を明確に定義した他の複数の CA を含む段階構造内に存在します。子または下位の CA はその親 CA に証明され、証明書チェーンを造り上げます。階層の最上部にある CAはルート CA とされ、その証明書はルート証明書と呼ばれます。この証明書は通常、自己署名されています。

Secure Sockets Layer (SSL)Secure Sockets Layer (SSL) と Transport Layer Security (TLS) は、コンピュータのネットワークにおける通信の安全性を提供する暗号化プロトコルです。TLS は SSL の後続です。この 2 つはどちらも、X.509 証明書を使用してサーバーの認証を実行します。また、どちらのプロトコルもクライアントとサーバーの間を通信するデータの暗号化に使用される対称キーを使用します。

安全な HTTPSHTTPS とは、SSL/TLS 経由の HTTP であり、すべての主要なブラウザとサーバーにサポートされるHTTP の安全な形式です。すべての HTTP リクエストとレスポンスは、ネットワーク経由で送信される前に暗号化されます。HTTPS は、HTTP プロトコルに対称、非対称、および X.509 証明書ベースの暗号化を組み合わせた手法を採用しています。HTTPS は、開放型システム間相互接続 (OSI) モデルで HTTP アプリケーション層の下位と TCP トランスポート層の上位に暗号化されたセキュリティ層を挿入することで動作します。このセキュリティ層は、Secure Sockets Layer (SSL) プロトコルまたは Transport LayerSecurity (TLS) プロトコルを使用します。

SSL サーバー証明書HTTPS トランザクションは、サーバーを認証するためにサーバー証明書を要求します。サーバー証明書とは、証明書のパブリックキーを証明書の件名にバインドする X.509 v3 データ構造です。SSL/TLS 証明書は認証機関 (CA) によって署名され、サーバーの名前、有効期間、パブリックキー、署名アルゴリズムなどを含有します。

対称キー暗号化対称キー暗号化では、デジタルデータの暗号化と復号化で同じキーが使用されます。「非対称キー暗号 (p. 3)」も参照してください。

Transport Layer Security (TLS)「Secure Sockets Layer (SSL) (p. 6)」を参照してください。

信頼ウェブブラウザがウェブサイトのアイデンティティを信頼するために、ウェブサイトの証明書がブラウザによって検証できる必要があります。しかし、ブラウザは CA ルート証明書と呼ばれるほんのわずかな証明書のみを信頼します。認証機関 (CA) と呼ばれる信頼されるサードパーティは、ウェブサイトのアイデンティティを検証し、ウェブサイト運営者に署名されたデジタル証明書を発行します。こうしてブラウザは

Version 1.0-6

Page 13: AWS Certificate Manager - ユーザーガイド · 2018-07-13 · AWS Certificate Manager ユーザーガイド Table of Contents AWS Certificate Manager とは何ですか?.....

AWS Certificate Manager ユーザーガイドACM 証明書の特徴

デジタル署名を確認して、ウェブサイトのアイデンティティを検証します。検証に成功した場合は、ブラウザのアドレスバーにロックアイコンが表示されます。

ACM 証明書の特徴ACM が提供する証明書には、(このセクション) で説明する特徴があります。

Note

これらの特徴は ACM が提供する証明書にのみ適用されます。ACM にインポートする証明書 (p. 46) には適用されない場合があります。

ドメイン検証 (DV)

ACM 証明書は、ドメイン検証されます。つまり、ACM 証明書のサブジェクトフィールドはドメイン名のみを識別することを意味します。ACM 証明書をリクエストした場合、リクエストで指定したすべてのドメインの所有者または管理者であることを検証する必要があります。E メールまたは DNSを使用して所有権を検証できます。詳細については、「E メールを使用したドメインの所有権の検証 (p. 31)」および「DNS を使用したドメインの所有権の検証 (p. 27)」を参照してください。

有効期間

ACM 証明書の有効期間は、現在 13 か月です。マネージド型更新とデプロイ

ACM は、ACM の更新プロセスと、更新後の証明書のプロビジョニングを管理します。自動更新は、証明書の設定ミス、失効、期限切れによるダウンタイムを防止するために役立ちます。詳細については、「ACM の Amazon が発行する証明書のマネージド型更新 (p. 40)」を参照してください。

ブラウザとアプリケーショントラスト

ACM 証明書は、Google Chrome、Microsoft Internet Explorer と Microsoft Edge、そして MozillaFirefox および Apple Safari を含むすべての主要なブラウザから信頼されています。ACM 証明書を信頼するブラウザでは、ACM 証明書を使用するサイトに SSL/TLS から接続するときにステータスバーにロックアイコンが表示されます。ACM 証明書は Java でも信頼されています。

複数のドメイン名

各 ACM 証明書には、少なくとも 1 つの完全修飾ドメイン名 (FQDN) が含まれる必要があり、希望する場合には追加の名前を付けくわえることができます。たとえば、www.example.com に ACM証明書を作成する場合、www.example.net という名前を追加すると、カスタマーはどちらの名前を使用してもサイトにアクセスできます。これは、zone apex またはネイキッドドメインとも呼ばれるホスト名のないドメインにも有効です。つまり、www.example.com に ACM 証明書をリクエストし、example.com という名前を追加できます。詳細については、「パブリック証明書のリクエスト (p. 22)」を参照してください。

ワイルドカード名

ACM は、ドメイン名にアスタリスク (*) を使うことで、同じドメイン内の複数のサイトを保護できるワイルドカード名を含む ACM 証明書を作成することができます。たとえば、*.example.comは、www.example.com と images.example.com を保護します。

Note

ワイルドカード証明書をリクエストする場合、アスタリスク (*) はドメイン名の左側に付ける必要があり、1 つのサブドメインレベルのみを保護できます。たとえば、*.example.com は、login.example.com と test.example.com を保護しますが、test.login.example.com は保護しません。また、*.example.comは、example.com のサブドメインのみを保護し、ネイキッドドメインまたは apexドメイン

Version 1.0-7

Page 14: AWS Certificate Manager - ユーザーガイド · 2018-07-13 · AWS Certificate Manager ユーザーガイド Table of Contents AWS Certificate Manager とは何ですか?.....

AWS Certificate Manager ユーザーガイドサポートされているリージョン

(example.com) は保護しないことに注意してください。ただし、複数のドメイン名を特定してリクエストすることで、ネイキッドあるいはホスト名のないドメインとそのサブドメインを保護する証明書をリクエストできます。たとえば、example.com と *.example.com を保護する証明書をリクエストできます。

アルゴリズム

証明書では、アルゴリズムやキーサイズを指定する必要があります。現在、次のパブリックキーアルゴリズムが ACM でサポートされています。• 1024 ビット RSA (RSA_1024)• 2048 ビット RSA (RSA_2048)• 4096 ビット RSA (RSA_4096)• Elliptic Prime Curve 256 ビット (EC_prime256v1)• Elliptic Prime Curve 384 ビット (EC_secp384r1)• Elliptic Prime Curve 521 ビット (EC_secp521r1)

Important

統合サービスでは、リソースへの関連付けがサポートされているアルゴリズムとキーサイズのみが許可されることに注意してください。さらに、そのサポートは、証明書のインポート先が IAM であるか ACM であるかによって異なります。詳細については、各サービスの ドキュメントを参照してください。• Elastic Load Balancing の場合は、「Application Load Balancer の HTTPS リスナー」を参

照してください。• CloudFront の場合は、「サポートされる SSL/TLS プロトコルと暗号」を参照してくださ

い。例外

次の点に注意してください。• ACM は、拡張検証 (EV) 証明書または組織検証 (OV) 証明書を提供していません。• ACM は、SSL/TLS プロトコル以外の証明書を提供していません。• E メールの暗号化に ACM 証明書を使用することはできません。• ACM は、「xn--」(Punycode) のラベルを含むドメイン名に対して UTF-8 でエンコードされた

ASCII のみを扱います。ACM では、ドメイン名に Unicode インプット (U-ラベル) を使用できません。

• ACM は現在、ACM 証明書の証明書マネージド型更新 (p. 40)のオプトアウトを許可していません。また、マネージド型更新は ACM にインポートした証明書には使用できません。

• 末尾が amazonaws.com、cloudfront.net、または elasticbeanstalk.com などの Amazon が所有するドメイン名に証明書をリクエストすることはできません。

• ACM 証明書のプライベートキーをダウンロードすることはできません。• Amazon Elastic Compute Cloud (Amazon EC2) ウェブサイトやアプリケーションに直接 ACM 証明

書をインストールすることはできません。ただし、どの統合されたサービスでも証明書を使用できます。詳細については、「AWS Certificate Manager に統合されるサービス (p. 9)」を参照してください。

サポートされているリージョンAWS General Reference の「AWS リージョンとエンドポイント」、または 「AWS リージョン表」でACM を利用できるリージョンを参照してください。

ほとんどの AWS リソースと同様に、ACM の証明書はリージョナルリソースです。同じ完全修飾ドメイン名 (FQDN) または1 つ以上の AWS リージョンの一連の FQDN について Elastic Load Balancing で証明書

Version 1.0-8

Page 15: AWS Certificate Manager - ユーザーガイド · 2018-07-13 · AWS Certificate Manager ユーザーガイド Table of Contents AWS Certificate Manager とは何ですか?.....

AWS Certificate Manager ユーザーガイド統合サービス

を使用するには、各リージョンに証明書をリクエスト、あるいはインポートする必要があります。ACM が提供する証明書においては、これは、各リージョンごとに証明書の各ドメイン名を取得する必要があることを意味します。リージョン間で証明書をコピーすることはできません。

Amazon CloudFront で ACM 証明書を使用するには、米国東部(バージニア北部) リージョンで証明書をリクエストまたはインポートする必要があります。CloudFront ディストリビューションに関連づけられたこのリージョンの ACM 証明書は、このディストリビューションに設定されたすべての地域に分配されます。

AWS Certificate Manager に統合されるサービスAWS Certificate Manager はさまざまな AWS サービスをサポートしています。ACM 証明書またはプライベート ACM PCA 証明書を AWS ベースのウェブサイトとアプリケーションに直接インストールすることはできません。次のサービスの 1 つを使用する必要があります。

Elastic Load Balancing

Elastic Load Balancing は、アプリケーションに着信するトラフィックを複数の Amazon EC2 インスタンスに自動的に分散します。Elastic Load Balancing は問題のあるインスタンスを検出し、その問題のあるインスタンスが復旧するまで、自動的にトラフィック経路を正常なインスタンスに変更します。Elastic Load Balancing は、着信トラフィックに応じて、自動的にそのリクエスト処理能力を拡張します。ロードバランシングの詳細については、Elastic Load Balancing ユーザーガイド. を参照してください。

通常の場合、SSL/TLS 経由で安全なコンテンツを供給するために、ロードバランサーまたはバックエンド Amazon EC2 インスタンスのどちらかに SSL/TLS 証明書がインストールされていることがロードバランサーより要求されます。ACM は Elastic Load Balancing と統合され、ロードバランサーにACM 証明書をデプロイします。詳細については、「Application Load Balancer の作成」を参照してください。

Amazon CloudFront

Amazon CloudFront は、エッジロケーションのワールドワイドネットワークからコンテンツを配信することで、動的および静的なウェブコンテンツをエンドユーザーに高速で配信できるウェブサービスです。エンドユーザーが CloudFront を通じて提供しているコンテンツを要求すると、ユーザーは最も遅延が少ないエッジロケーションにルーティングされます。これにより、可能な限り最良のパフォーマンスでコンテンツが配信されます。コンテンツがこのエッジロケーションに現在存在する場合、CloudFront はコンテンツを直ちに配信します。コンテンツがこのエッジロケーションに現在存在しない場合、CloudFront は最終的なコンテンツソースとして識別する Amazon S3 バケットまたはウェブサーバーからそのコンテンツを取得します。CloudFront の詳細については、AmazonCloudFront 開発者ガイド を参照してください。

SSL/TLS 経由で安全なコンテンツを供給するために、CloudFront ディストリビューションまたはバックエンドコンテンツソースのどちらかに SSL/TLS 証明書がインストールされていることがCloudFront より要求されます。ACM は CloudFront に統合され、CloudFront ディストリビューションに ACM 証明書をデプロイします。詳細については、「SSL/TLS の証明書を取得する」を参照してください。

Note

CloudFront で ACM 証明書を使用するには、米国東部(バージニア北部) リージョンで証明書をリクエストまたはインポートする必要があります。

AWS Elastic Beanstalk

Elastic Beanstalk は、アプリケーションを実行するインフラストラクチャに関わらず、AWS クラウドでのアプリケーションのデプロイと管理を可能にします。AWS Elastic Beanstalk は管理の複雑性を軽減します。アプリケーションをアップロードするだけで、Elastic Beanstalk が自動的に容量のプ

Version 1.0-9

Page 16: AWS Certificate Manager - ユーザーガイド · 2018-07-13 · AWS Certificate Manager ユーザーガイド Table of Contents AWS Certificate Manager とは何ですか?.....

AWS Certificate Manager ユーザーガイドサイトシールおよびトラストロゴ

ロビジョニング、負荷分散、拡張、およびヘルスモニタリングといった詳細を処理します。ElasticBeanstalk は、ロードバランサーの作成に Elastic Load Balancing サービスを使用します。ElasticBeanstalk の詳細については、AWS Elastic Beanstalk 開発者ガイド を参照してください。

証明書を選択するには、Elastic Beanstalk コンソールでアプリケーションのロードバランサーを設定する必要があります。詳細については、「HTTPS を復号するよう Elastic Beanstalk 環境のロードバランサーを設定する」を参照してください。

Amazon API Gateway

モバイルデバイスの増加と IoT (モノのインターネット) の成長とともに、データにアクセスしたり、AWS 上のバックエンドシステムとやり取りしたりするために API を作成するケースがますます増えてきています。API Gateway を利用すると、API を発行、管理、監視、保護できます。API をAPI Gateway にデプロイした後、カスタムドメイン名を設定すると、API に簡単にアクセスできます。カスタムドメイン名を設定するには、SSL/TLS 証明書を提供する必要があります。証明書を生成またはインポートするには、ACM を使用できます。

AWS CloudFormation

AWS CloudFormation は、Amazon Web Services のリソースをモデル化して設定するのに役立ちます。Elastic Load Balancing や API Gateway など、使用する AWS リソースを記述するテンプレートを作成します。次に、AWS CloudFormation はプロビジョニングとそのためのリソースの設定を行います。AWS リソースを個別に作成、設計して、それぞれの依存関係を考える必要はありません。AWSCloudFormation がすべてを処理します。ACM 証明書はテンプレートリソースとして含まれています。つまり、AWS CloudFormation は AWS サービスで使用できる ACM 証明書を要求して、安全な接続を可能にします。詳細については「AWS::CertificateManager::Certificate」を参照してください。さらに、ACM 証明書は、AWS CloudFormation で設定できる AWS リソースの多くに含まれています。

Note

AWS CloudFormation で ACM 証明書を作成すると、AWS CloudFormation スタックはCREATE_IN_PROGRESS 状態のままになります。それ以上のスタック操作は、証明書検証E メールの指示に従うまで延期されます。詳細については、「スタックの作成、更新、または削除オペレーションの際、リソースが安定しない」を参照してください。

サイトシールおよびトラストロゴAmazon はサイトシールを提供せず、登録商標の 1 つとして使用することを許可していません。

• AWS Certificate Manager (ACM) は、ウェブサイトで使用できる安全なサイトシールを提供していません。サイトシールを使用する場合は、サードパーティーベンダーから入手できます。ウェブサイトやビジネスプラクティスのセキュリティを評価し、アサートするベンダーを選ぶことをお勧めします。

• Amazon は、その登録商標またはロゴを証明書バッジ、サイトシール、またはトラストロゴとして使用することは許可していません。このタイプのシールとバッジは、ACM サービスを使用しないサイトにコピーすることができますし、誤った口実の下で信頼を確立するために不適切に使用することもできます。お客様と Amazon の評判を守るために、登録商標とロゴをこのように使用することは許可していません。

制限次の AWS Certificate Manager (ACM) の制限は、各 AWS リージョンおよび各 AWS アカウントに適用されます。制限の引き上げをリクエストするには、AWS サポート センターにケースを作成します。新しいAWS アカウントでは、ここで説明する制限よりも低い制限で開始する場合があります。

Version 1.0-10

Page 17: AWS Certificate Manager - ユーザーガイド · 2018-07-13 · AWS Certificate Manager ユーザーガイド Table of Contents AWS Certificate Manager とは何ですか?.....

AWS Certificate Manager ユーザーガイド1 年間の ACM 証明書の数 (過去 365 日間)

項目 デフォルトの制限

ACM 証明書の数 100

1 年間の ACM 証明書の数 (過去 365 日間) アカウントの制限の 2 倍

インポートされた証明書の数 100

1 年間にインポートされた証明書の数 (過去 365 日間)

アカウントの制限の 2 倍

ACM 証明書ごとのドメイン名の数 10

プライベート CA の数 10

CA あたりのプライベート証明書の数 50,000 枚の

トピック• 1 年間の ACM 証明書の数 (過去 365 日間) (p. 11)• ACM 証明書ごとのドメイン名の数 (p. 11)• プライベート CA および証明書の数 (p. 11)

1 年間の ACM 証明書の数 (過去 365 日間)毎年、ACM 証明書の制限を最大 2 倍に増やすことをリクエストできます。たとえば、制限が 25 の場合は、年間で最大 50 の ACM 証明書をリクエストできます。50 の証明書をリクエストした場合は、その年のうちに 25 の証明書を削除して制限内に収まるようにする必要があります。この例で 25 を超える証明書が必要な場合は、AWS サポートセンターに連絡する必要があります。

Note

前述の表はアカウントが最大 100 の AWS 証明書を所有できることを示していますが、新しいACM アカウントでは最初は制限数が少ない場合があります。

ACM 証明書ごとのドメイン名の数ACM 証明書ごとのドメイン名数のデフォルトの制限は 10 です。お客様の制限はもっと大きいかもしれません。送信する最初のドメイン名は、証明書のサブジェクト共通名 (CN) として含まれます。すべての名前は、サブジェクト代替名拡張子に含まれています。

最大 100 のドメイン名をリクエストすることができます。制限の引き上げをリクエストするには、AWSサポート センターでケースを作成してください。ただし、E メール検証を使用する場合は、ケースを作成する前に、ドメイン名を追加するほど多くの管理作業が必要になる状況を理解してください。詳細については、「ドメイン検証 (p. 13)」を参照してください。

Note

ACM 証明書ごとのドメイン名の制限は、ACM が提供する証明書にのみ適用されます。この制限は、ACM にインポートする証明書には適用されません。以下のセクションは、ACM 証明書にのみ適用されます。

プライベート CA および証明書の数ACM は ACM PCA と統合されます。ACM コンソール、AWS CLI、または ACM API を使用して、既存のプライベート認証機関 (CA) からのプライベート証明書をリクエストできます。証明書は ACM 環境で管理

Version 1.0-11

Page 18: AWS Certificate Manager - ユーザーガイド · 2018-07-13 · AWS Certificate Manager ユーザーガイド Table of Contents AWS Certificate Manager とは何ですか?.....

AWS Certificate Manager ユーザーガイドベストプラクティス

され、ACM によって発行されたパブリック証明書と同じ制限が適用されます。詳細については、「プライベート証明書のリクエスト (p. 24)」を参照してください。スタンドアロンの ACM PCA サービスを使用してプライベート証明書を発行することもできます。詳細については「プライベート証明書の発行」を参照してください。10 のプライベート CA と 50,000 のプライベート証明書をそれぞれ作成できます。

ベストプラクティスベストプラクティスは、AWS Certificate Manager (AWS Certificate Manager) をより効果的に使用するのに役立つ推奨事項です。次のベストプラクティスは、現在の ACM クライアントの実際の経験に基づいています。

トピック• AWS CloudFormation (p. 12)• 証明書ピニング (p. 12)• ドメイン検証 (p. 13)• ドメイン名の追加または削除 (p. 13)• 証明書の透明性ログ記録のオプトアウト (p. 13)• AWS CloudTrail の有効化 (p. 14)

AWS CloudFormationAWS CloudFormation を使用すると、使用する AWS リソースを記述するテンプレートを作成することができます。その後 AWS CloudFormation は、それらのリソースをプロビジョニングして、設定します。AWS CloudFormation は、Elastic Load Balancing、Amazon CloudFront、Amazon API Gatewayなどの ACM でサポートされているリソースをプロビジョニングできます。詳細については、「AWSCertificate Manager に統合されるサービス (p. 9)」を参照してください。

AWS CloudFormation を使用して複数のテスト環境を迅速に作成および削除する場合は、環境ごとに個別の ACM 証明書を作成しないことをお勧めします。これを行うと、証明書の制限をすぐに使い切ってしまいます。詳細については、「制限 (p. 10)」を参照してください。代わりに、テストに使用しているすべてのドメイン名をカバーするワイルドカード証明書を作成します。たとえば、<version>.service.example.com などの、バージョン番号だけ異なるドメイン名に対して ACM証明書を繰り返し作成する場合は、代わりに <*>.service.example.com のワイルドカード証明書を 1つ作成します。AWS CloudFormation がテスト環境の作成に使用するテンプレートにワイルドカード証明書を含めます。

証明書ピニング証明書ピニング (SSL ピンニングとも呼ばれる) は、アプリケーションで、ホストに証明書階層ではなくX.509 証明書またはパブリックキーを直接関連付けることによって、リモートホストを検証するのに使用できるプロセスです。したがって、アプリケーションでは、ピニングを使用して SSL/TLS 証明書チェーンの検証をバイパスします。一般的な SSL 検証プロセスでは、ルート認証局 (CA) 証明書から下位 CA 証明書 (存在する場合) まで、証明書チェーン全体の署名をチェックします。また、階層の最下位にあるリモートホストの証明書もチェックします。その代わりに、アプリケーションは、証明書をピニングすることにより、リモートホストに、ルート証明書またはチェーン内の他のものではなく、その証明書のみが信頼できるということを伝えられます。リモートホストの証明書またはパブリックキーを開発中にアプリケーションに追加できます。または、最初にホストに接続する際にアプリケーションが証明書またはキーを追加することができます。

Warning

アプリケーションでは、ACM 証明書をピニングしないことをお勧めします。ACM は、ACM のAmazon が発行する証明書のマネージド型更新 (p. 40) を実行し、Amazon 発行の SSL/TLS 証

Version 1.0-12

Page 19: AWS Certificate Manager - ユーザーガイド · 2018-07-13 · AWS Certificate Manager ユーザーガイド Table of Contents AWS Certificate Manager とは何ですか?.....

AWS Certificate Manager ユーザーガイドドメイン検証

明書を有効期限が切れる前に自動的に更新します。証明書を更新するために、ACM は新しいパブリックキーとプライベートキーのペアを生成します。アプリケーションが ACM 証明書をピンし、証明書が新しいパブリックキーで正常に更新された場合、アプリケーションはドメインに接続できない可能性があります。

証明書をピンすることを決定した場合は、次のオプションを選択しても、アプリケーションのドメインへの接続が妨げられることはありません。

• 保持する証明書を ACM にインポートし、アプリケーションをインポートした証明書に固定化します。ACM はインポートした証明書を自動的に更新しようとはしません。

• アプリケーションを Amazon ルート証明書にピンします。

ドメイン検証Amazon 認証局 (CA) がサイトの証明書を発行する前に、AWS Certificate Manager (ACM) は、ユーザーがリクエストで指定したすべてのドメインを所有または制御していることを確認する必要があります。Eメールまたは DNS のいずれかを使用して検証を実行できます。詳細については、「E メールを使用したドメインの所有権の検証 (p. 27)」および「DNS を使用したドメインの所有権の検証 (p. 27)」を参照してください。

ドメイン名の追加または削除既存の ACM 証明書からドメイン名を追加または削除することはできません。代わりに、修正済みのドメイン名のリストから新しい証明書をリクエストする必要があります。たとえば、証明書に 5 つのドメイン名があり、さらに 4 つを追加する場合は、9 つのドメイン名すべてで新しい証明書をリクエストする必要があります。新しい証明書と同様に、元の証明書に対して事前に検証済みの名前を含むリクエスト内のすべてのドメイン名の所有権を検証する必要があります。

E メール検証を使用する場合、ドメインごとに最大で 8 件の検証 E メールメッセージが送信され、そのうち少なくとも 1 件を 72 時間以内に処理する必要があります。たとえば、5 つのドメイン名で証明書をリクエストすると、最大で 40 件の検証メッセージが送信され、そのうち少なくとも 5 件を 72 時間以内に処理する必要があります。証明書リクエストのドメイン名の数が増えると、E メールを使用してドメインの所有権を検証するために必要な作業も増えます。

代わりに DNS 検証を使用する場合は、検証する FQDN のデータベースに対して新しい DNS レコードを 1つ書き込む必要があります。ACM はレコードを送信してデータベースを作成し、後でそのデータベースに対してクエリを実行してレコードが追加されたかどうかを判断します。レコードの追加によって、お客様がドメインの所有者または管理者であることがアサートされます。前述の例では、5 つのドメイン名で証明書をリクエストした場合、5 つの DNS レコードを作成する必要があります。可能な場合は、DNS 検証を使用することをお勧めします。

証明書の透明性ログ記録のオプトアウトImportant

証明書の透明性のログ記録を無効にするために実行するアクションにかかわらず、証明書のバインド先のパブリックエンドポイントまたはプライベートエンドポイントにアクセスできるクライアントまたは個人によって、証明書が引き続きログに記録される場合があります。ただし、証明書には署名付き証明書タイムスタンプ (SCT) は含まれません。発行元の CA のみが、証明書にSCT を埋め込むことができます。

2018 年 4 月 30 日以降、Google Chrome は証明書の透明性ログに記録されていないパブリック SSL/TLS証明書の信頼を停止します。したがって、2018 年 4 月 24 日から Amazon CA は、すべての新しい証明書と更新を少なくとも 2 つのパブリックログに公開するようになります。証明書がログに記録されると、削除することはできません。詳細については、「証明書の透明性ログ記録 (p. 4)」を参照してください。

Version 1.0-13

Page 20: AWS Certificate Manager - ユーザーガイド · 2018-07-13 · AWS Certificate Manager ユーザーガイド Table of Contents AWS Certificate Manager とは何ですか?.....

AWS Certificate Manager ユーザーガイドAWS CloudTrail の有効化

ログ記録は、証明書をリクエストするとき、または証明書が更新されたときに自動的に実行されますが、オプトアウトすることもできます。その一般的な理由には、セキュリティとプライバシーに関する懸念があります。たとえば、内部ホストドメイン名のログ記録により、それ以外の場合には公開されない内部ネットワークについての情報が潜在的な攻撃者に提供されます。さらに、ログ記録により、新規または未リリース製品やウェブサイトの名前が漏洩する可能性があります。

証明書をリクエストするときに、透明性ログを出力しないようにするには、request-certificate AWS CLI コマンド、または RequestCertificate API の Options パラメータを使用します。

証明書が 2018 年 4 月 24 日より前に発行され、更新中にログに記録されないようにする場合は、update-certificate-options コマンド、または UpdateCertificateOptions API を呼び出してオプトアウトすることができます。

証明書がログに記録されると、ログから削除することはできません。その時点でオプトアウトしても効果はありません。証明書をリクエストしたときにログ記録を停止して、後でオプトインするように選択すると、証明書は更新されるまでログに記録されません。証明書をすぐにログに記録する場合は、新しい証明書を発行することをお勧めします。

Note

現在、コンソールを使用して透明性ログをオプトアウトまたはオプトインすることはできません。

次の例では、新しい証明書をリクエストするときに request-certificate コマンドを使用して証明書の透明性を無効にする方法を示しています。

aws acm request-certificate \--domain-name www.example.com \--validation-method DNS \--options CertificateTransparencyLoggingPreference=DISABLED \--idempotency-token 184627

上記のコマンドは、新しい証明書の ARN を出力します。

{ "CertificateArn": "arn:aws:acm:region:account:certificate/12345678-1234-1234-1234-123456789012"}

証明書がすでにある場合、証明書が更新されたときに記録されないようにするには、update-certificate-options コマンドを使用します。このコマンドは値を返しません。

aws acm update-certificate-options \--certificate-arn arn:aws:acm:region:account:\certificate/12345678-1234-1234-1234-123456789012 \--options CertificateTransparencyLoggingPreference=DISABLED

AWS CloudTrail の有効化ACM の使用を開始する前に、CloudTrail のログ記録を有効にします。CloudTrail では、アカウントのAWS API コールの履歴を取得して、AWS デプロイをモニタリングすることができます。これには AWSマネジメントコンソール、AWS SDK、AWS Command Line Interface、および高レベルの AWS のサービスを介して行われる API コールが含まれます。また、履歴では、ACM API を呼び出したユーザーとアカウント、呼び出し元のソース IP アドレス、および呼び出しの発生日時を特定できます。API を使用して CloudTrail をアプリケーションに統合したり、組織用の証跡作成を自動化したり、証跡の状態を確認したり、CloudTrail のログ記録のオン/オフを管理者が切り替える方法を制御したりすることもできます。詳細については、「証跡の作成」を参照してください。ACM アクションの証跡の例については、「AWSCloudTrail を使用する (p. 63)」を参照してください。

Version 1.0-14

Page 21: AWS Certificate Manager - ユーザーガイド · 2018-07-13 · AWS Certificate Manager ユーザーガイド Table of Contents AWS Certificate Manager とは何ですか?.....

AWS Certificate Manager ユーザーガイド料金表

AWS Certificate Manager の料金表AWS では、AWS Certificate Manager で管理する SSL/TLS 証明書について料金が発生しません。ウェブサイトあるいはアプリケーションを実行するために作成する AWS リソースのみに料金が発生します。最新の ACM の料金情報については、AWS ウェブサイトの AWS Certificate Manager サービス料金表 ページを参照してください。

Version 1.0-15

Page 22: AWS Certificate Manager - ユーザーガイド · 2018-07-13 · AWS Certificate Manager ユーザーガイド Table of Contents AWS Certificate Manager とは何ですか?.....

AWS Certificate Manager ユーザーガイドAWS および IAM のセットアップ

セットアップAWS Certificate Manager (ACM) を使用すると、AWS ベースのウェブサイトとアプリケーションに SSL/TLS 証明書をプロビジョニング、管理できます。ACM を使用して、証明書を作成またはインポートしてから管理します。ウェブサイトまたはアプリケーションに証明書をデプロイするには、他の AWS サービスを使用する必要があります。ACM に統合されるサービスについての詳細は、「AWS Certificate Managerに統合されるサービス (p. 9)」を参照してください。次のトピックでは、ACM を使用する前に実行する必要のある手順について説明します。

Note

ACM が提供する証明書の使用に加えて、ACM に証明書をインポートすることもできます。詳細については、「証明書のインポート (p. 46)」を参照してください。

トピック• AWS および IAM のセットアップ (p. 16)• ドメイン名を登録する (p. 17)• ウェブサイトまたはアプリケーションの設定 (p. 17)• (オプション) ドメインの E メールを設定する (p. 18)• (オプション) CAA レコードの設定 (p. 19)

AWS および IAM のセットアップACM を使用する前に、Amazon Web Services にサインアップする必要があります。ベストプラクティスとして、IAM ユーザーを作成して、ユーザーが実行できるアクションを制限することもできます。

AWS へのサインアップすでに Amazon Web Services (AWS) カスタマーの場合、ACM を使用できるようにサインアップする必要があります。アカウントでは利用可能なすべてのサービスに自動的にサインアップしますが、実際に使用したサービスに対してのみ料金が発生します。また、AWS の新規のお客様の場合、無料で使い始めることができます。詳細については、「AWS 無料利用枠」を参照してください。

AWS にサインアップしてアカウントを作成するには

1. https://aws.amazon.com/ にアクセスして [サインアップ] を選択します。2. 画面上の指示に従ってください。

Note

サインアップ手順の一部には、自動電話受信および電話キーパッドに指定された PIN を入力することが含まれます。無料利用枠でサインアップしている場合でも、クレジットカード番号を提供する必要があります。

IAM ユーザーを作成するすべての AWS アカウントに、ルートユーザー 認証情報 (つまりアカウント所有者の認証情報) があります。これらの認証情報は、アカウント内のすべてのリソースへのフルアクセスを許可します。ルートユー

Version 1.0-16

Page 23: AWS Certificate Manager - ユーザーガイド · 2018-07-13 · AWS Certificate Manager ユーザーガイド Table of Contents AWS Certificate Manager とは何ですか?.....

AWS Certificate Manager ユーザーガイドドメイン名を登録する

ザー 認証情報のアクセス許可は制限できないため、ルートユーザー アクセスキーを削除することをお勧めします。次に、AWS との毎日のやり取りのための AWS Identity and Access Management (IAM) ユーザー認証情報を作成します。詳細については、『IAM ユーザーガイド』の「AWS アカウント (ルート) のアクセスキーをロックする」を参照してください。

Note

AWS サポートプランの変更やアカウントの削除などの特定のタスクには、AWS アカウントのルートユーザー アクセスが必要になる場合があります。そのような場合には、E メールとパスワードで AWS マネジメントコンソール にサインインしてください。「E メールとパスワード(ルートユーザー)」を参照してください。

ルートユーザー アクセスを必要とするタスクのリストについては、「AWS アカウントのルートユーザーが必要な AWS のタスク」を参照してください。

IAM では、AWS アカウントでのユーザー向けの AWS サービスとリソースへのアクセスを安全に制御できます。たとえば、管理者レベルのアクセス許可が必要な場合、IAM ユーザーを作成し、そのユーザーのフルアクセスを許可してから、認証情報を使用して AWS を操作できます。後でアクセス許可の変更または取り消しが必要になったら、その IAM ユーザーに関連付けられたポリシーを削除または変更できます。

また、AWS アカウントへのアクセスを必要とするユーザーが複数いる場合、各ユーザーに一意の認証情報を作成し、誰がどのリソースにアクセスできるかを定義できます。認証情報を共有する必要はありません。たとえば、AWS アカウントの内のリソースへの読み取り専用アクセスを持つ IAM ユーザーを作成し、読み取りアクセスを必要とするユーザーに、その認証情報を配布できます。

また、ACM には次の 2 つの AWS 管理ポリシーが用意されており、使用することができます。

• AWSCertificateManagerFullAccess• AWSCertificateManagerReadOnly

Note

IAM ユーザーに関連付けられているアクティビティやコストは、AWS アカウントの所有者に請求されます。

ドメイン名を登録する完全修飾ドメイン名 (FQDN) は、.com や .org などのトップレベルのドメイン拡張子を末尾に付けた、組織や個人のインターネット上の独自の名前です。登録したドメイン名をまだ保持していない場合には、Amazon Route 53 やそのほか多くの商業レジストラからドメイン名を登録できます。一般的には、レジストラのウェブサイトからドメイン名をリクエストします。レジストラは WHOIS にクエリを行って、FQDN が使用可能であるかを判断します。使用可能な場合、レジストラは通常、ドメイン拡張子が異なる関連する名を一覧表示して、使用できる名から任意のものを購入できる機会を提供します。登録の有効期限は通常、1~2 年間となり、期限内に更新する必要があります。

Amazon Route 53 でドメイン名を登録する方法についての詳細は、『Amazon Route 53 開発者ガイド』の「Amazon Route 53 を使用したドメイン名の登録」を参照してください。

ウェブサイトまたはアプリケーションの設定Amazon EC2 Linux または Windows インスタンスにウェブサイトをインストールできます。LinuxAmazon EC2 インスタンスの詳細については、「Linux 用 Amazon Elastic Compute Cloud ユーザーガイ

Version 1.0-17

Page 24: AWS Certificate Manager - ユーザーガイド · 2018-07-13 · AWS Certificate Manager ユーザーガイド Table of Contents AWS Certificate Manager とは何ですか?.....

AWS Certificate Manager ユーザーガイドLinux クイックスタート

ド」を参照してください。Windows Amazon EC2 インスタンスの詳細については、「Microsoft Windows用 Amazon Elastic Compute Cloud ユーザーガイド」を参照してください。

Amazon EC2 インスタンスにウェブサイトをインストールしても、そのインスタンスに ACM 証明書を直接デプロイすることはできません。代わりに、ACM と統合されたサービスの 1 つを使用して証明書をデプロイする必要があります。詳細については、「AWS Certificate Manager に統合されるサービス (p. 9)」を参照してください。

Windows または Linux のいずれかでウェブサイトをすばやく起動し実行するには、以下のトピックを参照してください。

トピック• Linux クイックスタート (p. 18)• Windows クイックスタート (p. 18)

Linux クイックスタートLinux インスタンスでウェブサイトまたはアプリケーションを作成するには、Linux の Amazon マシンイメージ (AMI) を選択し、Apache ウェブサーバーをインストールします。詳細については、「チュートリアル: Amazon Linux への LAMP ウェブサーバーのインストール」を Linux インスタンス用 Amazon EC2ユーザーガイド で参照してください。

Windows クイックスタートウェブサイトやアプリケーションをインストールできる Microsoft Windows サーバーを取得するには、Microsoft Internet Information Services (IIS) ウェブサーバーにバンドルされる Windows Server AMI を選択します。次に、デフォルトのウェブサイトを使用するか、新しいウェブサイトを作成します。WIMPサーバーを Amazon EC2 インスタンスにインストールすることもできます。詳細については、Windowsインスタンスの Amazon EC2 ユーザーガイドの「チュートリアル: Windows Server を実行する AmazonEC2 インスタンスに WIMP Server をインストールする」を参照してください。

(オプション) ドメインの E メールを設定するNote

次の手順は、E メール検証を使用して、お客様が証明書リクエストに指定された FQDN (完全修飾ドメイン名) の所有者または管理者であることをアサートする場合にのみ必要になります。ACMが証明書を発行するには、お客様は所有権または管理権を検証する必要があります。E メール検証または DNS 検証のいずれかを使用できます。E メール検証の詳細については、「E メールを使用したドメインの所有権の検証 (p. 31)」を参照してください。DNS 設定を編集できる場合は、E メール検証ではなく DNS ドメイン検証を使用することをお勧めします。DNS 検証によって、そのドメイン名の E メールを設定する必要がなくなります。DNS 検証の詳細については、「DNS を使用したドメインの所有権の検証 (p. 27)」を参照してください。

レジストラのウェブサイトを使用して連絡先アドレスをドメイン名に関連付けます。レジストラはWHOIS データベースに連絡先 E メールアドレスを追加し、DNS サーバーのメールエクスチェンジャ(MX) レコードに 1 つ以上のメールサーバーを追加します。E メール検証の使用を選択した場合、ACMは、連絡先アドレスと MX レコードから構成される一般的な管理者アドレス 5 つに E メールを送信します。ACM は、新しい証明書を作成、証明書の更新あるいは新しい検証 E メールをリクエストする度に最大 8 件の検証 E メールメッセージを送信します。検証 E メールには、ドメイン所有者または指定した担当者が ACM 証明書を承認することを確認するための手順が説明されています。詳細については、「E メールを使用したドメインの所有権の検証 (p. 31)」を参照してください。検証 E メールで問題が発生した場合は、「E メールの問題のトラブルシューティング (p. 97)」を参照してください。

Version 1.0-18

Page 25: AWS Certificate Manager - ユーザーガイド · 2018-07-13 · AWS Certificate Manager ユーザーガイド Table of Contents AWS Certificate Manager とは何ですか?.....

AWS Certificate Manager ユーザーガイドWHOIS データベース

WHOIS データベースWHOIS データベースにはドメインの連絡先情報があります。本人確認を検証するために ACMは、WHOIS の次の 3 つのアドレスに E メールを送信します。連絡先情報がパブリックであるか、または難読化されたアドレスに送信される E メールが実際の E メールアドレスに転送されることを確認してください。

• ドメインの登録者• テクニカル担当者• 管理者の連絡先

MX レコードドメインを登録すると、レジストラはメールエクスチェンジャ (MX) レコードを Domain Name System(DNS) サーバーに送信します。MX レコードは、どのサーバーがドメインに E メールを受け入れるかを示します。レコードには完全修飾ドメイン名 (FQDN) が含まれています。apexドメインまたはサブドメインに証明書をリクエストすることができます。

たとえば、コンソールを使用して abc.xyz.example.com に証明書をリクエストした場合、ACM はまずそのサブドメインの MX レコードを見つけようとします。レコードが見つからない場合、ACM はxyz.example.com に関する MX ルックアップを実行します。レコードが見つからない場合、ACM はexample.com に関する MX ルックアップを実行します。レコードが見つからない場合または MX レコードが存在しない場合、ACM は証明書がリクエストされた元のドメイン (この例では abc.xyz.example.com) を選択します。ACM はその後、ドメインまたはサブドメインの次の 5 つの一般的なシステム管理アドレスにE メールを送信します。

• administrator@your_domain_name

• hostmaster@your_domain_name

• postmaster@your_domain_name

• webmaster@your_domain_name

• admin@your_domain_name

RequestCertificate API オペレーションまたは request-certificate AWS CLI コマンドを使用した場合、AWSは MX ルックアップを実行しません。代わりに、RequestCertificate にドメイン名と検証ドメインの名前の両方を指定することができます。オプションの ValidationDomain パラメーターを指定した場合、AWS は、ドメインではなく、指定された場所に上記の 5 つの E メールメッセージを送信します。

ACM は、コンソール、API、AWS CLI のどれを使用している場合でも、常に検証 E メールを上記の 5 つの一般的なアドレスに送信します。ただし、AWS は、コンソールを使用して証明書をリクエストした場合にのみ MX ルックアップを実行します。

検証 E メールが届かない場合は、考えられる原因と解決方法について、「検証 E メールが受信されない (p. 98)」を参照してください。

(オプション) CAA レコードの設定オプションで CAA (Certification Authority Authorization) DNS レコードを設定して、AWS CertificateManager (ACM) が証明書を発行することを許可されるドメインまたはサブドメインを指定することができます。ACM は、ドメインを検証した後、CAA レコードをチェックして、証明書を発行できるかどうかを確認します。CAA チェックを実行しない場合は、ドメインの CAA レコードを設定しないか、レコードを空白のままにすることができます。CAA には以下のフィールドがあります。

Version 1.0-19

Page 26: AWS Certificate Manager - ユーザーガイド · 2018-07-13 · AWS Certificate Manager ユーザーガイド Table of Contents AWS Certificate Manager とは何ですか?.....

AWS Certificate Manager ユーザーガイド(オプション) CAA の設定

flags

ACM で [tag] フィールドの値がサポートされるかどうかを指定します。この値は 0 に設定します。tag

[tag] フィールドの値は次のいずれかになります。現時点では [iodef] フィールドは無視されます。問題

[value] フィールドに指定した ACM CA が、ドメインまたはサブドメインの証明書の発行を許可されていることを示します。

issuewild

[value] フィールドに指定した ACM CA が、ドメインまたはサブドメインのワイルドカード証明書の発行を許可されていることを示します。ワイルドカード証明書はドメインまたはサブドメイン、およびそのすべてのサブドメインに適用されます。

このフィールドの値は、[tag] フィールドの値によって異なります。この値は、引用符 ("") で囲む必要があります。[tag] が [issue] の場合

[value] フィールドには CA ドメイン名を指定します。このフィールドには、Amazon CA 以外のCA の名前を指定することができます。ただし、次の 4 つの Amazon CA のいずれかを指定するCAA レコードがない場合、ACM は、ドメインまたはサブドメインに証明書を発行することはできません。• amazon.com• amazontrust.com• awstrust.com• amazonaws.com

[value] フィールドにセミコロン (;) を指定して、ドメインまたはサブドメインの証明書を発行することを許可された CA はないことを示すことができます。このフィールドは、特定のドメインに対する証明書の発行が不要になった時点で使用します。

[tag] が [issuewild] の場合

[value] フィールドは、値がワイルドカード証明書に適用されること以外は [tag] が [issue] の場合と同じです。

Example CAA レコードの例

次の例では、ドメイン名が先頭にあり、その後にレコードタイプ (CAA) が続いています。[flags] フィールドは常に 0 です。[tags] フィールドは、[issue] または [issuewild] にすることができます。フィールドが [issue] のときに、[value] フィールドに CA サーバーのドメイン名を入力した場合、その CAA レコードは、リクエストされた証明書のサーバーによる発行を許可したことを示します。[value] フィールドにセミコロン ";" を入力した場合、その CAA レコードは、証明書の発行を許可された CA はないことを示します。CAA レコードの設定は、DNS プロバイダーによって異なります。

Domain Record type Flags Tag Value

example.com. CAA 0 issue "SomeCA.com"example.com. CAA 0 issue "amazon.com"example.com. CAA 0 issue "amazontrust.com"example.com. CAA 0 issue "awstrust.com"example.com. CAA 0 issue "amazonaws.com"example.com CAA 0 issue ";"

Version 1.0-20

Page 27: AWS Certificate Manager - ユーザーガイド · 2018-07-13 · AWS Certificate Manager ユーザーガイド Table of Contents AWS Certificate Manager とは何ですか?.....

AWS Certificate Manager ユーザーガイド(オプション) CAA の設定

DNS レコードを追加または変更する方法の詳細については、DNS プロバイダーに確認してください。Route 53 は CAA レコードをサポートしています。Route 53 が DNS プロバイダーの場合のレコードの作成の詳細については「CAA 形式」を参照してください。

Version 1.0-21

Page 28: AWS Certificate Manager - ユーザーガイド · 2018-07-13 · AWS Certificate Manager ユーザーガイド Table of Contents AWS Certificate Manager とは何ですか?.....

AWS Certificate Manager ユーザーガイドパブリック証明書のリクエスト

開始方法AWS マネジメントコンソールにサインインし、https://console.aws.amazon.com/acm/home で ACM コンソールを開きます。入門者向けページが表示される場合は、[Get Started Now] を選択します。それ以外の場合は、左側のナビゲーションペインの [Certificate Manager] または [プライベート CA] を選択します。

ACM はインターネットまたは内部ネットワークで安全な通信を可能にするために使用できる SSL/TLS 証明書をサポートしています。ACM によって発行されたパブリックに信頼できる証明書をリクエストすること、または証明書をインポートすることができます。インポートされた証明書は、サードパーティーによって発行され、パブリックに信頼されて、自己署名することができます。ACM コンソールを使用して、組織内のプライベート認証機関 (CA) によって発行されるプライベート証明書をリクエストすることもできます。プライベート証明書は、デフォルトでは信頼されていません。管理者はクライアントの信頼ストアにインストールする必要があります。

このドキュメントでは、主にパブリック ACM およびサードパーティーの証明書について説明します。また、既存のプライベート CA を使用してプライベート証明書を発行する方法についても説明します。プライベート CA の作成と使用の詳細については、AWS Certificate Manager Private Certificate Authority を参照してください。

トピック• パブリック証明書のリクエスト (p. 22)• プライベート証明書のリクエスト (p. 24)• プライベート証明書のエクスポート (p. 26)• DNS を使用したドメインの所有権の検証 (p. 27)• E メールを使用したドメインの所有権の検証 (p. 31)• ACM によって管理される証明書の一覧表示 (p. 34)• ACM 証明書の説明 (p. 36)• ACM によって管理される証明書の削除 (p. 38)• ACM 証明書のインストール (p. 38)• 検証 E メールの再送信 (オプション) (p. 38)

パブリック証明書のリクエスト以下のセクションでは、ACM コンソールまたは AWS CLI を使用してパブリック ACM 証明書をリクエストする方法を説明します。証明書をリクエストする際に問題が発生する場合は、「証明書リクエストの問題のトラブルシューティング (p. 101)」を参照してください。.IO ドメインの証明書をリクエストする際に問題が発生する場合は、「.io ドメインの問題のトラブルシューティング (p. 104)」を参照してください。プライベート認証機関 (CA) を使用してプライベート証明書を要求するには、プライベート証明書のリクエスト (p. 24) を参照してください。

トピック• コンソールを使用してパブリック証明書をリクエストする (p. 23)• CLI を使用してパブリック証明書をリクエストする (p. 24)

Version 1.0-22

Page 29: AWS Certificate Manager - ユーザーガイド · 2018-07-13 · AWS Certificate Manager ユーザーガイド Table of Contents AWS Certificate Manager とは何ですか?.....

AWS Certificate Manager ユーザーガイドコンソールを使用してパブリック証明書をリクエストする

コンソールを使用してパブリック証明書をリクエストするACM パブリック証明書をリクエストするには (コンソール)

1. AWS マネジメントコンソールにサインインし、https://console.aws.amazon.com/acm/home で ACMコンソールを開きます。

2. [Request a certificate] ページで、ドメイン名を入力します。www.example.com のような完全修飾ドメイン名 (FQDN)、または example.com のようなネイキッドドメインあるいは apex ドメイン名を使用できます。また、同じドメインで複数のサイト名を保護するために、最左位置にアスタリスク (*)をワイルドカードとして使用できます。たとえば、*.example.com は、corp.example.com および images.example.com を保護します。ワイルドカード名は、ACM 証明書の [件名] フィールドと[サブジェクト代替名] 拡張子に表示されます。

Note

ワイルドカード証明書をリクエストする場合、アスタリスク (*) はドメイン名の左側に付ける必要があり、1 つのサブドメインレベルのみを保護できます。たとえば、*.example.com は、login.example.com と test.example.com を保護しますが、test.login.example.com は保護しません。また、*.example.comは、example.com のサブドメインのみを保護し、ネイキッドドメインまたは apex ドメイン(example.com) は保護しないことに注意してください。両方を保護するには、次のステップを参照してください。

3. ACM 証明書にドメイン名を追加するには、[Add more names] (名前を追加) を選択し、表示されたテキストボックスに別のドメイン名を入力します。これは、ネイキッドドメインまたは apex ドメイン(たとえば、example.com) の両方とそのサブドメイン (たとえば、*.example.com) を保護するために役立ちます。

4. 有効なドメイン名を入力したら、[Review and Request] または [Cancel] をクリックして終了します。Important

オプトアウトを選択しない限り、証明書は自動的に少なくとも 2 つのパブリック証明書の透明性データベースに記録されます。現在、コンソールを使用してオプトアウトすることはできません。AWS CLI または API を使用する必要があります。詳細については、「証明書の透明性ログ記録のオプトアウト (p. 13)」を参照してください。透明性ログの一般的な情報については、証明書の透明性ログ記録 (p. 4) を参照してください。

5. リクエストのために指定した情報が確認ページで正しく表示されたら、[Confirm and request] を選択します。次のページは、リクエストのステータスが検証保留中であることを示しています。

ACM は証明書を発行する前に、お客様が証明書リクエストのドメイン名の所有者または管理者であることを検証します。E メール検証または DNS 検証のいずれかを使用できます。E メール検証を選択した場合、ACM は WHOIS データベースに登録されている 3 つの連絡先アドレスとドメイン名ごとに 5 つの一般的なシステム管理アドレスに検証 E メールを送信します。お客様または承認された担当者は、これらの E メールメッセージのいずれかに返信する必要があります。詳細については、「Eメールを使用したドメインの所有権の検証 (p. 31)」を参照してください。DNS 検証を使用する場合は、ACM から提供される CNAME レコードを DNS 設定に書き込むだけです。DNS 検証の詳細については、「DNS を使用したドメインの所有権の検証 (p. 27)」を参照してください。

Version 1.0-23

Page 30: AWS Certificate Manager - ユーザーガイド · 2018-07-13 · AWS Certificate Manager ユーザーガイド Table of Contents AWS Certificate Manager とは何ですか?.....

AWS Certificate Manager ユーザーガイドCLI を使用してパブリック証明書をリクエストする

Note

DNS 設定を編集できる場合は、E メール検証ではなく DNS ドメイン検証を使用することをお勧めします。DNS 検証には E メール検証と比べていくつかの利点があります。「DNS を使用したドメインの所有権の検証 (p. 27)」を参照してください。

CLI を使用してパブリック証明書をリクエストするrequest-certificate コマンドを使用して、コマンドラインに新しいパブリック ACM 証明書をリクエストします。

aws acm request-certificate \--domain-name www.example.com \--validation-method DNS \--idempotency-token 1234 \--options CertificateTransparencyLoggingPreference=DISABLED

このコマンドは、新しいプライベート証明書の Amazon リソースネーム (ARN) を出力します。

{ "CertificateArn": "arn:aws:acm:region:account:certificate/12345678-1234-1234-1234-123456789012"}

プライベート証明書のリクエスト以下のセクションでは、ACM コンソールまたは ACM PCA CLI を使用して既存のプライベート認証機関(CA) からプライベート証明書をリクエストする方法について説明します。プライベート CA 作成の詳細については、プライベート認証機関 (CA) の作成を参照してください。

ACM によって発行されたプライベート証明書は、ACM によって発行されたパブリック証明書に似ています。証明書には次の制限があります。

• DNS サブジェクト名を使用する必要があります。詳細については、「ドメイン名 (p. 4)」を参照してください。

• 2048 ビットの RSA プライベートキーのみを使用できます。• 署名アルゴリズムは SHA256WithRSAEncryption のみサポートされます。• 各証明書は 13 か月間有効です。• プライベート CA はアクティブであることが必要で、CA プライベートキーのタイプは RSA 2048 また

は RSA 4096 である必要があります。• ACM は可能な場合、11 か月後に証明書を自動的に更新します。

ACM PCA によって発行されたプライベート証明書には、前述の制限はありません。プライベート CA を使用して、任意のサブジェクト名のある証明書を作成し、任意のサポートされているプライベートキーアルゴリズム、任意の署名アルゴリズム、および任意の有効期間を使用することができます。これは、特定の名前でサブジェクトを識別しなければならない場合や、証明書を簡単に更新できない場合に有益です。詳細については「プライベート証明書の発行」を参照してください。

トピック• コンソールを使用したプライベート証明書のリクエスト (p. 25)

Version 1.0-24

Page 31: AWS Certificate Manager - ユーザーガイド · 2018-07-13 · AWS Certificate Manager ユーザーガイド Table of Contents AWS Certificate Manager とは何ですか?.....

AWS Certificate Manager ユーザーガイドコンソールを使用したプライベート証明書のリクエスト

• CLI を使用したプライベート証明書のリクエスト (p. 25)

コンソールを使用したプライベート証明書のリクエスト1. AWS マネジメントコンソールにサインインし、https://console.aws.amazon.com/acm/home で ACM

コンソールを開きます。2. [プライベート証明書のリクエスト] を選択して、[証明書のリクエスト] を選択します。3. ドロップダウンリストからプライベート CA を選択します。CA に関する情報がリストの下に入力さ

れ、必要な CA を選択したことを確認するのに役立ちます。

Note

ACM コンソールに、ECDSA キーのあるプライベート CA について、[使用不可] が表示されます。

4. [次へ] を選択します。5. [証明書のリクエスト] ページで、ドメイン名を入力します。www.example.com のような完全修飾ド

メイン名 (FQDN)、または example.com のようなネイキッドドメインあるいは apex ドメイン名を使用できます。また、同じドメインで複数のサイト名を保護するために、最左位置にアスタリスク (*)をワイルドカードとして使用できます。たとえば、*.example.com は、corp.example.com および images.example.com を保護します。ワイルドカード名は、ACM 証明書の [件名] フィールドと[サブジェクト代替名] 拡張子に表示されます。

Note

ワイルドカード証明書をリクエストする場合、アスタリスク (*) はドメイン名の左側に付ける必要があり、1 つのサブドメインレベルのみを保護できます。たとえば、*.example.com は、login.example.com と test.example.com を保護しますが、test.login.example.com は保護しません。また、*.example.comは、example.com のサブドメインのみを保護し、ネイキッドドメインまたは apex ドメイン(example.com) は保護しないことに注意してください。両方を保護するには、次のステップを参照してください。

6. ACM 証明書にドメイン名を追加するには、[Add more names] (名前を追加) を選択し、表示されたテキストボックスに別のドメイン名を入力します。これは、ネイキッドドメインまたは apex ドメイン(たとえば、example.com) の両方とそのサブドメイン (たとえば、*.example.com) を保護するために役立ちます。

7. 有効な名前を入力したら、[確認とリクエスト] または [キャンセル] をクリックして終了します。8. 確認ページを確認してすべてが正しいことを確認し、[確定とリクエスト] を選択します。

Note

プライベート証明書を検証する必要はありません。

CLI を使用したプライベート証明書のリクエストACM で request-certificate コマンドを使用してプライベート証明書をリクエストします。

aws acm request-certificate \--domain-name www.example.com \--idempotency-token 12563 \--options CertificateTransparencyLoggingPreference=DISABLED \--certificate-authority-arn arn:aws:acm-pca:region:account:\certificate-authority/12345678-1`234-1234-1234-123456789012

Version 1.0-25

Page 32: AWS Certificate Manager - ユーザーガイド · 2018-07-13 · AWS Certificate Manager ユーザーガイド Table of Contents AWS Certificate Manager とは何ですか?.....

AWS Certificate Manager ユーザーガイドプライベート証明書のエクスポート

このコマンドは、新しいプライベート証明書の Amazon リソースネーム (ARN) を出力します。

{ "CertificateArn": "arn:aws:acm:region:account:certificate/12345678-1234-1234-1234-123456789012"}

プライベート証明書のエクスポートプライベート証明書をエクスポートしてどこでも使用できます。証明書、証明書チェーン、および暗号化されたプライベートキーをエクスポートできます。プライベートキーは安全に保管する必要があります。キーは、証明書に埋め込まれているプライベートキーに関連付けられています。

プライベートキーは、2048 ビットの RSA キーです。復号化には、次の OpenSSL コマンドを使用できます。プロンプトが表示されたらパスフレーズを入力します。

openssl rsa -in encrypted_key.pem -out decrypted_key.pem

トピック• コンソールを使用したプライベート証明書のエクスポート (p. 26)• CLI を使用したプライベート証明書のエクスポート (p. 26)

コンソールを使用したプライベート証明書のエクスポート1. AWS マネジメントコンソールにサインインし、https://console.aws.amazon.com/acm/home で ACM

コンソールを開きます。2. [Certificate Manager] を選択します。3. エクスポートする証明書を選択します。4. [アクション] メニューで、[エクスポート (プライベート認証機関のみ)] を選択します。5. プライベートキーのパスフレーズを入力して確定します。6. [PEM エンコードの生成] を選択します。7. 証明書、証明書チェーン、および暗号化されたキーをメモリにコピーするか、それぞれの [Export to a

file] (ファイルにエクスポート) を選択します。8. [Done] を選択します。

CLI を使用したプライベート証明書のエクスポートexport-certificate コマンドを使用して、プライベート証明書とプライベートキーをエクスポートします。さらにセキュリティを強化するために、このコマンドを使用する前にパスフレーズをファイルに安全に保存してください。これにより、パスフレーズがコマンド履歴に格納されるのを防ぎ、入力時に他のユーザがパスフレーズを見るのを防ぎます。

aws acm export-certificate --certificate-arn \arn:aws:acm:region:account:\certificate/12345678-1234-1234-1234-123456789012 \--passphrase --file://path-to-passphrase-file

Version 1.0-26

Page 33: AWS Certificate Manager - ユーザーガイド · 2018-07-13 · AWS Certificate Manager ユーザーガイド Table of Contents AWS Certificate Manager とは何ですか?.....

AWS Certificate Manager ユーザーガイドDNS を使用した検証

このコマンドは、base64 でエンコードされた PEM 形式の証明書、証明書チェーン、およびプライベートキーを出力します。プライベートキーは PKCS #8 構文で出力されます。

{ "PrivateKey": "-----BEGIN ENCRYPTED PRIVATE KEY----- ...PKCS8 Base64-encoded encrypted private key ... -----END ENCRYPTED PRIVATE KEY-----", "CertificateChain": "-----BEGIN CERTIFICATE----- ...Base64-encoded certificate... -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- ...Base64-encoded private key... -----END CERTIFICATE-----", "Certificate": "-----BEGIN CERTIFICATE----- ...Base64-encoded certificate... -----END CERTIFICATE-----"}

すべてをファイルに出力するには、次の例に示すように、> リダイレクタを使用します。

aws acm export-certificate --certificate-arn \arn:aws:acm:region:account:\certificate/12345678-1234-1234-1234-123456789012 \--passphrase file://path-to-passphrase-file\> c:\temp\export.txt

DNS を使用したドメインの所有権の検証Amazon 認証局 (CA) がサイトの証明書を発行する前に、AWS Certificate Manager (ACM) は、ユーザーがリクエストで指定したすべてのドメイン名の所有者または管理者であることを確認する必要があります。証明書をリクエストするときに、E メールによる検証と DNS による検証のいずれかを選択できます。このトピックでは、DNS 検証について説明します。E メールによる検証についての詳細は、「E メールを使用したドメインの所有権の検証 (p. 31)」を参照してください。

Note

検証は、AWS Certificate Manager (ACM) が提供する証明書にのみ適用されます。ACM は、インポートした証明書 (p. 46)に対してはドメインの所有権を検証しません。

ドメインネームシステム (DNS) は、ネットワークに接続されているリソースのディレクトリサービスです。DNS サーバーは主にインターネット上で、ドメイン名を数値で構成される IP アドレスに変換するために使用されます。IP アドレスによって、コンピュータやその他のデバイスなどリソースを識別して所在を特定できます。DNS サーバー上のデータベースに含まれるドメインレコードは、このような変換時や、その他の機能を活用するときに使用されます。たとえば、A レコードは DNS レコードのタイプの 1 つであり、ドメイン名を IPV4 アドレスにマッピングするときに使用されます。MX レコードは、E メールをルーティングするために使用されます。NS レコードには、ドメインのすべてのネームサーバーが記述されます。

ACM は CNAME (正規名) レコードを使用し、ユーザーがドメインの所有者または管理者であることを検証します。DNS 検証を選択すると、DNS データベースに挿入するための 1 つ以上の CNAME レコードが ACM から提供されます。たとえば、追加の名前として www.example.com を使用して example.comドメインの証明書をリクエストする場合、ACM によって 2 つの CNAME レコードが作成されます。各レコードは、ユーザーのドメインおよびアカウントに固有のものとして作成され、名前と値が含まれます。この値は、ACM が所有するドメインを指すエイリアスであり、ACM が証明書を自動更新するときに使用されます。ユーザーが CNAME レコードを DNS データベースに追加できるのは 1 回のみです。証明書は

Version 1.0-27

Page 34: AWS Certificate Manager - ユーザーガイド · 2018-07-13 · AWS Certificate Manager ユーザーガイド Table of Contents AWS Certificate Manager とは何ですか?.....

AWS Certificate Manager ユーザーガイドDNS を使用した検証

使用中で CNAME レコードが残っている状態であれば、証明書は ACM によって自動的に更新されます。また、ドメインが Amazon Route 53 を使用して作成されている場合、ACM によって CNAME レコードを書き込むことができます。

次の表に、5 つのドメイン名に対する CNAME レコードの例を示します。_x の値は、ACMによって生成されるランダムな長い文字列を意味します。生成される一般的な名前には、_3639ac514e785e898d2646601fa951d5.example.com などがあります。表では最初の 2 つの_x が同じ値になっています。つまり、ワイルドカード名 *.example.com 用に ACM によって作成されるランダム文字列は、基本のドメイン名 example.com 用に作成されるものと同じです。ACM によってexample.com および www.example.com に対して別の CNAME レコードが作成されることにも注意してください。

ドメイン名 DNS ゾーン 名前 タイプ 値

*.example.com example.com _x1.example.com CNAME _x2.acm-validations.aws

example.com example.com _x1.example.com CNAME _x2.acm-validations.aws

www.example.com example.com _x3.www.example.comCNAME _x4.acm-validations.aws

host.example.com example.com _x5.host.example.comCNAME _x6.acm-validations.aws

subdomain.example.comsubdomain.example.com_x7.subdomain.example.comCNAME _x8.acm-validations.aws

host.subdomain.example.comsubdomain.example.com_x9.host.subdomain.example.comCNAME _x10.acm-validations.aws

DNS 検証は、E メール検証よりも多数のメリットがあります。

• DNS では、ACM 証明書をリクエストするときに、ドメイン名あたり 1 つの CNAME レコードのみを作成する必要があります。E メール検証では、ドメイン名あたり最大 8 つの E メールメッセージが送信されます。

• DNS レコードが残っていれば、FQDN 用に追加の ACM 証明書をリクエストできます。つまり、同じドメイン名を持つ複数の証明書を作成できます。新しい CNAME レコードを取得する必要はありません。これを行うことには、いくつか理由があります。たとえば、異なるサブドメインを対象とする新しい証明書を作成する、複数のリージョンで同じ証明書を作成する (認証トークンはどのリージョンでも使用できます)、削除した証明書を置き換えるなどです。

• ACM は、DNS を使用して、検証した ACM 証明書を自動的に更新します。証明書は使用中で DNS レコードが残っている状態であれば、各証明書は有効期限が切れる前に ACM によって更新されます。

• Route 53 を使用している場合は、ACM によって CNAME レコードが追加され、パブリック DNS レコードを管理できます。

• DNS 検証プロセスは、E メール検証プロセスよりも簡単に自動化できます。

ただし、ドメインの DNS レコードを修正する権限がない場合は、E メール検証が必要となる場合があります。

DNS 検証を使用する

1. AWS マネジメントコンソールにサインインし、https://console.aws.amazon.com/acm/home で ACMコンソールを開きます。入門者向けページが表示される場合は、[Get Started Now] を選択します。それ以外の場合は、[Request a certificate] を選択します。

Version 1.0-28

Page 35: AWS Certificate Manager - ユーザーガイド · 2018-07-13 · AWS Certificate Manager ユーザーガイド Table of Contents AWS Certificate Manager とは何ですか?.....

AWS Certificate Manager ユーザーガイドDNS を使用した検証

2. [Request a certificate] ページで、ドメイン名を入力します。ドメイン名を入力する場合の詳細については、「パブリック証明書のリクエスト (p. 22)」を参照してください。

3. ACM 証明書に複数のドメイン名を追加するには、入力した名前の下方に表示されるテキストボックスに別の名前を入力します。

4. [次へ] を選択します。5. [DNS validation] を選択します。6. [Review and request] を選択します。ドメイン名と検証方法が正しいことを確認します。7. [Confirm and request] を選択します。8. [Validation] ページで、ドメインの DNS 設定を展開するか、[Export DNS configuration to a file] を選択

します。ドメイン情報を展開すると、CNAME レコードの名前と値が ACM に表示されます。ドメイン管理者であることを検証するために、このレコードを DNS データベースに追加する必要があります。

9. 次の条件に該当する場合に、[Create record in Route 53] ボタンが表示されます。

• Route 53 を DNS プロバイダーとして使用しています。• Route 53 でドメインをホストしています。• Route 53 のホストゾーンに対する書き込み権限があります。• FQDN がまだ検証されていません。

リクエストしているドメイン名に対して FQDN がすでに検証済みである場合、または Route 53 ホストゾーンに対する書き込みアクセス権限がない場合は、[Create record in Route 53] ボタンは無効になります。Route 53 レコードセットの詳細については、「リソースレコードセットの使用」を参照してください。

Note

現在、ACM が自動的に Route 53 にレコードを作成するようプログラムによってリクエストすることはできません。ただし、AWS CLI または API 呼び出しによって Route 53 にレコードを作成することは可能です。

10. コンソールまたはエクスポートされたファイルを使用してデータベースにレコードを追加します。DNS レコードの追加の詳細については、「データベースに CNAME を追加する (p. 30)」を参照してください。[Continue] を選択すると、このステップをスキップできます。後でこのステップに戻るには、コンソールで証明書リクエストを開きます。

Version 1.0-29

Page 36: AWS Certificate Manager - ユーザーガイド · 2018-07-13 · AWS Certificate Manager ユーザーガイド Table of Contents AWS Certificate Manager とは何ですか?.....

AWS Certificate Manager ユーザーガイドデータベースに CNAME を追加する

Note

以前の証明書をリクエストしたときに FQDN が検証済みで、同じ FQDN 用に追加の証明書をリクエストしている場合は、別の DNS レコードを追加する必要はありません。

Note

ドメイン名が含まれている CNAME レコード (.example.com など) を追加すると、ドメイン名が重複したレコード (.example.com.example.com など) になる場合があります。重複を避けるには、CNAME の一部のみを手動でコピーすることができます。これは_3639ac514e785e898d2646601fa951d5 という形式になります。

11. DNS 設定を更新した後、[Continue] を選択します。ACM に、すべての証明書を記載した表が表示されます。リクエストした証明書とそのステータスが記載されています。DNS プロバイダーからレコードの更新が伝達された後、ACM がドメイン名を検証して証明書を発行するまで最大で数時間かかることがあります。この間、ACM には [Pending validation] という検証ステータスが表示されます。ドメイン名の検証後、ACM では検証ステータスが [Success] に変更されます。AWS から証明書が発行された後、ACM では証明書のステータスが [Issued] に変更されます。

Note

CNAME の値を生成してから 72 時間以内に ACM でドメイン名が検証されない場合、ACMでは証明書のステータスが [Validation timed out] に変更されます。この結果が生じる主な理由として、DNS 設定を ACM 値によって生成された値で更新しなかったことが考えられます。この問題を修正するには、新しい証明書をリクエストする必要があります。

データベースに CNAME を追加するDNS 検証を使用するには、CNAME レコードをドメインの DNS 設定に追加できる必要があります。DNSプロバイダーが Route 53 ではない場合は、レコードを追加する方法をプロバイダーに問い合わせてください。Route 53 がプロバイダーの場合は、ステップ 9 で説明しているように、ACM によって CNAME レコードを作成できます。自分でレコードを追加する場合は、Route 53 開発者ガイドの「リソースレコードセットの編集」を参照してください。

Note

DNS 設定の編集権限がない場合は、E メール検証を使用する必要があります。

Version 1.0-30

Page 37: AWS Certificate Manager - ユーザーガイド · 2018-07-13 · AWS Certificate Manager ユーザーガイド Table of Contents AWS Certificate Manager とは何ですか?.....

AWS Certificate Manager ユーザーガイドデータベースから CNAME を削除する

データベースから CNAME を削除する証明書は使用中で、ACM によって作成された CNAME レコードが DNS データベースに残っている場合、ACM によって証明書が自動的に更新されます。自動更新を停止するには、関連付けられている AWSサービスから証明書を削除するか、CNAME レコードを削除します。DNS プロバイダーが Route 53 ではない場合は、レコードを削除する方法をプロバイダーに問い合わせてください。Route 53 がプロバイダーの場合は、Route 53 開発者ガイドの「リソースレコードセットの削除」を参照してください。証明書のマネージド型更新の詳細については、「ACM の Amazon が発行する証明書のマネージド型更新 (p. 40)」を参照してください。

E メールを使用したドメインの所有権の検証Amazon 認証局 (CA) がサイトの証明書を発行する前に、AWS Certificate Manager (ACM) は、ユーザーがリクエストで指定したすべてのドメインの所有者または管理者であることを確認する必要があります。Eメールまたは DNS のいずれかを使用して検証を実行できます。このトピックでは、E メール検証について説明します。DNS 検証の詳細については、「DNS を使用したドメインの所有権の検証 (p. 27)」を参照してください。

Note

検証は、AWS Certificate Manager (ACM) が提供する証明書にのみ適用されます。ACM は、インポートした証明書 (p. 46)に対してはドメインの所有権を検証しません。ACM 証明書の検証中に問題が発生した場合は、「証明書検証の問題のトラブルシューティング (p. 104)」を参照してください。E メールを受信していない場合は、「検証 E メールが受信されない (p. 98)」を参照してください。

AWS Certificate Manager (ACM) から、WHOIS に記載されている 3 つの連絡先アドレスと、各ドメインに対して指定した 5 つの共通システムのアドレスに E メールが送信されます。つまり、リクエストに記載したドメイン名とサブジェクト代替名ごとに最大 8 通の E メールメッセージが送信されます。たとえば、1つのドメイン名だけを指定した場合、最大 8 つの E メールメッセージが送信されます。検証するには、72時間以内にこれらの 8 つのメッセージのうちの 1 つに対応する必要があります。3 つのドメイン名を指定した場合は、最大 24 メッセージが送信されます。検証するには、72 時間以内に、指定した名前ごとに 1つずつ、少なくとも 3 つの E メールのメッセージに対応する必要があります。

WHOIS に登録された次の 3 つの連絡先アドレスに E メールが送信されます。

• ドメインの登録者• テクニカル担当者• 管理者の連絡先

Note

一部のレジストラでは、WHOIS リストから連絡先情報を隠すことができます。また、そのほかでは、実際の E メールアドレスをプライバシー (またはプロキシ) アドレスに置き換えることができます。ACM からドメイン検証 E メールの受信に関する問題を防ぐために、連絡先情報が WHOISに表示されていることを確認してください。WHOIS のリストにプライバシー E メールアドレスが表示されている場合は、そのアドレスに送信された E メールが実際の E メールアドレスに転送されていることを確認してください。あるいは、実際の E メールアドレスをリスト表示してください。

コンソールを使用して証明書をリクエストした場合、ACM は MX ルックアップを実行して、ドメインのE メールを受け入れるサーバーを決定し、最初に見つかったドメインの次の 5 つの一般的なシステムアドレスにメールを送信します。RequestCertificate API または request-certificate AWS CLI コマンドを使用した場合、ACM は MX ルックアップを実行しません。代わりに、DomainName またはオプションの

Version 1.0-31

Page 38: AWS Certificate Manager - ユーザーガイド · 2018-07-13 · AWS Certificate Manager ユーザーガイド Table of Contents AWS Certificate Manager とは何ですか?.....

AWS Certificate Manager ユーザーガイドE メールによる検証

ValidationDomain パラメーターに指定された名前のドメインに E メールを送信します。詳細については、「MX レコード (p. 19)」を参照してください。

• administrator@your_domain_name

• hostmaster@your_domain_name

• postmaster@your_domain_name

• webmaster@your_domain_name

• admin@your_domain_name

ACM がドメインの E メールアドレスを決定する方法の詳細については、「(オプション) ドメインの Eメールを設定する (p. 18)」を参照してください。

コンソールには、リクエストで指定した最初のドメイン名に対して、検証 E メールメッセージが送信された場所が表示されます。E メールは、[email protected] から送信されます。

Note

上記で説明したプロセスには例外があります。www またはワイルドカードアスタリスク (*)で始まるドメイン名に対して ACM 証明書をリクエストする場合は、ACM は、先頭の wwwまたはアスタリスクを削除し、管理アドレスにメールを送信します。これらのアドレスはドメイン名の残りの部分に admin@、administrator@、hostmaster@、postmaster@、およびwebmaster@ を前置することによって形成されます。たとえば、www.example.com に ACM 証明書をリクエストする場合、[email protected] の代わりに [email protected] にE メールが送信されます。同じように、*.test.example.com に ACM 証明書をリクエストする場

Version 1.0-32

Page 39: AWS Certificate Manager - ユーザーガイド · 2018-07-13 · AWS Certificate Manager ユーザーガイド Table of Contents AWS Certificate Manager とは何ですか?.....

AWS Certificate Manager ユーザーガイドE メールによる検証

合、[email protected] に E メールが送信されます。残りの一般的な管理者アドレスも、同様に形成されます。Note

E メールは、test.example.com などのサブドメインの管理アドレスではなく、example.comなどの apex ドメインの管理アドレスに送信されるようにしてください。そのためには、RequestCertificate API または request-certificate AWS CLI コマンドで ValidationDomainオプションを指定します。コンソールを使用して証明書をリクエストする場合、この機能は現在サポートされていません。

次の例は、証明書リクエストで指定したすべてのドメイン名に対して送信される検証 E メールを示しています。

Amazon 証明書承認ウェブサイトへ移動するリンクを選択し [I Approve] を選択します。

Version 1.0-33

Page 40: AWS Certificate Manager - ユーザーガイド · 2018-07-13 · AWS Certificate Manager ユーザーガイド Table of Contents AWS Certificate Manager とは何ですか?.....

AWS Certificate Manager ユーザーガイド証明書の一覧表示

[I Approve] を選択すると、リクエストが成功したことを示すウェブサイトが開きます。

成功ページでリンクをクリックすると、ACM コンソールに戻ることができます。ACM がドメイン名を確認し、証明書を発行するまでに、最大で数時間かかることがあります。この間、ACM には [Pendingvalidation] という検証ステータスが表示されます。ドメイン名の検証後、ACM では検証ステータスが[Success] に変更されます。AWS から証明書が発行された後、ACM では証明書のステータスが [Issued]に変更されます。

ACM によって管理される証明書の一覧表示ACM コンソールまたは AWS CLI を使用して、ACM によって管理される証明書を一覧表示できます。

トピック• 証明書の一覧表示 (コンソール) (p. 34)• 証明書の一覧表示 (CLI) (p. 35)

証明書の一覧表示 (コンソール)証明書情報の表示各証明書は、コンソール内の各行に表示されます。デフォルトでは、証明書ごとに次の列が表示されます。

• ドメイン名 – 証明書の完全修飾ドメイン名。• 追加の名前 – この証明書でサポートされている追加の名前。

Version 1.0-34

Page 41: AWS Certificate Manager - ユーザーガイド · 2018-07-13 · AWS Certificate Manager ユーザーガイド Table of Contents AWS Certificate Manager とは何ですか?.....

AWS Certificate Manager ユーザーガイド証明書の一覧表示 (CLI)

• ステータス – 証明書のステータス。これは、次のいずれかを表示します。• 検証保留中• 発行済み• 非アクティブ• Expired• 失効• 失敗• タイムアウト

• 使用中?– ACM 証明書が Elastic Load Balancing や CloudFront などの AWS サービスに有効に関連付けられているかどうかを示します。値は、[No] または [Yes] となります。

コンソールの表示をカスタマイズする

表示する列を選ぶには、歯車アイコン ( ) をコンソールの右上から選択します。次の列の中から選択できます。

証明書の一覧表示 (CLI)list-certificates コマンドを使用して、ACM によって管理される証明書を一覧表示できます。

aws acm list-certificates --max-items 10

list-certificates コマンドは次の情報を出力します。

{ "CertificateSummaryList": [ { "CertificateArn": "arn:aws:acm:region:account:certificate/123456789012-1234-1234-1234-12345678", "DomainName": "example.com" }, { "CertificateArn": "arn:aws:acm:region:account:certificate/123456789012-1234-1234-1234-12345678", "DomainName": "mydomain.com" } ]

Version 1.0-35

Page 42: AWS Certificate Manager - ユーザーガイド · 2018-07-13 · AWS Certificate Manager ユーザーガイド Table of Contents AWS Certificate Manager とは何ですか?.....

AWS Certificate Manager ユーザーガイド証明書の説明

}

デフォルトでは、「AWS Certificate Manager に統合されるサービス (p. 9)」でサポートされている証明書のみが一覧表示されます。つまり、keyTypes が RSA_1024 と RSA_2048 である証明書のみが返されます。別のアルゴリズムとビットサイズを使用する、自分が所有または管理している他の証明書を表示するには、次の例に示すように、--includes パラメータを使用します。パラメータでは、フィルタ構造のメンバーを指定できます。

aws acm list-certificates --max-items 10 --includes keyTypes=RSA_4096

ACM 証明書の説明ACM コンソールまたは AWS CLI を使用して、証明書のメタデータを一覧表示できます。

トピック• 証明書の説明 (コンソール) (p. 36)• 証明書の説明 (CLI) (p. 36)

証明書の説明 (コンソール)証明書のメタデータを表示するには、ドメイン名のすぐ左にある矢印を選択します。コンソールには、次のような情報が表示されます。

証明書の説明 (CLI)発行された証明書の情報を取得する、証明書を削除する、または検証 E メールを再送信するために AWSCLI を使用できます。

ACM 証明書フィールドを取得するdescribe-certificate コマンドを使用して、証明書のメタデータを一覧表示できます。

Version 1.0-36

Page 43: AWS Certificate Manager - ユーザーガイド · 2018-07-13 · AWS Certificate Manager ユーザーガイド Table of Contents AWS Certificate Manager とは何ですか?.....

AWS Certificate Manager ユーザーガイド証明書の説明 (CLI)

aws acm describe-certificate --certificate-arn arn:aws:acm:region:account:certificate/12345678-1234-1234-1234-123456789012

describe-certificate コマンドは次の情報を出力します。

{ "Certificate": { "CertificateArn": "arn:aws:acm:region:account:certificate/12345678-1234-1234-1234-123456789012", "Status": "EXPIRED", "Options": { "CertificateTransparencyLoggingPreference": "ENABLED" }, "SubjectAlternativeNames": [ "example.com", "www.example.com" ], "DomainName": "gregpe.com", "NotBefore": 1450137600.0, "RenewalEligibility": "INELIGIBLE", "NotAfter": 1484481600.0, "KeyAlgorithm": "RSA-2048", "InUseBy": [ "arn:aws:cloudfront::account:distribution/E12KXPQHVLSYVC" ], "SignatureAlgorithm": "SHA256WITHRSA", "CreatedAt": 1450212224.0, "IssuedAt": 1450212292.0, "KeyUsages": [ { "Name": "DIGITAL_SIGNATURE" }, { "Name": "KEY_ENCIPHERMENT" } ], "Serial": "07:71:71:f4:6b:e7:bf:63:87:e6:ad:3c:b2:0f:d0:5b", "Issuer": "Amazon", "Type": "AMAZON_ISSUED", "ExtendedKeyUsages": [ { "OID": "1.3.6.1.5.5.7.3.1", "Name": "TLS_WEB_SERVER_AUTHENTICATION" }, { "OID": "1.3.6.1.5.5.7.3.2", "Name": "TLS_WEB_CLIENT_AUTHENTICATION" } ], "DomainValidationOptions": [ { "ValidationEmails": [ "[email protected]", "[email protected]", "[email protected]", "[email protected]", "[email protected]" ], "ValidationDomain": "example.com", "DomainName": "example.com" }, { "ValidationEmails": [ "[email protected]",

Version 1.0-37

Page 44: AWS Certificate Manager - ユーザーガイド · 2018-07-13 · AWS Certificate Manager ユーザーガイド Table of Contents AWS Certificate Manager とは何ですか?.....

AWS Certificate Manager ユーザーガイド証明書の削除

"[email protected]", "[email protected]", "[email protected]", "[email protected]" ], "ValidationDomain": "www.example.com", "DomainName": "www.example.com" } ], "Subject": "CN=example.com" }}

ACM によって管理される証明書の削除ACM コンソールまたは AWS CLI を使用して、証明書を削除できます。

トピック• 証明書の削除 (コンソール) (p. 38)• 証明書の削除 (CLI) (p. 38)

証明書の削除 (コンソール)証明書のリストで、削除する ACM 証明書のチェックボックスをオンにします。[ Actions] では、[Delete]を選択します。

Note

別の AWS サービスで使用されている ACM 証明書は削除できません。使用中の証明書を削除するには、まず証明書の関連付けを削除する必要があります。

証明書の削除 (CLI)delete-certificate コマンドを使用して、証明書のメタデータを一覧表示できます。

aws acm delete-certificate --certificate-arn arn:aws:acm:region:123456789012:certificate/12345678-1234-1234-1234-123456789012

ACM 証明書のインストールACM を使用して、AWS ベースのウェブサイトとアプリケーションに ACM 証明書を直接インストールすることはできません。ACM と統合されたいずれかのサービスを使用する必要があります。詳細については、「AWS Certificate Manager に統合されるサービス (p. 9)」を参照してください。

検証 E メールの再送信 (オプション)E メールを使用して、お客様がドメインの所有者または管理者であることを検証します。各 E メールには、証明書リクエストの承認に使用できる検証トークンが含まれています。ただし、承認プロセスに必要な検証 E メールがスパムフィルターによってブロックされたり、転送中に紛失した場合、検証トークンは

Version 1.0-38

Page 45: AWS Certificate Manager - ユーザーガイド · 2018-07-13 · AWS Certificate Manager ユーザーガイド Table of Contents AWS Certificate Manager とは何ですか?.....

AWS Certificate Manager ユーザーガイドE メールの再送信 (コンソール)

72 時間後に自動的に有効期限切れになります。元の E メールを受信しなかった場合、またはトークンの期限が切れた場合は、E メールの再送信をリクエストできます。

トピック• E メールの再送信 (コンソール) (p. 39)• E メールの送信 (CLI) (p. 39)

E メールの再送信 (コンソール)保留中の証明書のチェックボックスをオンにし、[アクション] を選択してから、[検証 E メールの再送信]を選択します。72 時間が経過し、証明書ステータスが [Timed out] に変更された場合、検証 E メールを再送信することはできません。

Note

上記の情報は ACM から提供される証明書と E メール検証を使用する証明書にのみ適用されます。検証 E メールは、ACM にインポートした証明書 (p. 46)には必要ありません。

Note

検証 E メールの再送信は、E メール検証を使用する証明書にのみ適用され、DNS 検証には適用されません。DNS ドメイン検証の詳細については、「DNS を使用したドメインの所有権の検証 (p. 27)」を参照してください。

E メールの送信 (CLI)resend-validation-email コマンドを使用して、E メールを再送信できます。

aws acm resend-validation-email --certificate-arn arn:aws:acm:region:account:certificate/12345678-1234-1234-1234-123456789012 --validation-domain example.com

Note

resend-validation-email コマンドは、E メール検証を使用するための ACM 証明書にのみ適用されます。ACM にインポートした証明書、または ACM を使用して管理するプライベート証明書では、検証は必要ありません。

Version 1.0-39

Page 46: AWS Certificate Manager - ユーザーガイド · 2018-07-13 · AWS Certificate Manager ユーザーガイド Table of Contents AWS Certificate Manager とは何ですか?.....

AWS Certificate Manager ユーザーガイドドメイン検証

ACM の Amazon が発行する証明書のマネージド型更新

ACM は、Amazon 発行の SSL/TLS 証明書の更新の管理方法について説明します。これには、ACM を使用して発行されたパブリック証明書とプライベート証明書の両方が含まれます。ACM は期限切れになる前に証明書の更新を試みます。可能な場合、ACM は手動によるアクションを必要とせずに、自動的に証明書を更新します。

Note

自動更新は、ACM 証明書管理のない ACM プライベート CA から直接発行された証明書など、ACM がプライベートキーと証明書署名リクエスト (CSR) を作成しない ACM プライベートCA 証明書では利用できません。さらに、インポートされた証明書 (p. 46)でも自動更新は利用できません。詳細については、「手動でのドメイン検証方法」を参照してください。

Note

ACM が証明書を更新するとき、証明書の Amazon リソースネーム (ARN) は変更されません。また、ACM 証明書はリージョナルリソース (p. 8)です。複数の AWS リージョンで同じドメイン名の証明書がある場合は、ACM はこれらの各証明書を個別に更新します。

Important

ACM 証明書は、自動更新する前に、サポートされている AWS サービスに有効に関連付けられている必要があります。ACM がサポートするリソースについては、「AWS Certificate Manager に統合されるサービス (p. 9)」を参照してください。

証明書マネージド型更新の詳細については、以下のトピックを参照してください。マネージド更新で問題が発生した場合は、「マネージド証明書の更新に関する問題のトラブルシューティング (p. 103)」を参照してください。

トピック• ドメイン検証の仕組み (p. 40)• 証明書の更新ステータスの確認 (p. 42)• 証明書を更新するためにドメイン検証 E メールをリクエストする (p. 44)

ドメイン検証の仕組み証明書を更新する前に、ACM は証明書の各ドメイン名を自動的に検証することを試行します。詳細については、「自動ドメイン検証の仕組み (p. 41)」を参照してください。ACM によって自動的にドメイン名が検証できない場合には、手動による検証手続きが必要であることが通知されます。詳細については、「自動検証に失敗した場合 (p. 41)」を参照してください。証明書が使用されている場合 (ACM に統合される AWS サービスに関連付けられている場合) に証明書のすべてのドメイン名が検証されると、ACMによって証明書が更新されます。

トピック• 自動ドメイン検証の仕組み (p. 41)

Version 1.0-40

Page 47: AWS Certificate Manager - ユーザーガイド · 2018-07-13 · AWS Certificate Manager ユーザーガイド Table of Contents AWS Certificate Manager とは何ですか?.....

AWS Certificate Manager ユーザーガイド自動ドメイン検証の仕組み

• 自動検証に失敗した場合 (p. 41)

自動ドメイン検証の仕組みドメインを検証するには、ACM はドメインに自動で定期的な HTTPS リクエストを送信します。www. で始まるドメインの場合、ACM は HTTPS リクエストを親ドメインにも送信します。たとえば、ドメインがwww.example.com の場合、ACM は www.example.com と example.com に定期的にリクエストを送信します。www. で始まらないドメインの場合、ACM は www.domain にも HTTPS リクエストを送信します。ACM は、ワイルドカードドメイン名 (*.example.com など) を親ドメインと同じく処理します。次の表の例を参照してください。

Note

HTTPS 接続の試行が成功した場合、ACM は証明書を自動的に更新しようとします。

ACM が自動更新に使用するドメイン名の例

証明書のドメイン名 ACM 自動検証に使用するドメイン名

example.com example.com

www.example.com

www.example.com www.example.com

example.com

*.example.com example.com

www.example.com

subdomain.example.com subdomain.example.com

www.subdomain.example.com

www.subdomain.example.com www.subdomain.example.com

subdomain.example.com

*.subdomain.example.com subdomain.example.com

www.subdomain.example.com

ACM が HTTPS 接続の確立に成功したら、ACM は返された証明書と ACM が更新する証明書が一致することを調べます。証明書が一致すれば、ACM はドメイン名が検証されたと見なします。

自動検証に失敗した場合ACM によって自動的に証明書の 1 つまたは複数のドメイン名が検証されない場合、手動でドメインの検証を行う必要があることが ACM から通知されます。ドメインの手動検証が必要になるのは、次のような理由によります。

• ACM がドメインと HTTPS 接続を確立できない。• HTTPS リクエストに対する応答で返された証明書が ACM が更新する証明書と一致しない。

証明書が失効日から 45 日が経過し、証明書の 1 つあるいは複数のドメイン名が手動による検証を必要としているとき、ACM は次の方法で通知を行います。

Version 1.0-41

Page 48: AWS Certificate Manager - ユーザーガイド · 2018-07-13 · AWS Certificate Manager ユーザーガイド Table of Contents AWS Certificate Manager とは何ですか?.....

AWS Certificate Manager ユーザーガイド更新ステータスの確認

ドメイン所有者に E メールで通知する (E メール検証)

証明書をリクエストしたときに E メール検証を使用した場合、手動検証が必要となる各ドメイン名のドメイン所有者に ACM から自動的に E メールが送信されます。この E メールを確実に受信するために、ドメイン所有者は各ドメインの E メールを正しく構成する必要があります。詳細については、「(オプション) ドメインの E メールを設定する (p. 18)」を参照してください。E メールにはリンクが含まれており、それに従って検証を実行することができます。このリンクは 72 時間後に失効します。必要な場合には、AWS Certificate Manager コンソール、AWS CLI、または API を使用して、ACM がドメイン検証 E メールを再送信するようリクエストできます。詳細については、「証明書を更新するためにドメイン検証 E メールをリクエストする (p. 44)」を参照してください。

AWS アカウントに E メールで通知する (DNS 検証)

証明書をリクエストしたときに DNS 検証を使用した場合、AWS アカウントに関連付けられているアドレスに ACM から E メールが送信されます。E メールによって、ACM で証明書を更新しようとしたときに問題が発生したことが通知されます。問題は多くの場合、元の CNAME レコードが所定の位置にないこと、または ACM に統合される AWS サービスに証明書が関連付けられていないことです。ドメインを検証して証明書を更新する場合は、DNS 設定を編集して元の CNAME レコードが所定の位置にあることを確認する必要があります。また、ACM 証明書が使用されていることを確認する必要もあります。DNS 検証の詳細については、「DNS を使用したドメインの所有権の検証 (p. 27)」を参照してください。

AWS Personal Health Dashboard で通知する

ACM から AWS Personal Health Dashboard に通知が送信され、証明書の 1 つ以上のドメイン名を更新する必要があることが知らされます。証明書の有効期限の 45 日、30 日、15 日、7 日間、3 日、1日前にACM はこれらの通知が送信します。これらの通知は情報提供のみを目的としています。

証明書の更新ステータスの確認ACM 証明書の更新ステータスの確認には、AWS Certificate Manager コンソール、ACM API、AWS CLI、または Personal Health Dashboard を使用できます。コンソール、AWS CLI、または ACM API を使用する場合、証明書の更新ステータスは以下に示す 4 つの取り得る値のいずれかになります。Personal HealthDashboard を使用する場合も同様の値が表示されます。

保留中の自動更新

ACM は、証明書のドメイン名を自動的に検証しようとしています。詳細については、「ドメイン検証の仕組み (p. 40)」を参照してください。これ以上、何もする必要はありません。

検証保留中

ACM は、証明書の 1 つまたは複数のドメイン名を自動的に検証できませんでした。これらのドメイン名を検証するためにアクションを実行する必要があり、実行しない場合には証明書は更新されません。証明書の E メール検証を使用した場合は、ACM からの E メールを探し、その E メールのリンクに従って検証を実行します。DNS 検証を使用した場合は、DNS レコードが存在しており、証明書が引き続き使用されることを確認します。

成功

証明書にあるすべてのドメイン名が検証され、ACM は証明書を更新しました。これ以上、何もする必要はありません。

失敗

証明書が有効期限切れになる前に、1 つまたは複数のドメイン名が検証されませんでした。そして、ACM は証明書を更新しませんでした。新しい証明書をリクエストできます (p. 22)。

Note

証明書ステータスの変更が有効になるまでに数時間ほどかかる場合があります。

Version 1.0-42

Page 49: AWS Certificate Manager - ユーザーガイド · 2018-07-13 · AWS Certificate Manager ユーザーガイド Table of Contents AWS Certificate Manager とは何ですか?.....

AWS Certificate Manager ユーザーガイドステータスの確認 (コンソール)

トピック• ステータスの確認 (コンソール) (p. 43)• ステータスの確認 (API) (p. 43)• ステータスの確認 (CLI) (p. 43)• ステータスの確認 (PHD) (p. 43)

ステータスの確認 (コンソール)次の手順では、ACM コンソールを使用して ACM 証明書の更新ステータスを確認する方法について説明します。

1. AWS Certificate Manager コンソール を https://console.aws.amazon.com/acm/home で開きます。2. 証明書を展開して詳細を表示します。3. [Details] セクションの [Renewal Status] を見つけます。ステータスが表示されない場合、ACM でこの

証明書のマネージド型更新プロセスが開始されていません。

ステータスの確認 (API)DescribeCertificate アクションを使用してステータスを確認する方法を示す Java のサンプルについては、「証明書についての説明 (p. 80)」を参照してください。

ステータスの確認 (CLI)以下のサンプルは、AWS Command Line Interface (AWS CLI) を使用して ACM 証明書の更新ステータスを確認する方法を示しています。

$ aws acm describe-certificate --certificate-arn arn:aws:acm:region:123456789012:certificate/97b4deb6-8983-4e39-918e-ef1378924e1e

レスポンスの RenewalStatus フィールドの値を書き留めます。[RenewalStatus] フィールドが表示されない場合、ACM で証明書のマネージド型更新プロセスが開始されていません。

ステータスの確認 (PHD)ACM は、失効日の 60 日前に ACM 証明書を自動的に更新しようとします。「ドメイン検証の仕組み (p. 40)」を参照してください。ACM で証明書を自動的に更新できない場合は、失効日の 45 日前、30 日前、15 日前、7 日前、3 日前、1 日前の間隔で証明書の更新イベント通知が Personal HealthDashboard に送信され、対応する必要がある旨が知らされます。Personal Health Dashboard は、AWSHealth サービスの一部です。セットアップを行う必要はなく、アカウントで認証されているすべてのユーザーが表示できます。詳細については、AWS Health ユーザーガイドを参照してください。

Personal Health Dashboard を使用するには

1. https://phd.aws.amazon.com/phd/home#/ で Personal Health Dashboard にログインします。2. [Event log] を選択します。3. [Filter by tags or attributes] の場合、[Service] を選択します。4. [Certificate Manager] を選択します。5. [Apply] を選択します。6. [Event category] の場合、[Scheduled Change] を選択します。

Version 1.0-43

Page 50: AWS Certificate Manager - ユーザーガイド · 2018-07-13 · AWS Certificate Manager ユーザーガイド Table of Contents AWS Certificate Manager とは何ですか?.....

AWS Certificate Manager ユーザーガイド電子メールをリクエストする (オプション)

7. [Apply] を選択します。

ACM で ACM 証明書が最近更新されている場合は、次のような情報が表示されます。

証明書を更新するためにドメイン検証 E メールをリクエストする

ドメインの連絡先 E メールアドレスを設定すると (「(オプション) ドメインの E メールを設定する (p. 18)」を参照)、AWS Certificate Manager コンソールまたは ACMAPI を使用して、ACM が証明書を更新するためにドメイン検証 E メールを送信するようにリクエストできます。このためには、次の条件が満たされる必要があります。

• ACM 証明書を最初にリクエストするときに E メール検証を使用した。

Version 1.0-44

Page 51: AWS Certificate Manager - ユーザーガイド · 2018-07-13 · AWS Certificate Manager ユーザーガイド Table of Contents AWS Certificate Manager とは何ですか?.....

AWS Certificate Manager ユーザーガイド電子メールをリクエストする (オプション)

• 証明書の更新ステータスが [検証保留中] である。証明書の更新ステータスの閲覧に関する詳細は、「証明書の更新ステータスの確認 (p. 42)」を参照してください。

• ACM が証明書の更新用に送信した元のドメイン検証 E メールが受信されない、あるいは見つからない。

ACM がドメイン検証 E メール (コンソール) を再送信するようにリクエストするには

1. AWS Certificate Manager コンソール を https://console.aws.amazon.com/acm/home で開きます。2. 証明書の横にあるチェックボックスを選択して、手動でドメイン検証を行うようにします。[Actions]

を選択してから、[Resend validation email] を選択します。

ACM がドメイン検証 E メールを再送信するようにリクエストするには (ACMAPI)

ACMAPI で ResendValidationEmail オペレーションを使用します。これにより、証明書の ARN、手動による検証が必要となるドメイン、ドメイン検証 E メールを受信するドメインが渡されます。次の例では、AWS CLI を使用してこの操作を行う方法を示します。この例では読みやすいように改行が含まれています。

$ aws acm resend-validation-email --certificate-arn arn:aws:acm:us-east-2:111122223333:certificate/97b4deb6-8983-4e39-918e-ef1378924e1e --domain subdomain.example.com --validation-domain example.com

Version 1.0-45

Page 52: AWS Certificate Manager - ユーザーガイド · 2018-07-13 · AWS Certificate Manager ユーザーガイド Table of Contents AWS Certificate Manager とは何ですか?.....

AWS Certificate Manager ユーザーガイド前提条件

AWS Certificate Manager に証明書をインポートする。

AWS Certificate Manager (ACM) が提供する SSL/TLS 証明書をリクエストするだけでなく、AWS 外部で入手した証明書をインポートすることもできます。これは、サードパーティ発行の証明書をすでに取得している場合、または ACM が提供する証明書が要件に満たさない場合に行います。

AWS の外部で取得した SSL/TLS 証明書をインポートし、ACM に統合されたサービスに関連付けると、その証明書の関連付けを維持しながらその証明書を再インポートできます。

証明書をインポートした後で、ACM に統合された AWS サービス (p. 9)でこの証明書を使用できます。インポートした証明書は、ACM が提供する証明書と同じように動作しますが、重要な例外が 1 つあります。ACM はインポートされた証明書にマネージド型更新 (p. 40)を提供しません。

Important

インポートした証明書の有効期限をモニタリングし、失効する前に更新する責任はお客様に帰します。期限切れの証明書と同じ ARN を持つ新しい証明書をインポートすると、新しい証明書で古い証明書が置き換えられます。さらに、ACM は新しい証明書を古い証明書と同じサービスおよびリソースに関連付けます。Important

ACM 証明書はピン留めしないことをお勧めします。詳細については、「証明書ピニング (p. 12)」および「証明書のピニングの問題のトラブルシューティング (p. 100)」を参照してください。

インポートした証明書を更新するには、発行者から新しい証明書を取得して ACM にインポートするか、または ACM から新しい証明書をリクエスト (p. 22)することもできます。

ACM のすべての証明書は、インポートした証明書を含め、リージョナルリソースとなります。異なるAWS リージョン内で同じ証明書を Elastic Load Balancing ロードバランサーで使用するには、使用する各リージョン内に証明書をインポートする必要があります。Amazon CloudFront で証明書を使用するには、米国東部(バージニア北部) リージョンに証明書をインポートする必要があります。詳細については、「サポートされているリージョン (p. 8)」を参照してください。

ACM に証明書をインポートする方法については、以下のトピックを参照してください。証明書のインポートで問題が発生した場合は、「証明書のインポートの問題のトラブルシューティング (p. 100)」を参照してください。

トピック• 証明書をインポートする前提条件 (p. 46)• インポートのための証明書とキー形式 (p. 47)• 証明書のインポート (p. 48)• 証明書の再インポート (p. 49)

証明書をインポートする前提条件自己署名 SSL/TLS 証明書を ACM にインポートするには、証明書とそのプライベートキーを提供する必要があります。署名証明書をインポートするには、証明書チェーンも含める必要があります。証明書は、次の基準を満たす必要があります。

• 証明書では、アルゴリズムやキーサイズを指定する必要があります。現在、次のパブリックキーアルゴリズムが ACM でサポートされています。

Version 1.0-46

Page 53: AWS Certificate Manager - ユーザーガイド · 2018-07-13 · AWS Certificate Manager ユーザーガイド Table of Contents AWS Certificate Manager とは何ですか?.....

AWS Certificate Manager ユーザーガイド証明書の形式

• 1024 ビット RSA (RSA_1024)• 2048 ビット RSA (RSA_2048)• 4096 ビット RSA (RSA_4096)• Elliptic Prime Curve 256 ビット (EC_prime256v1)• Elliptic Prime Curve 384 ビット (EC_secp384r1)• Elliptic Prime Curve 521 ビット (EC_secp521r1)

Important

統合サービスでは、リソースへの関連付けがサポートされているアルゴリズムとキーサイズのみが許可されることに注意してください。さらに、そのサポートは、証明書のインポート先が IAMであるか ACM であるかによって異なります。詳細については、各サービスの ドキュメントを参照してください。

• Elastic Load Balancing の場合は、「Application Load Balancer の HTTPS リスナー」を参照してください。

• CloudFront の場合は、「サポートされる SSL/TLS プロトコルと暗号」を参照してください。

• 証明書は、SSL/TLS X.509 バージョン 3 の証明書である必要があります。証明書には、パブリックキー、ウェブサイトの完全修飾ドメイン名 (FQDN)、発行者に関する情報が含まれている必要があります。証明書はプライベートキーまたは発行元 CA のプライベートキーによって自己署名できます。証明書が CA によって署名されている場合は、証明書をインポートするときに証明書チェーンを含める必要があります。

• 証明書はインポート時に有効である必要があります。有効になる前、または有効期限が切れた後で証明書をインポートすることはできません。 NotBefore 証明書のフィールドには有効開始日が、NotAfter フィールドには終了日が含まれています。

• プライベートキーは非暗号化される必要があります。パスワードやパスフレーズで保護されたプライベートキーをインポートすることはできません。

• 証明書、プライベートキー、および証明書チェーンは PEM エンコードされる必要があります。 詳細な説明と例については、「インポートのための証明書とキー形式 (p. 47)」を参照してください。

インポートのための証明書とキー形式証明書、プライベートキー、および証明書チェーンは PEM エンコードされる必要があります。PEM はPrivacy Enhanced Mail の略です。PEM 形式は、証明書、証明書リクエスト、証明書チェーン、およびキーを表すために頻繁に使用されます。PEM 形式ファイルの一般的な拡張子は .pem ですが、このとおりである必要はありません。以下に示しているのはこの形式の例です。PEM ファイルで文字を誤って編集した場合、またはいずれかの行の末尾に 1 つ以上のスペースを追加した場合、証明書、証明書チェーン、またはプライベートキーは無効になることに注意してください。

Example PEM エンコードされた証明書

-----BEGIN CERTIFICATE-----Base64–encoded certificate-----END CERTIFICATE-----

Example PEM エンコードされた証明書チェーン

証明書チェーンには 1 つまたは複数の証明書が含まれます。テキストエディタ、Windows の copy コマンド、または Linux の cat コマンドを使用して、ファイルをチェーンに連結します。証明書は順に連結し、各ディレクトリが 1 つ前のディレクトリを認定するようにする必要があります。最後にルート CA 証明書

Version 1.0-47

Page 54: AWS Certificate Manager - ユーザーガイド · 2018-07-13 · AWS Certificate Manager ユーザーガイド Table of Contents AWS Certificate Manager とは何ですか?.....

AWS Certificate Manager ユーザーガイド証明書のインポート

をコピーします。次の例には 3 つの証明書が含まれていますが、証明書チェーンに含まれている証明書はそれ以上またはそれ以下である可能性があります。

Important

証明書チェーンに証明書をコピーしないでください。

-----BEGIN CERTIFICATE-----Base64–encoded certificate-----END CERTIFICATE----------BEGIN CERTIFICATE-----Base64–encoded certificate-----END CERTIFICATE----------BEGIN CERTIFICATE-----Base64–encoded certificate-----END CERTIFICATE-----

Example PEM エンコードされたプライベートキー

X.509 バージョン 3 証明書は、パブリックキーアルゴリズムを利用します。X.509 証明書または証明書リクエストを作成するときは、プライベートキーとパブリックキーのキーペアを作成するために使用する必要があるアルゴリズムとキービットサイズを指定します。パブリックキーは証明書またはリクエストに配置されます。関連付けられたプライベートキーシークレットを保持する必要があります。証明書をインポートするときに、プライベートキーを指定します。キーは非暗号化される必要があります。次の例に、RSA プライベートキーを示します。

-----BEGIN RSA PRIVATE KEY-----Base64–encoded private key-----END RSA PRIVATE KEY-----

次の例は、PEM エンコード楕円曲線プライベートキーを示しています。キーの作成方法によっては、パラメータブロックが含まれない場合があります。パラメータブロックが含まれる場合、ACM により、インポート処理中にキーを使用する前に削除されます。

-----BEGIN EC PARAMETERS-----Base64–encoded parameters-----END EC PARAMETERS----------BEGIN EC PRIVATE KEY-----Base64–encoded private key-----END EC PRIVATE KEY-----

証明書のインポートAWS マネジメントコンソール、AWS CLI、または ACMAPI を使用して、ACM に証明書をインポートできます。次のトピックでは、AWS マネジメントコンソール および AWS CLI を使用する方法を示します。

トピック• コンソールを使用してインポートする (p. 48)• AWS CLI を使用してインポートする (p. 49)

コンソールを使用してインポートする次の例では、AWS マネジメントコンソール を使用して証明書をインポートする方法を示しています。

Version 1.0-48

Page 55: AWS Certificate Manager - ユーザーガイド · 2018-07-13 · AWS Certificate Manager ユーザーガイド Table of Contents AWS Certificate Manager とは何ですか?.....

AWS Certificate Manager ユーザーガイドAWS CLI を使用してインポートする

1. https://console.aws.amazon.com/acm/home で ACM コンソールを開きます。2. [Import a certificate] を選択します。3. 次の作業を行います。

a. 証明書本文の場合、インポートする PEM エンコードされた証明書を貼り付けます。b. 証明書のプライベートキーの場合、PEM エンコードされ、証明書のパブリックキーに一致する暗

号化されていないプライベートキーを貼り付けます。Important

現在、AWS Certificate Manager に統合されるサービス (p. 9) は RSA_1024 およびRSA_2048 アルゴリズムのみをサポートしています。

c. (オプション) [証明書チェーン] では、PEM エンコードされた証明書チェーンを貼り付けます。4. [Review and import] を選択します。5. 証明書に関する情報を確認し、[Import] を選択します。

AWS CLI を使用してインポートする次の例では AWS Command Line Interface (AWS CLI) を使用して証明書をインポートする方法を示しています。例では、次のように想定しています。

• PEM エンコードされた証明書は、Certificate.pem というファイルに保存されます。• PEM エンコードされた証明書チェーンは、CertificateChain.pem というファイルに保存されま

す。• PEM エンコードされ、非暗号化されたプライベートキーは、PrivateKey.pem というファイルに保存

されます。

次の例を使用するには、ファイル名を独自の名前に置き換えて、ひと続きの行にコマンドを入力します。次の例では、読みやすくするために改行とスペースを追加しています。

$ aws acm import-certificate --certificate file://Certificate.pem --certificate-chain file://CertificateChain.pem --private-key file://PrivateKey.pem

import-certificate コマンドが成功した場合、インポートされた証明書の Amazon リソースネーム(ARN) が返されます。

証明書の再インポート証明書をインポートしてそれを他の AWS サービスに関連付けた場合は、元の証明書の AWS サービスの関連付けを維持しながら、期限が切れる前にその証明書を再インポートすることができます。ACM に統合される AWS サービスについての詳細は、「AWS Certificate Manager に統合されるサービス (p. 9)」を参照してください。

証明書を再インポートする場合は次の条件が適用されます。

• ドメイン名を追加または削除できます。• 証明書からすべてのドメイン名を削除することはできません。• 新しいキー用途拡張機能を追加できますが、既存の拡張機能の値を削除することはできません。• 新しい拡張キー用途拡張機能を追加できますが、既存の拡張機能の値を削除することはできません。

Version 1.0-49

Page 56: AWS Certificate Manager - ユーザーガイド · 2018-07-13 · AWS Certificate Manager ユーザーガイド Table of Contents AWS Certificate Manager とは何ですか?.....

AWS Certificate Manager ユーザーガイドコンソールを使用した再インポート

• キーのタイプとサイズを変更することはできません。

トピック• コンソールを使用した再インポート (p. 50)• AWS CLI を使用した再インポート (p. 50)

コンソールを使用した再インポート次の例では、AWS マネジメントコンソール を使用して証明書を再インポートする方法を示しています。

1. https://console.aws.amazon.com/acm/home で ACM コンソールを開きます。2. 再インポートする証明書を選択または展開します。3. 証明書の詳細ペインを開き、[Reimport certificate] ボタンを選択します。名前の横にあるチェックボッ

クスをオンにして証明書を選択した場合は、[Actions] メニューの [Reimport certificate] を選択します。

4. 証明書の本文には、PEM エンコードされたエンドエンティティ証明書を貼り付けます。5. 証明書のプライベートキーの場合、証明書のパブリックキーに関連付けられた、暗号化されていない

PEM エンコード形式のプライベートキーを貼り付けます。Important

現在、AWS Certificate Manager に統合されるサービス (p. 9) は RSA_1024 およびRSA_2048 アルゴリズムのみをサポートしています。

6. (オプション) [証明書チェーン] では、PEM エンコードされた証明書チェーンを貼り付けます。証明書チェーンには、エンドエンティティ証明書、すべての中間発行証明機関のための 0 個以上の証明書、およびルート証明書が含まれます。

7. [Review and import] を選択します。8. 証明書に関する情報を確認します。エラーがない場合は、[Reimport] を選択します。

AWS CLI を使用した再インポート次の例では AWS Command Line Interface (AWS CLI) を使用して証明書を再インポートする方法を示しています。例では、次のように想定しています。

• PEM エンコードされた証明書は、Certificate.pem というファイルに保存されます。• PEM エンコードされた証明書チェーンは、CertificateChain.pem というファイルに保存されま

す。• PEM エンコードされ、非暗号化されたプライベートキーは、PrivateKey.pem というファイルに保存

されます。• 再インポートする証明書の ARN があります。

次の例を使用するには、ファイル名と ARN を自分のものに置き換えて、ひと続きの行にコマンドを入力します。次の例では、読みやすくするために改行とスペースを追加しています。

Note

証明書を再インポートするには、証明書 ARN を指定する必要があります。

$ aws acm import-certificate --certificate file://Certificate.pem --certificate-chain file://CertificateChain.pem --private-key file://PrivateKey.pem

Version 1.0-50

Page 57: AWS Certificate Manager - ユーザーガイド · 2018-07-13 · AWS Certificate Manager ユーザーガイド Table of Contents AWS Certificate Manager とは何ですか?.....

AWS Certificate Manager ユーザーガイドAWS CLI を使用した再インポート

--certificate-arn arn:aws:acm:region:123456789012:certificate/12345678-1234-1234-1234-12345678901

import-certificate コマンドが成功した場合、証明書の Amazon リソースネーム (ARN) が返されます。

Version 1.0-51

Page 58: AWS Certificate Manager - ユーザーガイド · 2018-07-13 · AWS Certificate Manager ユーザーガイド Table of Contents AWS Certificate Manager とは何ですか?.....

AWS Certificate Manager ユーザーガイドタグの制限

AWS Certificate Manager 証明書へのタグ付け

タグとは、ACM リソースに付けることができるラベルです。各タグは、キーと値から構成されます。AWS Certificate Manager コンソール、AWS Command Line Interface (AWS CLI)、または ACM APIを使用して、ACM 証明書のタグを追加、表示、または削除します。ACM コンソールに表示するタグを選択することができます。

必要に応じたカスタムタグを作成できます。たとえば、各 ACM 証明書が目的とする環境を識別するために、複数の ACM 証明書に Environment = Prod や Environment = Beta をタグ付けすることができます。次のリストでは、その他のカスタムタグの例をいくつか追加しています。

• Admin = Alice

• Purpose = Website

• Protocol = TLS

• Registrar = Route53

その他の AWS リソースもタグ付けをサポートしています。こうして同じタグを別々のリソースに割り当てることができ、これらのリソースが関連付けられることを示します。たとえば、ACM 証明書、ロードバランサー、そして example.com ウェブサイトで使用されるその他のリソースに Website =example.com のようなタグを割り当てることができます。

トピック• タグの制限 (p. 52)• タグを管理する (p. 52)

タグの制限ACM の証明書タグには以下のような基本制限があります。

• ACM の証明書あたりのタグの最大数は 50 です。• タグキーの最大長は 127 文字です。• タグ値の最大長は 255 文字です。• タグのキーと値は大文字と小文字が区別されます。• aws: プレフィックスは AWS 用に予約されています。aws: で始まるキーのタグを追加、編集、削除す

ることはできません。aws: で始まるタグは、リソースあたりのタグの制限にカウントされません。• 複数のサービス間およびリソース間でタグ付けスキーマを使用することを予定する場合、他のサービス

でも許可される文字に制限が適用されることがあるのでご注意ください。該当するサービスのドキュメントを参照してください。

• ACM 証明書のタグは、AWS マネジメントコンソール のリソースグループとタグエディタ内で使用することはできません。

タグを管理するタグを追加、編集、削除するには、AWS マネジメントコンソール、AWS Command Line Interface、または AWS Certificate ManagerAPI を使用します。

Version 1.0-52

Page 59: AWS Certificate Manager - ユーザーガイド · 2018-07-13 · AWS Certificate Manager ユーザーガイド Table of Contents AWS Certificate Manager とは何ですか?.....

AWS Certificate Manager ユーザーガイドタグの管理 (コンソール)

タグの管理 (コンソール)AWS マネジメントコンソール を使用してタグを追加、削除、または編集できます。タグを列で表示することもできます。

タグを追加する (コンソール)次の手順で、ACM コンソールを使用してタグを追加します。

証明書にタグを追加するには (コンソール)

1. AWS マネジメントコンソール にサインインし、https://console.aws.amazon.com/acm/home で AWSCertificate Manager コンソールを開きます。

2. タグを付加する証明書の横にある矢印を選択します。3. 詳細ペインで、[Tags] まで下へスクロールします。4. [Edit] と [Add Tag] を選択します。5. タグのキーと値を入力します。6. [Save] を選択します。

タグを削除するには (コンソール)次の手順で、ACM コンソールを使用してタグを削除します。

タグを削除するには (コンソール)

1. AWS マネジメントコンソール にサインインし、https://console.aws.amazon.com/acm/home で AWSCertificate Manager コンソールを開きます。

2. 削除するタグの証明書の横にある矢印を選択します。3. 詳細ペインで、[Tags] まで下へスクロールします。4. [Edit] を選択します。5. 削除するタグの横にある [X] を選択します。6. [Save] を選択します。

タグを編集する (コンソール)次の手順で、ACM コンソールを使用してタグを編集します。

タグを編集するには (コンソール)

1. AWS マネジメントコンソール にサインインし、https://console.aws.amazon.com/acm/home で AWSCertificate Manager コンソールを開きます。

2. 編集する証明書の横にある矢印を選択します。3. 詳細ペインで、[Tags] まで下へスクロールします。4. [Edit] を選択します。5. 編集するタグのキーまたは値を変更します。6. [Save] を選択します。

タグを列で表示する (コンソール)次の手順を使用して ACM コンソールでタグを列で表示します。

Version 1.0-53

Page 60: AWS Certificate Manager - ユーザーガイド · 2018-07-13 · AWS Certificate Manager ユーザーガイド Table of Contents AWS Certificate Manager とは何ですか?.....

AWS Certificate Manager ユーザーガイドタグの管理 (AWS Command Line Interface)

タグを列で表示するには (コンソール)

1. AWS マネジメントコンソール にサインインし、https://console.aws.amazon.com/acm/home で AWSCertificate Manager コンソールを開きます。

2.列として表示するタグを選択するには、歯車アイコン ) をコンソールの右上から選択します。

3. 列として表示するタグの横にあるチェックボックスをオンにします。

タグの管理 (AWS Command Line Interface)AWS CLI を使用してタグの追加、一覧表示、および削除する方法については、以下のトピックを参照してください

• add-tags-to-certificate

• list-tags-for-certificate

• remove-tags-from-certificate

タグの管理 (AWS Certificate ManagerAPI)API を使用してタグの追加、一覧表示、および削除する方法については、以下のトピックを参照してください

• AddTagsToCertificate

• ListTagsForCertificate

• RemoveTagsFromCertificate

Version 1.0-54

Page 61: AWS Certificate Manager - ユーザーガイド · 2018-07-13 · AWS Certificate Manager ユーザーガイド Table of Contents AWS Certificate Manager とは何ですか?.....

AWS Certificate Manager ユーザーガイド認証

認証とアクセスコントロールACM へのアクセスには、AWS によってリクエストの認証に使用される認証情報が必要です。認証情報には、ACM 証明書などの AWS リソースにアクセスするための権限が必要です。以下のセクションでは、AWS Identity and Access Management (IAM) と ACM を使用して、リソースにアクセスできるユーザーを制御することで、リソースをセキュリティで保護する方法について詳しく説明します。

トピック

• 認証 (p. 55)• アクセスコントロール (p. 56)

認証AWS には、次のタイプのアイデンティティでアクセスできます。

• AWS アカウントのルートユーザー – AWS アカウントを初めて作成する場合は、すべての AWS サービスとリソースに対して完全なアクセス権限を持つシングルサインイン ID で始めます。このアイデンティティは ルートユーザーと呼ばれ、AWS アカウントの作成に使用したメールアドレスとパスワードでのサインインによりアクセスされます。強くお勧めしているのは、日常的なタスクには、それが管理者タスクであっても、ルートユーザーを使用しないことです。代わりに、最初の IAM ユーザーを作成するためだけに ルートユーザーを使用するというベストプラクティスに従います。その後、ルートユーザー認証情報を安全な場所に保管し、それらを使用して少数のアカウントおよびサービス管理タスクのみを実行します。

• IAM ユーザー – IAM ユーザーは、特定のカスタム権限 (たとえば、ACM で a directory を作成するアクセス権限) を持つ AWS アカウント内のアイデンティティです。IAM のユーザー名とパスワードを使用して、AWS マネジメントコンソール、AWS ディスカッションフォーラム、AWS Support Center などのセキュリティ保護された AWS ウェブページにサインインできます。

 

ユーザー名とパスワードに加えて、各ユーザーのアクセスキーを生成することもできます。いくつかの SDK の 1 つまたは AWS Command Line Interface (CLI) を使ってプログラムで AWS サービスにアクセスするときに、これらのキーを使用します。SDK と CLI ツールでは、アクセスキーを使用してリクエストが暗号で署名されます。AWS ツールを使用しない場合は、リクエストに自分で署名する必要があります。ACM supports では、署名バージョン 4 がサポートされています。これは、インバウンドAPI リクエストを認証するためのプロトコルです。リクエストの認証の詳細については、AWS GeneralReferenceの「署名バージョン 4 の署名プロセス」を参照してください。

 • IAM ロール – IAM ロールは、特定のアクセス権限を持ち、アカウントで作成できる IAM アイデンティ

ティです。これは IAM ユーザーに似ていますが、特定のユーザーに関連付けられていません。IAM ロールでは、AWS サービスおよびリソースにアクセスするために使用できる一時的なアクセスキーを取得することができます。 IAM ロールと一時的な認証情報は以下の状況で役立ちます。

 • フェデレーティッドユーザーアクセス – IAM ユーザーを作成するのではなく、AWS Directory

Service、エンタープライズユーザーディレクトリ、またはウェブ ID プロバイダの既存のユーザー IDを使用することもできます。このようなユーザーはフェデレーティッドユーザーと呼ばれます。AWSでは、ID プロバイダーを通じてアクセスがリクエストされたとき、フェデレーティッドユーザーにロールを割り当てます。フェデレーティッドユーザーの詳細については、IAM ユーザーガイドの「フェデレーティッドユーザーとロール」を参照してください。

Version 1.0-55

Page 62: AWS Certificate Manager - ユーザーガイド · 2018-07-13 · AWS Certificate Manager ユーザーガイド Table of Contents AWS Certificate Manager とは何ですか?.....

AWS Certificate Manager ユーザーガイドアクセスコントロール

 • AWS サービスアクセス – アカウントの IAM ロールを使用して、アカウントのリソースにアクセスす

るための権限を AWS のサービスに付与できます。たとえば、Amazon Redshift がお客様に代わってAmazon S3 バケットにアクセスし、バケットからデータを Amazon Redshift クラスターにロードすることを許可するロールを作成できます。 詳細については、『IAM ユーザーガイド』の「AWS ユーザーにアクセス権限を委任するロールの作成」を参照してください。

 • Amazon EC2で実行されているアプリケーション – IAM ロールを使用して、EC2 インスタンスで実行

され、AWS API リクエストを作成しているアプリケーションの一時的な認証情報を管理できます。これは、EC2 インスタンス内でのアクセスキーの保存に推奨されます。AWS ロールを EC2 インスタンスに割り当て、そのすべてのアプリケーションで使用できるようにするには、インスタンスにアタッチされたインスタンスプロファイルを作成します。インスタンスプロファイルにはロールが含まれ、EC2 インスタンスで実行されるプログラムは一時認証情報を取得することができます。詳細については、IAM ユーザーガイドの「Amazon EC2 インスタンスで実行されるアプリケーションに IAMロールを使用してアクセス権限を付与する」を参照してください。

アクセスコントロール有効な認証情報があればリクエストを認証できますが、許可を持っていないかぎり ACM リソースの作成やアクセスはできません。たとえば、証明書を作成、インポート、取得、一覧表示する権限が必要です。

以下のトピックでは、権限を管理する方法について説明します。最初に概要のセクションを読むことをお勧めします。

• ACM リソースへのアクセス管理の概要 (p. 56)• AWS 管理ポリシー (p. 58)• カスタマー管理ポリシー (p. 59)• インラインポリシー (p. 59)• ACM API のアクセス権限: アクションとリソースのリファレンス (p. 62)

ACM リソースへのアクセス管理の概要すべての AWS リソースは AWS アカウントに属し、リソースの作成またはアクセスの権限はそのアカウントのアクセス権限ポリシーで定義されます。アカウント管理者は、IAM ID (ユーザー、グループ、ロール) にアクセス権限ポリシーをアタッチできます。一部のサービス (ACM など) は、権限ポリシーをリソースにアタッチすることができます。

Note

アカウント管理者 (または管理者ユーザー) は、管理者権限を持つユーザーです。詳細については、『IAM ユーザーガイド』の「管理者のユーザーおよびグループの作成」を参照してください。

アクセス権限を管理する場合、アクセス権限を取得するユーザー、そのユーザーがアクセス権限を取得するリソース、および許可される具体的なアクションを決定します。

トピック• ACM リソースおよびオペレーション (p. 57)• リソース所有権について (p. 57)• ACM 証明書へのアクセスの管理 (p. 57)

Version 1.0-56

Page 63: AWS Certificate Manager - ユーザーガイド · 2018-07-13 · AWS Certificate Manager ユーザーガイド Table of Contents AWS Certificate Manager とは何ですか?.....

AWS Certificate Manager ユーザーガイドACM リソースおよびオペレーション

ACM リソースおよびオペレーションACM では、プライマリリソースは証明書です。証明書には、次のリストに示すとおり、一意の Amazonリソースネーム (ARN) が関連付けられています。

• ACM 証明書

ARN 形式:

arn:aws:acm:AWS region:AWS account ID:certificate/Certificate ID

ARN の例:

arn:aws:acm:us-west-2:123456789012:certificate/12345678-12ab-34cd-56ef-12345678

リソース所有権についてリソース所有者は、リソースを作成した AWS アカウントです。つまり、リソース所有者は、そのリソースの作成リクエストを認証するプリンシパルエンティティの AWS アカウントです。(プリンシパルエンティティは、AWS アカウントのルートユーザー、IAM ユーザー、または IAM のロールです)。以下の例では、このしくみを示しています。

• AWS アカウントのルートユーザーの認証情報を使用して ACM 証明書を作成する場合、AWS アカウントは証明書を所有します。

• AWS アカウントで IAM ユーザを作成する場合、そのユーザに ACM 証明書を作成する権限を与えることができます。ただし、そのユーザーが所属するアカウントが証明書を所有しています。

• AWS アカウントで IAM ロールを作成して ACM 証明書を作成する権限を与えると、ロールを引き受けることができるいずれのユーザーも証明書を作成できます。ただし、そのロールが所属するアカウントが証明書を所有しています。

ACM 証明書へのアクセスの管理アクセスポリシーでは、誰が何にアクセスできるかを記述します。このセクションでは、アクセス権限のポリシーを作成するために使用可能なオプションについて説明します。

Note

このセクションでは、ACM のコンテキストでの IAM の使用について説明します。これは、IAMサービスに関する詳細情報を取得できません。完全な IAM ドキュメントについては、「IAM ユーザーガイド」を参照してください。IAM ポリシー構文の詳細および説明については、「AWS IAMポリシーの参照」を参照してください。

IAM を使用して、IAM ユーザー、グループ、および役割にアクセス許可を適用するポリシーを作成できます。これらはアイデンティティベースのポリシーと呼ばれます。IAM では、次のタイプのアイデンティティベースのポリシーを提供します。

• AWS 管理ポリシー – AWS によって作成および管理されるポリシー。これらは、AWS アカウント内の複数のユーザー、グループ、およびロールにアタッチできるスタンドアロンポリシーです。

• カスタマー管理ポリシー - AWS アカウントで作成および管理し、複数のユーザー、グループ、および役割に割り当てることができるポリシー。AWS 管理ポリシーを使用する場合よりも、カスタマー管理ポリシーを使用するときに、より正確に管理できます。

• インラインポリシー – 作成、管理し、単一のユーザー、グループ、または役割に直接組み込むポリシー。

Version 1.0-57

Page 64: AWS Certificate Manager - ユーザーガイド · 2018-07-13 · AWS Certificate Manager ユーザーガイド Table of Contents AWS Certificate Manager とは何ですか?.....

AWS Certificate Manager ユーザーガイドAWS 管理ポリシー

Amazon S3 などの他のサービスでは、リソースベースのアクセス権限ポリシーもサポートされています。たとえば、ポリシーを Amazon S3 バケットにアタッチして、そのバケットに対するアクセス権限を管理できます。 ACM では、リソースベースのポリシーはサポートされていません。

AWS 管理ポリシーAWS 管理ポリシーは、AWS アカウント内の複数のユーザー、グループ、およびロールにアタッチできるスタンドアロンアイデンティティベースのポリシーです。AWS 管理ポリシーは、AWS によって作成されて管理されます。次の AWS 管理ポリシーは、ACM で利用できます。ユーザー、グループ、またはロールに管理ポリシーをアタッチする詳細については、IAM ユーザーガイド の「管理ポリシーの使用」を参照してください。

AWS 管理ポリシーを使用するには、管理者権限を持つユーザーによってユーザー、ロール、グループにポリシーがアタッチされる必要があります。AWS 管理ポリシーのアタッチの詳細については、IAM ユーザーガイド で「管理ポリシーのアタッチ」を参照してください。

トピック• AWSCertificateManagerReadOnly (p. 58)• AWSCertificateManagerFullAccess (p. 58)

AWSCertificateManagerReadOnlyこのポリシーは、ACM 証明書への読み取り専用アクセスを提供します。これにより、ユーザーは、概要表示、一覧表示、そして ACM 証明書の取得ができます。

{ "Version": "2012-10-17", "Statement": { "Effect": "Allow", "Action": [ "acm:DescribeCertificate", "acm:ListCertificates", "acm:GetCertificate", "acm:ListTagsForCertificate" ], "Resource": "*" }}

コンソールでこの AWS 管理ポリシーを表示するには、https://console.aws.amazon.com/iam/home#policies/arn:aws:iam::aws:policy/AWSCertificateManagerReadOnly にアクセスします。

AWSCertificateManagerFullAccessこのポリシーは、すべての ACM アクションとリソースへのフルアクセスを提供します。

{ "Version": "2012-10-17", "Statement": [{ "Effect": "Allow", "Action": ["acm:*"], "Resource": "*"

Version 1.0-58

Page 65: AWS Certificate Manager - ユーザーガイド · 2018-07-13 · AWS Certificate Manager ユーザーガイド Table of Contents AWS Certificate Manager とは何ですか?.....

AWS Certificate Manager ユーザーガイドカスタマー管理ポリシー

}]}

コンソールでこの AWS 管理ポリシーを表示するには、https://console.aws.amazon.com/iam/home#policies/arn:aws:iam::aws:policy/AWSCertificateManagerFullAccess にアクセスします。

カスタマー管理ポリシーカスタマー管理ポリシーは、作成したスタンドアロンの ID ベースのポリシーで、AWS アカウントの複数のユーザー、グループ、またはロールにアタッチすることができます。AWS マネジメントコンソール、AWS Command Line Interface (AWS CLI)、または IAM API を使用してポリシーを管理および作成できます。詳細については、「カスタマー管理ポリシー」を参照してください。

インラインポリシーインラインポリシーとは、単一のユーザー、グループ、または役割りを作成、管理、または直接組み込むポリシーです。以下のポリシーの例は、ACM アクションを実行するための権限を割り当てる方法を説明します。インラインポリシーのアタッチの詳細については、IAM ユーザーガイド で「インラインポリシーの使用」を参照してください。AWS マネジメントコンソール、AWS Command Line Interface (AWS CLI)、または IAM API を使用して、ポリシーを作成して埋め込むことができます。

トピック• 証明書の一覧 (p. 59)• 証明書を取得する (p. 60)• 証明書のインポート (p. 60)• 証明書の削除 (p. 60)• ACM への読み取り専用アクセス (p. 60)• ACM への完全アクセス (p. 61)• すべての AWS リソースへの管理者アクセス (p. 61)

証明書の一覧次のポリシーを使用すると、ユーザーはユーザーアカウントのすべての ACM 証明書を一覧表示できます。

{ "Version": "2012-10-17", "Statement": [{ "Effect": "Allow", "Action": "acm:ListCertificates", "Resource": "*" }]}

Note

Elastic Load Balancing と CloudFront コンソールに ACM 証明書を表示するためには、この権限が必要です。

Version 1.0-59

Page 66: AWS Certificate Manager - ユーザーガイド · 2018-07-13 · AWS Certificate Manager ユーザーガイド Table of Contents AWS Certificate Manager とは何ですか?.....

AWS Certificate Manager ユーザーガイド証明書を取得する

証明書を取得する次のポリシーを使用すると、ユーザーは特定の ACM 証明書を取得できます。

{ "Version": "2012-10-17", "Statement": { "Effect": "Allow", "Action": "acm:GetCertificate", "Resource": "arn:aws:acm:us-east-1:123456789012:certificate/12345678-1234-1234-1234-123456789012" }}

証明書のインポート次のポリシーを使用すると、ユーザーは証明書をインポートできます。

{ "Version": "2012-10-17", "Statement": { "Effect": "Allow", "Action": "acm:ImportCertificate", "Resource": "arn:aws:acm:ap-northeast-1:123456789012:certificate/12345678-1234-1234-1234-123456789012" }}

証明書の削除次のポリシーを使用すると、ユーザーは特定の ACM 証明書を削除できます。

{ "Version": "2012-10-17", "Statement": { "Effect": "Allow", "Action": "acm:DeleteCertificate", "Resource": "arn:aws:acm:us-east-1:123456789012:certificate/12345678-1234-1234-1234-123456789012" }}

ACM への読み取り専用アクセス次のポリシーを使用すると、ユーザーは ACM 証明書を説明、一覧表示し、また、ACM 証明書と署名書チェーンを取得できます。

{ "Version": "2012-10-17", "Statement": { "Effect": "Allow",

Version 1.0-60

Page 67: AWS Certificate Manager - ユーザーガイド · 2018-07-13 · AWS Certificate Manager ユーザーガイド Table of Contents AWS Certificate Manager とは何ですか?.....

AWS Certificate Manager ユーザーガイドACM への完全アクセス

"Action": [ "acm:DescribeCertificate", "acm:ListCertificates", "acm:GetCertificate", "acm:ListTagsForCertificate" ], "Resource": "*" }}

Note

このポリシーは、AWS マネジメントコンソール で AWS の管理ポリシーとして使用できます。詳細については、「AWSCertificateManagerReadOnly (p. 58)」を参照してください。コンソールで管理ポリシーを表示するには、https://console.aws.amazon.com/iam/home#policies/arn:aws:iam::aws:policy/AWSCertificateManagerReadOnly にアクセスします。

ACM への完全アクセス次のポリシーを使用すると、ユーザーは任意の ACM アクションを実行できます。

{ "Version": "2012-10-17", "Statement": [{ "Effect": "Allow", "Action": ["acm:*"], "Resource": "*" }]}

Note

このポリシーは、AWS マネジメントコンソール で AWS の管理ポリシーとして使用できます。詳細については、「AWSCertificateManagerFullAccess (p. 58)」を参照してください。コンソールで管理ポリシーを表示するには、https://console.aws.amazon.com/iam/home#policies/arn:aws:iam::aws:policy/AWSCertificateManagerFullAccess にアクセスします。

すべての AWS リソースへの管理者アクセス次のポリシーを使用すると、ユーザーは任意の AWS リソースで任意のアクションを実行できます。

{ "Version": "2012-10-17", "Statement": [{ "Effect": "Allow", "Action": "*", "Resource": "*" }]}

Note

このポリシーは、AWS マネジメントコンソール で AWS の管理ポリシーとして使用できます。コンソールで管理ポリシーを表示するには、https://console.aws.amazon.com/iam/home#policies/arn:aws:iam::aws:policy/AdministratorAccess にアクセスします。

Version 1.0-61

Page 68: AWS Certificate Manager - ユーザーガイド · 2018-07-13 · AWS Certificate Manager ユーザーガイド Table of Contents AWS Certificate Manager とは何ですか?.....

AWS Certificate Manager ユーザーガイドACM API の権限リファレンス

ACM API のアクセス権限: アクションとリソースのリファレンス

アクセスコントロール (p. 56)をセットアップし、IAM アイデンティティ (アイデンティティベースのポリシー) にアタッチできるアクセス権限ポリシーを作成する際、以下の表をリファレンスとして使用できます。表の最初の列には、各 ACM API オペレーションが一覧表示されます。ポリシーの Action 要素でアクションを指定します。残りの列では、追加情報が示されます。

ACM ポリシーの IAM ポリシー要素を使用して、条件を表現できます。完全なリストについては、IAMユーザーガイド の「利用可能なキー」を参照してください。

Note

アクションを指定するには、API オペレーション名 (acm:RequestCertificate など) の前にacm: プレフィックスを使用します。

ACM API オペレーションとアクセス権限

ACM API オペレーション 必要なアクセス権限 (API アクション)

リソース

AddTagsToCertificate acm:AddTagsToCertificate arn:aws:acm:AWS_region:AWS_account_ID:certificate/certificate_ID

DeleteCertificate acm:DeleteCertificate arn:aws:acm:AWS_region:AWS_account_ID:certificate/certificate_ID

DescribeCertificates acm:DescribeCertificate arn:aws:acm:AWS_region:AWS_account_ID:certificate/certificate_ID

ExportCertificate acm:ExportCertificate arn:aws:acm:AWS_region:AWS_account_ID:certificate/certificate_ID

GetCertificate acm:GetCertificate arn:aws:acm:AWS_region:AWS_account_ID:certificate/certificate_ID

ImportCertificate acm:ImportCertificate arn:aws:acm:AWS_region:AWS_account_ID:certificate/certificate_ID

ListCertificates acm:ListCertificates arn:aws:acm:AWS_region:AWS_account_ID:certificate/certificate_ID

ListTagsForCertificate acm:ListTagsForCertificate arn:aws:acm:AWS_region:AWS_account_ID:certificate/certificate_ID

RemoveTagsFromCertificate acm:RemoveTagsFromCertificatearn:aws:acm:AWS_region:AWS_account_ID:certificate/certificate_ID

RequestCertificate acm:RequestCertificate arn:aws:acm:AWS_region:AWS_account_ID:certificate/certificate_ID

ResendValidationEmail acm:ResendValidationEmail arn:aws:acm:AWS_region:AWS_account_ID:certificate/certificate_ID

Version 1.0-62

Page 69: AWS Certificate Manager - ユーザーガイド · 2018-07-13 · AWS Certificate Manager ユーザーガイド Table of Contents AWS Certificate Manager とは何ですか?.....

AWS Certificate Manager ユーザーガイドACM API 呼び出しのログ作成

AWS CloudTrail を使用する次のトピックで説明するように、CloudTrail を使用して、AWS Certificate Manager および ACM に統合されたサービスによって行われた API 呼び出しを記録することができます。

トピック• AWS CloudTrail を使用した AWS Certificate Manager API 呼び出しのログ作成 (p. 63)• ACM 関連の API 呼び出しのログ記録 (p. 72)

AWS CloudTrail を使用した AWS CertificateManager API 呼び出しのログ作成

AWS Certificate Manager (ACM) は、API コールをキャプチャし、ログファイルを指定された AmazonSimple Storage Service (Amazon S3) バケットに配信し、API コール履歴を維持するサービスを提供するAWS CloudTrail に統合されます。CloudTrail は AWS Certificate Manager コンソール、CLI、または自身のコードから行われた API コールを記録します。CloudTrail によって収集された情報を使用すると、ACMに対してどのようなリクエストが行われたかを判断することができます。リクエストの作成元の IP アドレス、リクエストの実行者、リクエストの実行日時などです。

CloudTrail を設定して有効にする方法など、CloudTrail の詳細については、AWS CloudTrail User Guide を参照してください。

AWS アカウントで CloudTrail のログ記録を有効にすると、ACM アクションに対する API 呼び出しがCloudTrail ログファイルに記録されます。ACM レコードは、他の AWS サービスレコードとともに書き込まれます。CloudTrail は、期間とファイルサイズに基づいて、新しいログファイルをいつ作成して書き込むかを決定します。

以下の ACM アクションがサポートされています。

• AddTagsToCertificate• DeleteCertificate• DescribeCertificates• ExportCertificate• GetCertificate• ImportCertificate• ListCertificates• ListTagsForCertificate• RemoveTagsFromCertificate• RequestCertificate• ResendValidationEmail

各ログエントリには、誰がリクエストを生成したかに関する情報が含まれます。ログエントリのユーザーID 情報は、リクエストの送信にルートまたは IAM ユーザーの認証情報が使用されたか、ロールまたはフェデレーションユーザーの一時的なセキュリティ認証情報が使用されたか、あるいは別の AWS サービスによって送信されたかを確認するのに役立ちます。詳細については、「CloudTrail userIdentity 要素」を参照してください。

Version 1.0-63

Page 70: AWS Certificate Manager - ユーザーガイド · 2018-07-13 · AWS Certificate Manager ユーザーガイド Table of Contents AWS Certificate Manager とは何ですか?.....

AWS Certificate Manager ユーザーガイドタグを追加する

ログファイルは無期限に保管できますが、ログファイルを自動的にアーカイブまたは削除するようにAmazon S3 ライフサイクルルールを定義することもできます。 デフォルトでは Amazon S3 のサーバー側の暗号化 (SSE) を使用して、ログファイルが暗号化されます。

ログファイルの配信時にすぐにアクションを実行する場合、新しいログの配信時に CloudTrail によりAmazon SNS 通知を発行することを選択できます。詳細については、AWS CloudTrail ユーザーガイドの「CloudTrail 用の Amazon SNS 通知の構成 」を参照してください。

また、複数の AWS リージョンと複数の AWS アカウントの AWS Certificate Manager ログファイルを 1つの Amazon S3 バケットに集約することもできます。詳細は、「Receiving CloudTrail Log Files fromMultiple Regions」と「Receiving CloudTrail Log Files from Multiple Accounts」を参照してください。

CloudTrail ログファイルには、複数の JSON 形式イベントがリストされる 1 つ以上のログエントリを記録できます。ログエントリは任意の送信元からの単一のリクエストを表し、リクエストされたアクション、アクションの日時、リクエストのパラメーターなどに関する情報が含まれます。ログエントリは、特定の順序になるように生成されるわけではありません。つまり、パブリック API 呼び出しの順序付けられたトレースではありません。ログエントリを構成するフィールドの詳細については、「CloudTrail イベントリファレンス」を参照してください。

可能な ACMCloudTrail エントリの例については、以下のトピックを参照してください。

トピック• 証明書にタグを追加する (p. 64)• 証明書の削除 (p. 65)• 証明書についての説明 (p. 65)• 証明書のエクスポート (p. 66)• 証明書のインポート (p. 67)• 証明書の一覧 (p. 68)• 証明書のタグを一覧表示する (p. 69)• 証明書からタグを削除する (p. 70)• 証明書のリクエスト (p. 70)• 検証 E メールの再送信 (p. 71)• 証明書を取得する (p. 72)

証明書にタグを追加する次の CloudTrail の例は、AddTagsToCertificate API への呼び出しの結果を示しています。

{ Records: [{ eventVersion: "1.04", userIdentity: { type: "IAMUser", principalId: "AIDACKCEVSQ6C2EXAMPLE", arn: "arn:aws:iam::123456789012:user/Alice", accountId: "123456789012", accessKeyId: "AKIAIOSFODNN7EXAMPLE", userName: "Alice" }, eventTime: "2016-04-06T13:53:53Z", eventSource: "acm.amazonaws.com", eventName: "AddTagsToCertificate", awsRegion: "us-east-1", sourceIPAddress: "192.0.2.0", userAgent: "aws-cli/1.10.16",

Version 1.0-64

Page 71: AWS Certificate Manager - ユーザーガイド · 2018-07-13 · AWS Certificate Manager ユーザーガイド Table of Contents AWS Certificate Manager とは何ですか?.....

AWS Certificate Manager ユーザーガイド証明書の削除

requestParameters: { tags: [{ value: "Alice", key: "Admin" }], certificateArn: "arn:aws:acm:us-east-1:123456789012:certificate/12345678-1234-1234-1234-123456789012" }, responseElements: null, requestID: "ffd7dd1b-fbfe-11e5-ba7b-5f4e988901f9", eventID: "4e7b10bb-7010-4e60-8376-0cac3bc860a5", eventType: "AwsApiCall", recipientAccountId: "123456789012" }]}

証明書の削除次の CloudTrail の例は、DeleteCertificate API への呼び出しの結果を示しています。

{ "Records": [{ "eventVersion": "1.04", "userIdentity": { "type": "IAMUser", "principalId": "AIDACKCEVSQ6C2EXAMPLE", "arn": "arn:aws:iam::123456789012:user/Alice", "accountId": "123456789012", "accessKeyId": "AKIAIOSFODNN7EXAMPLE", "userName": "Alice" }, "eventTime": "2016-03-18T00:00:26Z", "eventSource": "acm.amazonaws.com", "eventName": "DeleteCertificate", "awsRegion": "us-east-1", "sourceIPAddress": "192.0.2.0", "userAgent": "aws-cli/1.9.15", "requestParameters": { "certificateArn": "arn:aws:acm:us-east-1:123456789012:certificate/12345678-1234-1234-1234-123456789012" }, "responseElements": null, "requestID": "6b0f5bb9-ec9c-11e5-a28b-51e7e3169e0f", "eventID": "08f18f8a-a827-4924-b864-afaf98517793", "eventType": "AwsApiCall", "recipientAccountId": "123456789012" }]}

証明書についての説明次の CloudTrail の例は、DescribeCertificate API への呼び出しの結果を示しています。

Note

DescribeCertificate アクションの CloudTrail ログは、指定する ACM 証明書についての情報を表示しません。コンソール、AWS Command Line Interface、または DescribeCertificates APIを使用して、証明書についての情報を表示できます。

Version 1.0-65

Page 72: AWS Certificate Manager - ユーザーガイド · 2018-07-13 · AWS Certificate Manager ユーザーガイド Table of Contents AWS Certificate Manager とは何ですか?.....

AWS Certificate Manager ユーザーガイド証明書のエクスポート

{ "Records": [{ "eventVersion": "1.04", "userIdentity": { "type": "IAMUser", "principalId": "AIDACKCEVSQ6C2EXAMPLE", "arn": "arn:aws:iam::123456789012:user/Alice", "accountId": "123456789012", "accessKeyId": "AKIAIOSFODNN7EXAMPLE", "userName": "Alice" }, "eventTime": "2016-03-18T00:00:42Z", "eventSource": "acm.amazonaws.com", "eventName": "DescribeCertificate", "awsRegion": "us-east-1", "sourceIPAddress": "192.0.2.0", "userAgent": "aws-cli/1.9.15", "requestParameters": { "certificateArn": "arn:aws:acm:us-east-1:123456789012:certificate/12345678-1234-1234-1234-123456789012" }, "responseElements": null, "requestID": "74b91d83-ec9c-11e5-ac34-d1e4dfe1a11b", "eventID": "7779b6da-75c2-4994-b8c1-af3ad47b518a", "eventType": "AwsApiCall", "recipientAccountId": "123456789012" }]}

証明書のエクスポート次の CloudTrail の例は、ExportCertificate API への呼び出しの結果を示しています。

{ "Records": [{ "version": "0", "id": "12345678-1234-1234-1234-123456789012" "detail-type": "AWS API Call via CloudTrail", "source": "aws.acm", "account": "123456789012", "time": "2018-05-24T15:28:11Z", "region": "us-east-1", "resources": [], "detail": { "eventVersion": "1.04", "userIdentity": { "type": "Root", "principalId": "123456789012", "arn": "arn:aws:iam::123456789012:user/Alice", "accountId": "123456789012", "accessKeyId": "AKIAIOSFODNN7EXAMPLE", "userName": "Alice" }, "eventTime": "2018-05-24T15:28:11Z", "eventSource": "acm.amazonaws.com", "eventName": "ExportCertificate", "awsRegion": "us-east-1", "sourceIPAddress": "192.0.2.0", "userAgent": "aws-cli/1.15.4 Python/2.7.9 Windows/8 botocore/1.10.4", "requestParameters": { "passphrase": { "hb": [42, 42, 42,

Version 1.0-66

Page 73: AWS Certificate Manager - ユーザーガイド · 2018-07-13 · AWS Certificate Manager ユーザーガイド Table of Contents AWS Certificate Manager とは何ですか?.....

AWS Certificate Manager ユーザーガイド証明書のインポート

42, 42, 42, 42, 42, 42, 42], "offset": 0, "isReadOnly": false, "bigEndian": true, "nativeByteOrder": false, "mark": -1, "position": 0, "limit": 10, "capacity": 10, "address": 0 }, "certificateArn": "arn:aws:acm:us-east-1:123456789012:certificate/12345678-1234-1234-1234-123456789012" }, "responseElements": { "certificateChain": "-----BEGIN CERTIFICATE----- base64 certificate -----END CERTIFICATE-----\n" -----BEGIN CERTIFICATE----- base64 certificate -----END CERTIFICATE-----\n", "privateKey": "**********", "certificate": "-----BEGIN CERTIFICATE----- base64 certificate -----END CERTIFICATE-----\n" }, "requestID": "11802113-5f67-11e8-bc6b-d93a70b3bedf", "eventID": "5b66558e-27c5-43b0-9b3a-10f28c527453", "eventType": "AwsApiCall" }}]

証明書のインポートACM の ImportCertificate API オペレーションへの呼び出しを記録する CloudTrail のログエントリの例を次に示します。

{ "eventVersion": "1.04", "userIdentity": { "type": "IAMUser", "principalId": "AIDACKCEVSQ6C2EXAMPLE", "arn": "arn:aws:iam::111122223333:user/Alice", "accountId": "111122223333", "accessKeyId": "AKIAIOSFODNN7EXAMPLE", "userName": "Alice" }, "eventTime": "2016-10-04T16:01:30Z", "eventSource": "acm.amazonaws.com", "eventName": "ImportCertificate", "awsRegion": "ap-southeast-2", "sourceIPAddress": "54.240.193.129", "userAgent": "Coral/Netty", "requestParameters": { "privateKey": { "hb": [ byte, byte, byte, ... ],

Version 1.0-67

Page 74: AWS Certificate Manager - ユーザーガイド · 2018-07-13 · AWS Certificate Manager ユーザーガイド Table of Contents AWS Certificate Manager とは何ですか?.....

AWS Certificate Manager ユーザーガイド証明書の一覧

"offset": 0, "isReadOnly": false, "bigEndian": true, "nativeByteOrder": false, "mark": -1, "position": 0, "limit": 1674, "capacity": 1674, "address": 0 }, "certificateChain": { "hb": [ byte, byte, byte, ... ], "offset": 0, "isReadOnly": false, "bigEndian": true, "nativeByteOrder": false, "mark": -1, "position": 0, "limit": 2105, "capacity": 2105, "address": 0 }, "certificate": { "hb": [ byte, byte, byte, ... ], "offset": 0, "isReadOnly": false, "bigEndian": true, "nativeByteOrder": false, "mark": -1, "position": 0, "limit": 2503, "capacity": 2503, "address": 0 } }, "responseElements": { "certificateArn": "arn:aws:acm:ap-southeast-2:111122223333:certificate/6ae06649-ea82-4b58-90ee-dc05870d7e99" }, "requestID": "cf1f3db7-8a4b-11e6-88c8-196af94bb7be", "eventID": "fb443118-bfaa-4c90-95c1-beef21e07f8e", "eventType": "AwsApiCall", "recipientAccountId": "111122223333"}

証明書の一覧次の CloudTrail の例は、ListCertificates API への呼び出しの結果を示しています。

Note

ListCertificates アクションの CloudTrail ログに ACM 証明書は表示されません。証明書のリストを表示するには、コンソール、AWS Command Line Interface、または ListCertificates APIを使用します。

Version 1.0-68

Page 75: AWS Certificate Manager - ユーザーガイド · 2018-07-13 · AWS Certificate Manager ユーザーガイド Table of Contents AWS Certificate Manager とは何ですか?.....

AWS Certificate Manager ユーザーガイドタグをリスト表示する

{ "Records": [{ "eventVersion": "1.04", "userIdentity": { "type": "IAMUser", "principalId": "AIDACKCEVSQ6C2EXAMPLE", "arn": "arn:aws:iam::123456789012:user/Alice", "accountId": "123456789012", "accessKeyId": "AKIAIOSFODNN7EXAMPLE", "userName": "Alice" }, "eventTime": "2016-03-18T00:00:43Z", "eventSource": "acm.amazonaws.com", "eventName": "ListCertificates", "awsRegion": "us-east-1", "sourceIPAddress": "192.0.2.0", "userAgent": "aws-cli/1.9.15", "requestParameters": { "maxItems": 1000, "certificateStatuses": ["ISSUED"] }, "responseElements": null, "requestID": "74c99844-ec9c-11e5-ac34-d1e4dfe1a11b", "eventID": "cdfe1051-88aa-4aa3-8c33-a325270bff21", "eventType": "AwsApiCall", "recipientAccountId": "123456789012" }]}

証明書のタグを一覧表示する次の CloudTrail の例は、ListTagsForCertificate API への呼び出しの結果を示しています。

Note

ListTagsForCertificate アクションの CloudTrail ログにタグは表示されません。コンソール、AWS Command Line Interface、または ListTagsForCertificate API を使用して、タグのリストを表示できます。

{ Records: [{ eventVersion: "1.04", userIdentity: { type: "IAMUser", principalId: "AIDACKCEVSQ6C2EXAMPLE", arn: "arn:aws:iam::123456789012:user/Alice", accountId: "123456789012", accessKeyId: "AKIAIOSFODNN7EXAMPLE", userName: "Alice" }, eventTime: "2016-04-06T13:30:11Z", eventSource: "acm.amazonaws.com", eventName: "ListTagsForCertificate", awsRegion: "us-east-1", sourceIPAddress: "192.0.2.0", userAgent: "aws-cli/1.10.16", requestParameters: { certificateArn: "arn:aws:acm:us-east-1:123456789012:certificate/12345678-1234-1234-1234-123456789012" },

Version 1.0-69

Page 76: AWS Certificate Manager - ユーザーガイド · 2018-07-13 · AWS Certificate Manager ユーザーガイド Table of Contents AWS Certificate Manager とは何ですか?.....

AWS Certificate Manager ユーザーガイドタグの削除

responseElements: null, requestID: "b010767f-fbfb-11e5-b596-79e9a97a2544", eventID: "32181be6-a4a0-48d3-8014-c0d972b5163b", eventType: "AwsApiCall", recipientAccountId: "123456789012" }]}

証明書からタグを削除する次の CloudTrail の例は、RemoveTagsFromCertificate API への呼び出しの結果を示しています。

{ Records: [{ eventVersion: "1.04", userIdentity: { type: "IAMUser", principalId: "AIDACKCEVSQ6C2EXAMPLE", arn: "arn:aws:iam::123456789012:user/Alice", accountId: "123456789012", accessKeyId: "AKIAIOSFODNN7EXAMPLE", userName: "Alice" }, eventTime: "2016-04-06T14:10:01Z", eventSource: "acm.amazonaws.com", eventName: "RemoveTagsFromCertificate", awsRegion: "us-east-1", sourceIPAddress: "192.0.2.0", userAgent: "aws-cli/1.10.16", requestParameters: { certificateArn: "arn:aws:acm:us-east-1:123456789012:certificate/12345678-1234-1234-1234-123456789012", tags: [{ value: "Bob", key: "Admin" }] }, responseElements: null, requestID: "40ded461-fc01-11e5-a747-85804766d6c9", eventID: "0cfa142e-ef74-4b21-9515-47197780c424", eventType: "AwsApiCall", recipientAccountId: "123456789012" }]}

証明書のリクエスト次の CloudTrail の例は、RequestCertificate API への呼び出しの結果を示しています。

{ "Records": [{ "eventVersion": "1.04", "userIdentity": { "type": "IAMUser", "principalId": "AIDACKCEVSQ6C2EXAMPLE", "arn": "arn:aws:iam::123456789012:user/Alice", "accountId": "123456789012", "accessKeyId": "AKIAIOSFODNN7EXAMPLE", "userName": "Alice"

Version 1.0-70

Page 77: AWS Certificate Manager - ユーザーガイド · 2018-07-13 · AWS Certificate Manager ユーザーガイド Table of Contents AWS Certificate Manager とは何ですか?.....

AWS Certificate Manager ユーザーガイドE メールの再送信

}, "eventTime": "2016-03-18T00:00:49Z", "eventSource": "acm.amazonaws.com", "eventName": "RequestCertificate", "awsRegion": "us-east-1", "sourceIPAddress": "192.0.2.0", "userAgent": "aws-cli/1.9.15", "requestParameters": { "subjectAlternativeNames": ["example.net"], "domainName": "example.com", "domainValidationOptions": [{ "domainName": "example.com", "validationDomain": "example.com" }, { "domainName": "example.net", "validationDomain": "example.net" }], "idempotencyToken": "8186023d89681c3ad5" }, "responseElements": { "certificateArn": "arn:aws:acm:us-east-1:123456789012:certificate/12345678-1234-1234-1234-123456789012" }, "requestID": "77dacef3-ec9c-11e5-ac34-d1e4dfe1a11b", "eventID": "a4954cdb-8f38-44c7-8927-a38ad4be3ac8", "eventType": "AwsApiCall", "recipientAccountId": "123456789012" }]}

検証 E メールの再送信次の CloudTrail の例は、ResendValidationEmail API への呼び出しの結果を示しています。

{ "Records": [{ "eventVersion": "1.04", "userIdentity": { "type": "IAMUser", "principalId": "AIDACKCEVSQ6C2EXAMPLE", "arn": "arn:aws:iam::123456789012:user/Alice", "accountId": "123456789012", "accessKeyId": "AKIAIOSFODNN7EXAMPLE", "userName": "Alice" }, "eventTime": "2016-03-17T23:58:25Z", "eventSource": "acm.amazonaws.com", "eventName": "ResendValidationEmail", "awsRegion": "us-east-1", "sourceIPAddress": "192.0.2.0", "userAgent": "aws-cli/1.9.15", "requestParameters": { "domain": "example.com", "certificateArn": "arn:aws:acm:us-east-1:123456789012:certificate/12345678-1234-1234-1234-123456789012", "validationDomain": "example.com" }, "responseElements": null, "requestID": "23760b88-ec9c-11e5-b6f4-cb861a6f0a28", "eventID": "41c11b06-ca91-4c1c-8c61-af349ea8bab8", "eventType": "AwsApiCall",

Version 1.0-71

Page 78: AWS Certificate Manager - ユーザーガイド · 2018-07-13 · AWS Certificate Manager ユーザーガイド Table of Contents AWS Certificate Manager とは何ですか?.....

AWS Certificate Manager ユーザーガイド証明書を取得する

"recipientAccountId": "123456789012" }]}

証明書を取得する次の CloudTrail の例は、GetCertificate API への呼び出しの結果を示しています。

{ "Records": [{ "eventVersion": "1.04", "userIdentity": { "type": "IAMUser", "principalId": "AIDACKCEVSQ6C2EXAMPLE", "arn": "arn:aws:iam::123456789012:user/Alice", "accountId": "123456789012", "accessKeyId": "AKIAIOSFODNN7EXAMPLE", "userName": "Alice" }, "eventTime": "2016-03-18T00:00:41Z", "eventSource": "acm.amazonaws.com", "eventName": "GetCertificate", "awsRegion": "us-east-1", "sourceIPAddress": "192.0.2.0", "userAgent": "aws-cli/1.9.15", "requestParameters": { "certificateArn": "arn:aws:acm:us-east-1:123456789012:certificate/12345678-1234-1234-1234-123456789012" }, "responseElements": { "certificateChain": "-----BEGIN CERTIFICATE----- Base64-encoded certificate chain -----END CERTIFICATE-----", "certificate": "-----BEGIN CERTIFICATE----- Base64-encoded certificate -----END CERTIFICATE-----" }, "requestID": "744dd891-ec9c-11e5-ac34-d1e4dfe1a11b", "eventID": "7aa4f909-00dd-478a-9a00-b2709bcad2bb", "eventType": "AwsApiCall", "recipientAccountId": "123456789012" }]}

ACM 関連の API 呼び出しのログ記録CloudTrail を使用して、ACM に統合されるサービスによって行われた API 呼び出しを監査できます。CloudTrail の使用に関する詳細は、『AWS CloudTrail ユーザーガイド』を参照してください。以下の例は、ACM 証明書をプロビジョニングする AWS リソースに応じて生成される可能性のあるログの種類を示します。

トピック• ロードバランサーの作成 (p. 73)• ロードバランサーを使用して Amazon EC2 インスタンスを登録する (p. 73)• プライベートキーの暗号化 (p. 74)

Version 1.0-72

Page 79: AWS Certificate Manager - ユーザーガイド · 2018-07-13 · AWS Certificate Manager ユーザーガイド Table of Contents AWS Certificate Manager とは何ですか?.....

AWS Certificate Manager ユーザーガイドロードバランサーの作成

• プライベートキーの復号化 (p. 75)

ロードバランサーの作成以下の例では、Alice という IAM ユーザーによって CreateLoadBalancer 機能を呼び出す例を示しています。ロードバランサーの名前は TestLinuxDefault、リスナーは ACM 証明書を使用して作成されます。

{ "eventVersion": "1.03", "userIdentity": { "type": "IAMUser", "principalId": "AIDACKCEVSQ6C2EXAMPLE", "arn": "arn:aws:iam::111122223333:user/Alice", "accountId": "111122223333", "accessKeyId": "AKIAIOSFODNN7EXAMPLE", "userName": "Alice" }, "eventTime": "2016-01-01T21:10:36Z", "eventSource": "elasticloadbalancing.amazonaws.com", "eventName": "CreateLoadBalancer", "awsRegion": "us-east-1", "sourceIPAddress": "192.0.2.0/24", "userAgent": "aws-cli/1.9.15", "requestParameters": { "availabilityZones": ["us-east-1b"], "loadBalancerName": "LinuxTest", "listeners": [{ "sSLCertificateId": "arn:aws:acm:us-east-1:111122223333:certificate/12345678-1234-1234-1234-123456789012", "protocol": "HTTPS", "loadBalancerPort": 443, "instanceProtocol": "HTTP", "instancePort": 80 }] }, "responseElements": { "dNSName": "LinuxTest-1234567890.us-east-1.elb.amazonaws.com" }, "requestID": "19669c3b-b0cc-11e5-85b2-57397210a2e5", "eventID": "5d6c00c9-a9b8-46ef-9f3b-4589f5be63f7", "eventType": "AwsApiCall", "recipientAccountId": "111122223333"}

ロードバランサーを使用して Amazon EC2 インスタンスを登録するAmazon Elastic Compute Cloud (Amazon EC2) インスタンスでウェブサイトまたはアプリケーションをプロビジョニングするとき、ロードバランサーによってそのインスタンスが認識される必要があります。Elastic Load Balancing コンソールまたは AWS Command Line Interface によって、これが可能になります。以下に、AWS アカウント 123456789012 で LinuxTest& というロードバランサーに対してRegisterInstancesWithLoadBalancer を呼び出す例を示します。

{ "eventVersion": "1.03",

Version 1.0-73

Page 80: AWS Certificate Manager - ユーザーガイド · 2018-07-13 · AWS Certificate Manager ユーザーガイド Table of Contents AWS Certificate Manager とは何ですか?.....

AWS Certificate Manager ユーザーガイドプライベートキーの暗号化

"userIdentity": { "type": "IAMUser", "principalId": "AIDACKCEVSQ6C2EXAMPLE", "arn": "arn:aws:iam::123456789012:user/ALice", "accountId": "123456789012", "accessKeyId": "AKIAIOSFODNN7EXAMPLE", "userName": "Alice", "sessionContext": { "attributes": { "mfaAuthenticated": "false", "creationDate": "2016-01-01T19:35:52Z" } }, "invokedBy": "signin.amazonaws.com" }, "eventTime": "2016-01-01T21:11:45Z", "eventSource": "elasticloadbalancing.amazonaws.com", "eventName": "RegisterInstancesWithLoadBalancer", "awsRegion": "us-east-1", "sourceIPAddress": "192.0.2.0/24", "userAgent": "signin.amazonaws.com", "requestParameters": { "loadBalancerName": "LinuxTest", "instances": [{ "instanceId": "i-c67f4e78" }] }, "responseElements": { "instances": [{ "instanceId": "i-c67f4e78" }] }, "requestID": "438b07dc-b0cc-11e5-8afb-cda7ba020551", "eventID": "9f284ca6-cbe5-42a1-8251-4f0e6b5739d6", "eventType": "AwsApiCall", "recipientAccountId": "123456789012"}

プライベートキーの暗号化以下に、ACM 証明書に関連付けられたプライベートキーを暗号化する Encrypt 呼び出しの例を示します。暗号化は AWS 内で実行されます。

{ "Records": [ { "eventVersion": "1.03", "userIdentity": { "type": "IAMUser", "principalId": "AIDACKCEVSQ6C2EXAMPLE", "arn": "arn:aws:iam::111122223333:user/acm", "accountId": "111122223333", "accessKeyId": "AKIAIOSFODNN7EXAMPLE", "userName": "acm" }, "eventTime": "2016-01-05T18:36:29Z", "eventSource": "kms.amazonaws.com", "eventName": "Encrypt", "awsRegion": "us-east-1", "sourceIPAddress": "AWS Internal", "userAgent": "aws-internal", "requestParameters": {

Version 1.0-74

Page 81: AWS Certificate Manager - ユーザーガイド · 2018-07-13 · AWS Certificate Manager ユーザーガイド Table of Contents AWS Certificate Manager とは何ですか?.....

AWS Certificate Manager ユーザーガイドプライベートキーの復号化

"keyId": "arn:aws:kms:us-east-1:123456789012:alias/aws/acm", "encryptionContext": { "aws:acm:arn": "arn:aws:acm:us-east-1:123456789012:certificate/12345678-1234-1234-1234-123456789012" } }, "responseElements": null, "requestID": "3c417351-b3db-11e5-9a24-7d9457362fcc", "eventID": "1794fe70-796a-45f5-811b-6584948f24ac", "readOnly": true, "resources": [{ "ARN": "arn:aws:kms:us-east-1:123456789012:key/87654321-4321-4321-4321-210987654321", "accountId": "123456789012" }], "eventType": "AwsServiceEvent", "recipientAccountId": "123456789012" }]}

プライベートキーの復号化以下に、ACM 証明書に関連付けられたプライベートキーを復号化する Decrypt 呼び出しの例を示します。復号化は AWS 内で実行され、復号化されたキーが AWS から外部に送信されることはありません。

{ "eventVersion": "1.03", "userIdentity": { "type": "AssumedRole", "principalId": "AIDACKCEVSQ6C2EXAMPLE:1aba0dc8b3a728d6998c234a99178eff", "arn": "arn:aws:sts::111122223333:assumed-role/DecryptACMCertificate/1aba0dc8b3a728d6998c234a99178eff", "accountId": "111122223333", "accessKeyId": "AKIAIOSFODNN7EXAMPLE", "sessionContext": { "attributes": { "mfaAuthenticated": "false", "creationDate": "2016-01-01T21:13:28Z" }, "sessionIssuer": { "type": "Role", "principalId": "APKAEIBAERJR2EXAMPLE", "arn": "arn:aws:iam::111122223333:role/DecryptACMCertificate", "accountId": "111122223333", "userName": "DecryptACMCertificate" } } }, "eventTime": "2016-01-01T21:13:28Z", "eventSource": "kms.amazonaws.com", "eventName": "Decrypt", "awsRegion": "us-east-1", "sourceIPAddress": "AWS Internal", "userAgent": "aws-internal/3", "requestParameters": { "encryptionContext": { "aws:elasticloadbalancing:arn": "arn:aws:elasticloadbalancing:us-east-1:123456789012:loadbalancer/LinuxTest", "aws:acm:arn": "arn:aws:acm:us-east-1:123456789012:certificate/87654321-4321-4321-4321-210987654321" } },

Version 1.0-75

Page 82: AWS Certificate Manager - ユーザーガイド · 2018-07-13 · AWS Certificate Manager ユーザーガイド Table of Contents AWS Certificate Manager とは何ですか?.....

AWS Certificate Manager ユーザーガイドプライベートキーの復号化

"responseElements": null, "requestID": "809a70ff-b0cc-11e5-8f42-c7fdf1cb6e6a", "eventID": "7f89f7a7-baff-4802-8a88-851488607fb9", "readOnly": true, "resources": [{ "ARN": "arn:aws:kms:us-east-1:123456789012:key/12345678-1234-1234-1234-123456789012", "accountId": "123456789012" }], "eventType": "AwsServiceEvent", "recipientAccountId": "123456789012" }

Version 1.0-76

Page 83: AWS Certificate Manager - ユーザーガイド · 2018-07-13 · AWS Certificate Manager ユーザーガイド Table of Contents AWS Certificate Manager とは何ですか?.....

AWS Certificate Manager ユーザーガイドAddTagsToCertificate

ACM API の使用HTTP リクエストを送信してサービスをプログラムでインタラクティブに操作するために AWS CertificateManager API を使用できます。詳細情報については、AWS Certificate Manager API リファレンス を参照してください。

ウェブ API (または HTTP API) に加えて、AWS SDK とコマンドラインツールを使用して ACM およびその他のサービスをインタラクティブに操作できます。詳細については、「Amazon Web Services 用のツール」を参照して ください。

次のトピックで、AWS SDK の 1 つである AWS SDK for Java を使用して、AWS Certificate ManagerAPIオペレーションで利用できるいくつかのオペレーションを実行する方法を示します。

トピック• 証明書にタグを追加する (p. 77)• 証明書の削除 (p. 79)• 証明書についての説明 (p. 80)• 証明書のエクスポート (p. 82)• 証明書と証明書チェーンの取得 (p. 84)• 証明書のインポート (p. 86)• 証明書の一覧 (p. 88)• 証明書タグの一覧表示 (p. 89)• 証明書に対するタグを削除する (p. 91)• 証明書のリクエスト (p. 92)• 検証 E メールの再送信 (p. 94)

証明書にタグを追加する次の例は、AddTagsToCertificate 機能を使用する方法を示しています。

package com.amazonaws.samples;

import com.amazonaws.services.certificatemanager.AWSCertificateManagerClientBuilder;import com.amazonaws.services.certificatemanager.AWSCertificateManager;import com.amazonaws.services.certificatemanager.model.AddTagsToCertificateRequest;import com.amazonaws.services.certificatemanager.model.AddTagsToCertificateResult;import com.amazonaws.services.certificatemanager.model.Tag;

import com.amazonaws.services.certificatemanager.model.InvalidArnException;import com.amazonaws.services.certificatemanager.model.InvalidTagException;import com.amazonaws.services.certificatemanager.model.ResourceNotFoundException;import com.amazonaws.services.certificatemanager.model.TooManyTagsException;

import com.amazonaws.AmazonClientException;

import com.amazonaws.auth.AWSCredentials;import com.amazonaws.auth.profile.ProfileCredentialsProvider;import com.amazonaws.auth.AWSStaticCredentialsProvider;import com.amazonaws.regions.Regions;

import java.util.ArrayList;

/**

Version 1.0-77

Page 84: AWS Certificate Manager - ユーザーガイド · 2018-07-13 · AWS Certificate Manager ユーザーガイド Table of Contents AWS Certificate Manager とは何ですか?.....

AWS Certificate Manager ユーザーガイドAddTagsToCertificate

* This sample demonstrates how to use the AddTagsToCertificate function in the AWS Certificate * Manager service. * * Input parameters: * CertificateArn - The ARN of the certificate to which to add one or more tags. * Tags - An array of Tag objects to add. **/

public class AWSCertificateManagerExample {

public static void main(String[] args) throws Exception {

// Retrieve your credentials from the C:\Users\name\.aws\credentials file in Windows // or the ~/.aws/credentials file in Linux. AWSCredentials credentials = null; try { credentials = new ProfileCredentialsProvider().getCredentials(); } catch (Exception ex) { throw new AmazonClientException("Cannot load your credentials from file.", ex); }

// Create a client. AWSCertificateManager client = AWSCertificateManagerClientBuilder.standard() .withRegion(Regions.US_EAST_1) .withCredentials(new AWSStaticCredentialsProvider(credentials)) .build();

// Create tags. Tag tag1 = new Tag(); tag1.setKey("Short_Name"); tag1.setValue("My_Cert");

Tag tag2 = new Tag() .withKey("Purpose") .withValue("Test");

// Add the tags to a collection. ArrayList<Tag> tags = new ArrayList<Tag>(); tags.add(tag1); tags.add(tag2);

// Create a request object and specify the ARN of the certificate. AddTagsToCertificateRequest req = new AddTagsToCertificateRequest(); req.setCertificateArn("arn:aws:acm:region:account:certificate/12345678-1234-1234-1234-123456789012"); req.setTags(tags);

// Add tags to the specified certificate. AddTagsToCertificateResult result = null; try { result = client.addTagsToCertificate(req); } catch(InvalidArnException ex) { throw ex; } catch(InvalidTagException ex) { throw ex; } catch(ResourceNotFoundException ex) {

Version 1.0-78

Page 85: AWS Certificate Manager - ユーザーガイド · 2018-07-13 · AWS Certificate Manager ユーザーガイド Table of Contents AWS Certificate Manager とは何ですか?.....

AWS Certificate Manager ユーザーガイドDeleteCertificate

throw ex; } catch(TooManyTagsException ex) { throw ex; }

// Display the result. System.out.println(result); }}

証明書の削除次の例は、DeleteCertificate 機能を使用する方法を示しています。成功した場合、関数は空のセット {} を返します。

package com.amazonaws.samples;

import com.amazonaws.services.certificatemanager.AWSCertificateManagerClientBuilder;import com.amazonaws.services.certificatemanager.AWSCertificateManager;import com.amazonaws.services.certificatemanager.model.DeleteCertificateRequest;import com.amazonaws.services.certificatemanager.model.DeleteCertificateResult;

import com.amazonaws.auth.profile.ProfileCredentialsProvider;import com.amazonaws.auth.AWSStaticCredentialsProvider;import com.amazonaws.auth.AWSCredentials;import com.amazonaws.regions.Regions;

import com.amazonaws.services.certificatemanager.model.InvalidArnException;import com.amazonaws.services.certificatemanager.model.ResourceInUseException;import com.amazonaws.services.certificatemanager.model.ResourceNotFoundException;import com.amazonaws.AmazonClientException;

/** * This sample demonstrates how to use the DeleteCertificate function in the AWS Certificate * Manager service. * * Input parameter: * CertificateArn - The ARN of the certificate to delete. * */

public class AWSCertificateManagerExample {

public static void main(String[] args) throws Exception{

// Retrieve your credentials from the C:\Users\name\.aws\credentials file in Windows // or the ~/.aws/credentials file in Linux. AWSCredentials credentials = null; try { credentials = new ProfileCredentialsProvider().getCredentials(); } catch (Exception ex) { throw new AmazonClientException("Cannot load the credentials from file.", ex); }

// Create a client. AWSCertificateManager client = AWSCertificateManagerClientBuilder.standard() .withRegion(Regions.US_EAST_1)

Version 1.0-79

Page 86: AWS Certificate Manager - ユーザーガイド · 2018-07-13 · AWS Certificate Manager ユーザーガイド Table of Contents AWS Certificate Manager とは何ですか?.....

AWS Certificate Manager ユーザーガイドDescribeCertificates

.withCredentials(new AWSStaticCredentialsProvider(credentials)) .build();

// Create a request object and specify the ARN of the certificate to delete. DeleteCertificateRequest req = new DeleteCertificateRequest(); req.setCertificateArn("arn:aws:acm:region:account:certificate/12345678-1234-1234-1234-123456789012");

// Delete the specified certificate. DeleteCertificateResult result = null; try { result = client.deleteCertificate(req); } catch (InvalidArnException ex) { throw ex; } catch (ResourceInUseException ex) { throw ex; } catch (ResourceNotFoundException ex) { throw ex; }

// Display the result. System.out.println(result);

}}

証明書についての説明次の例は、DescribeCertificate 機能を使用する方法を示しています。

package com.amazonaws.samples;

import com.amazonaws.services.certificatemanager.AWSCertificateManagerClientBuilder;import com.amazonaws.services.certificatemanager.AWSCertificateManager;import com.amazonaws.services.certificatemanager.model.DescribeCertificateRequest;import com.amazonaws.services.certificatemanager.model.DescribeCertificateResult;

import com.amazonaws.auth.profile.ProfileCredentialsProvider;import com.amazonaws.auth.AWSStaticCredentialsProvider;import com.amazonaws.auth.AWSCredentials;import com.amazonaws.regions.Regions;

import com.amazonaws.services.certificatemanager.model.InvalidArnException;import com.amazonaws.services.certificatemanager.model.ResourceNotFoundException;import com.amazonaws.AmazonClientException;

/** * This sample demonstrates how to use the DescribeCertificate function in the AWS Certificate * Manager service. * * Input parameter: * CertificateArn - The ARN of the certificate to be described.

Version 1.0-80

Page 87: AWS Certificate Manager - ユーザーガイド · 2018-07-13 · AWS Certificate Manager ユーザーガイド Table of Contents AWS Certificate Manager とは何ですか?.....

AWS Certificate Manager ユーザーガイドDescribeCertificates

* * Output parameter: * Certificate information * */

public class AWSCertificateManagerExample {

public static void main(String[] args) throws Exception{

// Retrieve your credentials from the C:\Users\name\.aws\credentials file in Windows // or the ~/.aws/credentials file in Linux. AWSCredentials credentials = null; try { credentials = new ProfileCredentialsProvider().getCredentials(); } catch (Exception ex) { throw new AmazonClientException("Cannot load the credentials from file.", ex); }

// Create a client. AWSCertificateManager client = AWSCertificateManagerClientBuilder.standard() .withRegion(Regions.US_EAST_1) .withCredentials(new AWSStaticCredentialsProvider(credentials)) .build();

// Create a request object and set the ARN of the certificate to be described. DescribeCertificateRequest req = new DescribeCertificateRequest(); req.setCertificateArn("arn:aws:acm:region:account:certificate/12345678-1234-1234-1234-123456789012");

DescribeCertificateResult result = null; try{ result = client.describeCertificate(req); } catch (InvalidArnException ex) { throw ex; } catch (ResourceNotFoundException ex) { throw ex; }

// Display the certificate information. System.out.println(result);

}}

成功した場合、上記の例は、次のような情報を表示します。

{ Certificate: { CertificateArn: arn:aws:acm:region:account:certificate/12345678-1234-1234-1234-123456789012, DomainName: www.example.com, SubjectAlternativeNames: [www.example.com], DomainValidationOptions: [{ DomainName: www.example.com, }], Serial: 10: 0a, Subject: C=US,

Version 1.0-81

Page 88: AWS Certificate Manager - ユーザーガイド · 2018-07-13 · AWS Certificate Manager ユーザーガイド Table of Contents AWS Certificate Manager とは何ですか?.....

AWS Certificate Manager ユーザーガイドExportCertificate

ST=WA, L=Seattle, O=ExampleCompany, OU=sales, CN=www.example.com, Issuer: ExampleCompany, ImportedAt: FriOct0608: 17: 39PDT2017, Status: ISSUED, NotBefore: ThuOct0510: 14: 32PDT2017, NotAfter: SunOct0310: 14: 32PDT2027, KeyAlgorithm: RSA-2048, SignatureAlgorithm: SHA256WITHRSA, InUseBy: [], Type: IMPORTED, }}

証明書のエクスポート次の例は、ExportCertificate 関数を使用する方法を示しています。この関数はプライベート認証機関 (CA)によって発行されたプライベート証明書をエクスポートします。また、証明書チェーンおよびプライベートキーもエクスポートします。この例では、キーのパスフレーズがローカルファイルに保存されます。

package com.amazonaws.samples;

import com.amazonaws.AmazonClientException;

import com.amazonaws.auth.profile.ProfileCredentialsProvider;import com.amazonaws.auth.AWSStaticCredentialsProvider;import com.amazonaws.auth.AWSCredentials;import com.amazonaws.regions.Regions;

import com.amazonaws.services.certificatemanager.AWSCertificateManagerClientBuilder;import com.amazonaws.services.certificatemanager.AWSCertificateManager;

import com.amazonaws.services.certificatemanager.model.ExportCertificateRequest;import com.amazonaws.services.certificatemanager.model.ExportCertificateResult;

import com.amazonaws.services.certificatemanager.model.InvalidArnException;import com.amazonaws.services.certificatemanager.model.InvalidTagException;import com.amazonaws.services.certificatemanager.model.ResourceNotFoundException;

import java.io.FileNotFoundException;import java.io.IOException;import java.io.RandomAccessFile;import java.nio.ByteBuffer;import java.nio.channels.FileChannel;

public class ExportCertificate {

public static void main(String[] args) throws Exception {

// Retrieve your credentials from the C:\Users\name\.aws\credentials file in Windows // or the ~/.aws/credentials in Linux. AWSCredentials credentials = null; try { credentials = new ProfileCredentialsProvider().getCredentials(); } catch (Exception ex) { throw new AmazonClientException("Cannot load your credentials from file.", ex); }

Version 1.0-82

Page 89: AWS Certificate Manager - ユーザーガイド · 2018-07-13 · AWS Certificate Manager ユーザーガイド Table of Contents AWS Certificate Manager とは何ですか?.....

AWS Certificate Manager ユーザーガイドExportCertificate

// Create a client. AWSCertificateManager client = AWSCertificateManagerClientBuilder.standard() .withRegion(Regions.your_region) .withCredentials(new AWSStaticCredentialsProvider(credentials)) .build();

// Initialize a file descriptor for the passphrase file. RandomAccessFile file_passphrase = null;

// Initialize a buffer for the passphrase. ByteBuffer buf_passphrase = null;

// Create a file stream for reading the private key passphrase. try { file_passphrase = new RandomAccessFile("C:\\Temp\\password.txt", "r"); } catch (IllegalArgumentException ex) { throw ex; } catch (SecurityException ex) { throw ex; } catch (FileNotFoundException ex) { throw ex; }

// Create a channel to map the file. FileChannel channel_passphrase = file_passphrase.getChannel();

// Map the file to the buffer. try { buf_passphrase = channel_passphrase.map(FileChannel.MapMode.READ_ONLY, 0, channel_passphrase.size());

// Clean up after the file is mapped. channel_passphrase.close(); file_passphrase.close(); } catch (IOException ex) { throw ex; }

// Create a request object. ExportCertificateRequest req = new ExportCertificateRequest();

// Set the certificate ARN. req.withCertificateArn("arn:aws:acm:region:account:" +"certificate/M12345678-1234-1234-1234-123456789012");

// Set the passphrase. req.withPassphrase(buf_passphrase);

// Export the certificate. ExportCertificateResult result = null;

try { result = client.exportCertificate(req); } catch(InvalidArnException ex) { throw ex; } catch (InvalidTagException ex) {

Version 1.0-83

Page 90: AWS Certificate Manager - ユーザーガイド · 2018-07-13 · AWS Certificate Manager ユーザーガイド Table of Contents AWS Certificate Manager とは何ですか?.....

AWS Certificate Manager ユーザーガイドGetCertificate

throw ex; } catch (ResourceNotFoundException ex) { throw ex; }

// Clear the buffer. buf_passphrase.clear();

// Display the certificate and certificate chain. String certificate = result.getCertificate(); System.out.println(certificate);

String certificate_chain = result.getCertificateChain(); System.out.println(certificate_chain);

// This example retrieves but does not display the private key. String private_key = result.getPrivateKey(); }}

証明書と証明書チェーンの取得次の例は、GetCertificate 機能を使用する方法を示しています。

package com.amazonaws.samples;

import com.amazonaws.regions.Regions;import com.amazonaws.services.certificatemanager.AWSCertificateManagerClientBuilder;import com.amazonaws.services.certificatemanager.AWSCertificateManager;import com.amazonaws.services.certificatemanager.model.GetCertificateRequest;import com.amazonaws.services.certificatemanager.model.GetCertificateResult;

import com.amazonaws.auth.profile.ProfileCredentialsProvider;import com.amazonaws.auth.AWSStaticCredentialsProvider;import com.amazonaws.auth.AWSCredentials;

import com.amazonaws.services.certificatemanager.model.InvalidArnException;import com.amazonaws.services.certificatemanager.model.ResourceNotFoundException;import com.amazonaws.services.certificatemanager.model.RequestInProgressException;import com.amazonaws.AmazonClientException;

/** * This sample demonstrates how to use the GetCertificate function in the AWS Certificate * Manager service. * * Input parameter: * CertificateArn - The ARN of the certificate to retrieve. * * Output parameters: * Certificate - A base64-encoded certificate in PEM format. * CertificateChain - The base64-encoded certificate chain in PEM format. * */

public class AWSCertificateManagerExample {

public static void main(String[] args) throws Exception{

// Retrieve your credentials from the C:\Users\name\.aws\credentials file in Windows

Version 1.0-84

Page 91: AWS Certificate Manager - ユーザーガイド · 2018-07-13 · AWS Certificate Manager ユーザーガイド Table of Contents AWS Certificate Manager とは何ですか?.....

AWS Certificate Manager ユーザーガイドGetCertificate

// or the ~/.aws/credentials file in Linux. AWSCredentials credentials = null; try { credentials = new ProfileCredentialsProvider().getCredentials(); } catch (Exception ex) { throw new AmazonClientException("Cannot load the credentials from the credential profiles file.", ex); }

// Create a client. AWSCertificateManager client = AWSCertificateManagerClientBuilder.standard() .withRegion(Regions.US_EAST_1) .withCredentials(new AWSStaticCredentialsProvider(credentials)) .build();

// Create a request object and set the ARN of the certificate to be described. GetCertificateRequest req = new GetCertificateRequest(); req.setCertificateArn("arn:aws:acm:region:account:certificate/12345678-1234-1234-1234-123456789012");

// Retrieve the certificate and certificate chain. // If you recently requested the certificate, loop until it has been created. GetCertificateResult result = null; long totalTimeout = 120000l; long timeSlept = 0l; long sleepInterval = 10000l; while (result == null && timeSlept < totalTimeout) { try { result = client.getCertificate(req); } catch (RequestInProgressException ex) { Thread.sleep(sleepInterval); } catch (ResourceNotFoundException ex) { throw ex; } catch (InvalidArnException ex) { throw ex; }

timeSlept += sleepInterval; }

// Display the certificate information. System.out.println(result); }}

前述の例は、以下のような出力を作成します。

{Certificate: -----BEGIN CERTIFICATE----- base64-encoded certificate-----END CERTIFICATE-----,CertificateChain: -----BEGIN CERTIFICATE----- base64-encoded certificate chain -----END CERTIFICATE-----}

Version 1.0-85

Page 92: AWS Certificate Manager - ユーザーガイド · 2018-07-13 · AWS Certificate Manager ユーザーガイド Table of Contents AWS Certificate Manager とは何ですか?.....

AWS Certificate Manager ユーザーガイドImportCertificate

証明書のインポート次の例は、ImportCertificate 機能を使用する方法を示しています。

package com.amazonaws.samples;

import com.amazonaws.services.certificatemanager.AWSCertificateManagerClientBuilder;import com.amazonaws.services.certificatemanager.AWSCertificateManager;

import com.amazonaws.auth.profile.ProfileCredentialsProvider;import com.amazonaws.auth.AWSStaticCredentialsProvider;import com.amazonaws.auth.AWSCredentials;import com.amazonaws.regions.Regions;

import com.amazonaws.services.certificatemanager.model.ImportCertificateRequest;import com.amazonaws.services.certificatemanager.model.ImportCertificateResult;import com.amazonaws.services.certificatemanager.model.LimitExceededException;import com.amazonaws.services.certificatemanager.model.ResourceNotFoundException;import com.amazonaws.AmazonClientException;import java.io.FileNotFoundException;import java.io.IOException;

import java.io.RandomAccessFile;import java.nio.ByteBuffer;import java.nio.channels.FileChannel;

/** * This sample demonstrates how to use the ImportCertificate function in the AWS Certificate Manager * service. * * Input parameters: * Certificate - PEM file that contains the certificate to import. * CertificateArn - Use to reimport a certificate (not included in this example). * CertificateChain - The certificate chain, not including the end-entity certificate. * PrivateKey - The private key that matches the public key in the certificate. * * Output parameter: * CertificcateArn - The ARN of the imported certificate. * */public class AWSCertificateManagerSample {

public static void main(String[] args) throws Exception {

// Retrieve your credentials from the C:\Users\name\.aws\credentials file in Windows // or the ~/.aws/credentials file in Linux. AWSCredentials credentials = null; try { credentials = new ProfileCredentialsProvider().getCredentials(); } catch (Exception ex) { throw new AmazonClientException( "Cannot load the credentials from file.", ex); }

// Create a client. AWSCertificateManager client = AWSCertificateManagerClientBuilder.standard() .withRegion(Regions.US_EAST_1) .withCredentials(new AWSStaticCredentialsProvider(credentials)) .build();

// Initialize the file descriptors.

Version 1.0-86

Page 93: AWS Certificate Manager - ユーザーガイド · 2018-07-13 · AWS Certificate Manager ユーザーガイド Table of Contents AWS Certificate Manager とは何ですか?.....

AWS Certificate Manager ユーザーガイドImportCertificate

RandomAccessFile file_certificate = null; RandomAccessFile file_chain = null; RandomAccessFile file_key = null;

// Initialize the buffers. ByteBuffer buf_certificate = null; ByteBuffer buf_chain = null; ByteBuffer buf_key = null;

// Create the file streams for reading. try { file_certificate = new RandomAccessFile("C:\\Temp\\certificate.pem", "r"); file_chain = new RandomAccessFile("C:\\Temp\\chain.pem", "r"); file_key = new RandomAccessFile("C:\\Temp\\private_key.pem", "r"); } catch (IllegalArgumentException ex) { throw ex; } catch (SecurityException ex) { throw ex; } catch (FileNotFoundException ex) { throw ex; }

// Create channels for mapping the files. FileChannel channel_certificate = file_certificate.getChannel(); FileChannel channel_chain = file_chain.getChannel(); FileChannel channel_key = file_key.getChannel();

// Map the files to buffers. try { buf_certificate = channel_certificate.map(FileChannel.MapMode.READ_ONLY, 0, channel_certificate.size()); buf_chain = channel_chain.map(FileChannel.MapMode.READ_ONLY, 0, channel_chain.size()); buf_key = channel_key.map(FileChannel.MapMode.READ_ONLY, 0, channel_key.size());

// The files have been mapped, so clean up. channel_certificate.close(); channel_chain.close(); channel_key.close(); file_certificate.close(); file_chain.close(); file_key.close(); } catch (IOException ex) { throw ex; }

// Create a request object and set the parameters. ImportCertificateRequest req = new ImportCertificateRequest(); req.setCertificate(buf_certificate); req.setCertificateChain(buf_chain); req.setPrivateKey(buf_key);

// Import the certificate. ImportCertificateResult result = null; try { result = client.importCertificate(req); } catch(LimitExceededException ex) { throw ex; }

Version 1.0-87

Page 94: AWS Certificate Manager - ユーザーガイド · 2018-07-13 · AWS Certificate Manager ユーザーガイド Table of Contents AWS Certificate Manager とは何ですか?.....

AWS Certificate Manager ユーザーガイドListCertificates

catch (ResourceNotFoundException ex) { throw ex; }

// Clear the buffers. buf_certificate.clear(); buf_chain.clear(); buf_key.clear();

// Retrieve and display the certificate ARN. String arn = result.getCertificateArn(); System.out.println(arn); }}

証明書の一覧次の例は、ListCertificates 機能を使用する方法を示しています。

package com.amazonaws.samples;

import com.amazonaws.services.certificatemanager.AWSCertificateManagerClientBuilder;import com.amazonaws.services.certificatemanager.AWSCertificateManager;import com.amazonaws.services.certificatemanager.model.ListCertificatesRequest;import com.amazonaws.services.certificatemanager.model.ListCertificatesResult;

import com.amazonaws.auth.profile.ProfileCredentialsProvider;import com.amazonaws.auth.AWSStaticCredentialsProvider;import com.amazonaws.auth.AWSCredentials;import com.amazonaws.regions.Regions;

import com.amazonaws.AmazonClientException;

import java.util.Arrays;import java.util.List;

/** * This sample demonstrates how to use the ListCertificates function in the AWS Certificate * Manager service. * * Input parameters: * CertificateStatuses - An array of strings that contains the statuses to use for filtering. * MaxItems - The maximum number of certificates to return in the response. * NextToken - Use when paginating results. * * Output parameters: * CertificateSummaryList - A list of certificates. * NextToken - Use to show additional results when paginating a truncated list. * */

public class AWSCertificateManagerExample {

public static void main(String[] args) throws Exception{

// Retrieve your credentials from the C:\Users\name\.aws\credentials file in Windows // or the ~/.aws/credentials file in Linux. AWSCredentials credentials = null; try {

Version 1.0-88

Page 95: AWS Certificate Manager - ユーザーガイド · 2018-07-13 · AWS Certificate Manager ユーザーガイド Table of Contents AWS Certificate Manager とは何ですか?.....

AWS Certificate Manager ユーザーガイドListTagsForCertificate

credentials = new ProfileCredentialsProvider().getCredentials(); } catch (Exception ex) { throw new AmazonClientException("Cannot load the credentials from file.", ex); }

// Create a client. AWSCertificateManager client = AWSCertificateManagerClientBuilder.standard() .withRegion(Regions.US_EAST_1) .withCredentials(new AWSStaticCredentialsProvider(credentials)) .build();

// Create a request object and set the parameters. ListCertificatesRequest req = new ListCertificatesRequest(); List<String> Statuses = Arrays.asList("ISSUED", "EXPIRED", "PENDING_VALIDATION", "FAILED"); req.setCertificateStatuses(Statuses); req.setMaxItems(10);

// Retrieve the list of certificates. ListCertificatesResult result = null; try { result = client.listCertificates(req); } catch (Exception ex) { throw ex; }

// Display the certificate list. System.out.println(result); }}

前述のサンプルは、以下のような出力を作成します。

{ CertificateSummaryList: [{ CertificateArn: arn:aws:acm:region:account:certificate/12345678-1234-1234-1234-123456789012, DomainName: www.example1.com }, { CertificateArn: arn:aws:acm:region:account:certificate/12345678-1234-1234-1234-123456789012, DomainName: www.example2.com }, { CertificateArn: arn:aws:acm:region:account:certificate/12345678-1234-1234-1234-123456789012, DomainName: www.example3.com }]}

証明書タグの一覧表示次の例は、ListTagsForCertificate 機能を使用する方法を示しています。

Version 1.0-89

Page 96: AWS Certificate Manager - ユーザーガイド · 2018-07-13 · AWS Certificate Manager ユーザーガイド Table of Contents AWS Certificate Manager とは何ですか?.....

AWS Certificate Manager ユーザーガイドListTagsForCertificate

package com.amazonaws.samples;

import com.amazonaws.services.certificatemanager.AWSCertificateManagerClientBuilder;import com.amazonaws.services.certificatemanager.AWSCertificateManager;import com.amazonaws.services.certificatemanager.model.ListTagsForCertificateRequest;import com.amazonaws.services.certificatemanager.model.ListTagsForCertificateResult;

import com.amazonaws.services.certificatemanager.model.InvalidArnException;import com.amazonaws.services.certificatemanager.model.ResourceNotFoundException;import com.amazonaws.AmazonClientException;

import com.amazonaws.auth.AWSCredentials;import com.amazonaws.auth.profile.ProfileCredentialsProvider;import com.amazonaws.auth.AWSStaticCredentialsProvider;import com.amazonaws.regions.Regions;

/** * This sample demonstrates how to use the ListTagsForCertificate function in the AWS Certificate * Manager service. * * Input parameter: * CertificateArn - The ARN of the certificate whose tags you want to list. **/

public class AWSCertificateManagerExample {

public static void main(String[] args) throws Exception{

// Retrieve your credentials from the C:\Users\name\.aws\credentials file in Windows // or the ~/.aws/credentials file in Linux. AWSCredentials credentials = null; try { credentials = new ProfileCredentialsProvider().getCredentials(); } catch (Exception ex) { throw new AmazonClientException("Cannot load your credentials from file.", ex); }

// Create a client. AWSCertificateManager client = AWSCertificateManagerClientBuilder.standard() .withRegion(Regions.US_EAST_1) .withCredentials(new AWSStaticCredentialsProvider(credentials)) .build();

// Create a request object and specify the ARN of the certificate. ListTagsForCertificateRequest req = new ListTagsForCertificateRequest(); req.setCertificateArn("arn:aws:acm:region:account:certificate/12345678-1234-1234-1234-123456789012");

// Create a result object. ListTagsForCertificateResult result = null; try { result = client.listTagsForCertificate(req); } catch(InvalidArnException ex) { throw ex; } catch(ResourceNotFoundException ex) { throw ex; }

// Display the result.

Version 1.0-90

Page 97: AWS Certificate Manager - ユーザーガイド · 2018-07-13 · AWS Certificate Manager ユーザーガイド Table of Contents AWS Certificate Manager とは何ですか?.....

AWS Certificate Manager ユーザーガイドRemoveTagsFromCertificate

System.out.println(result);

}}

前述のサンプルは、以下のような出力を作成します。

{Tags: [{Key: Purpose,Value: Test}, {Key: Short_Name,Value: My_Cert}]}

証明書に対するタグを削除する次の例は、RemoveTagsFromCertificate 機能を使用する方法を示しています。

package com.amazonaws.samples;

import com.amazonaws.services.certificatemanager.AWSCertificateManagerClientBuilder;import com.amazonaws.services.certificatemanager.AWSCertificateManager;import com.amazonaws.services.certificatemanager.model.RemoveTagsFromCertificateRequest;import com.amazonaws.services.certificatemanager.model.RemoveTagsFromCertificateResult;import com.amazonaws.services.certificatemanager.model.Tag;

import com.amazonaws.services.certificatemanager.model.InvalidArnException;import com.amazonaws.services.certificatemanager.model.InvalidTagException;import com.amazonaws.services.certificatemanager.model.ResourceNotFoundException;import com.amazonaws.AmazonClientException;

import com.amazonaws.auth.profile.ProfileCredentialsProvider;import com.amazonaws.auth.AWSStaticCredentialsProvider;import com.amazonaws.auth.AWSCredentials;import com.amazonaws.regions.Regions;

import java.util.ArrayList;

/** * This sample demonstrates how to use the RemoveTagsFromCertificate function in the AWS Certificate * Manager service. * * Input parameters: * CertificateArn - The ARN of the certificate from which you want to remove one or more tags. * Tags - A collection of key-value pairs that specify which tags to remove. **/

public class AWSCertificateManagerExample {

public static void main(String[] args) throws Exception {

// Retrieve your credentials from the C:\Users\name\.aws\credentials file in Windows // or the ~/.aws/credentials file in Linux. AWSCredentials credentials = null; try { credentials = new ProfileCredentialsProvider().getCredentials(); } catch (Exception ex) { throw new AmazonClientException("Cannot load your credentials from file.", ex); }

Version 1.0-91

Page 98: AWS Certificate Manager - ユーザーガイド · 2018-07-13 · AWS Certificate Manager ユーザーガイド Table of Contents AWS Certificate Manager とは何ですか?.....

AWS Certificate Manager ユーザーガイドRequestCertificate

// Create a client. AWSCertificateManager client = AWSCertificateManagerClientBuilder.standard() .withRegion(Regions.US_EAST_1) .withCredentials(new AWSStaticCredentialsProvider(credentials)) .build();

// Specify the tags to remove. Tag tag1 = new Tag(); tag1.setKey("Short_Name"); tag1.setValue("My_Cert");

Tag tag2 = new Tag() .withKey("Purpose") .withValue("Test");

// Add the tags to a collection. ArrayList<Tag> tags = new ArrayList<Tag>(); tags.add(tag1); tags.add(tag2);

// Create a request object. RemoveTagsFromCertificateRequest req = new RemoveTagsFromCertificateRequest(); req.setCertificateArn("arn:aws:acm:region:account:certificate/12345678-1234-1234-1234-123456789012"); req.setTags(tags);

// Create a result object. RemoveTagsFromCertificateResult result = null; try { result = client.removeTagsFromCertificate(req); } catch(InvalidArnException ex) { throw ex; } catch(InvalidTagException ex) { throw ex; } catch(ResourceNotFoundException ex) { throw ex; }

// Display the result. System.out.println(result); }}

証明書のリクエスト次の例は、RequestCertificate 機能を使用する方法を示しています。

package com.amazonaws.samples;

import com.amazonaws.services.certificatemanager.AWSCertificateManagerClientBuilder;import com.amazonaws.services.certificatemanager.AWSCertificateManager;import com.amazonaws.services.certificatemanager.model.RequestCertificateRequest;import com.amazonaws.services.certificatemanager.model.RequestCertificateResult;

Version 1.0-92

Page 99: AWS Certificate Manager - ユーザーガイド · 2018-07-13 · AWS Certificate Manager ユーザーガイド Table of Contents AWS Certificate Manager とは何ですか?.....

AWS Certificate Manager ユーザーガイドRequestCertificate

import com.amazonaws.services.certificatemanager.model.InvalidDomainValidationOptionsException;import com.amazonaws.services.certificatemanager.model.LimitExceededException;import com.amazonaws.AmazonClientException;

import com.amazonaws.auth.profile.ProfileCredentialsProvider;import com.amazonaws.auth.AWSStaticCredentialsProvider;import com.amazonaws.auth.AWSCredentials;import com.amazonaws.regions.Regions;

import java.util.ArrayList;

/** * This sample demonstrates how to use the RequestCertificate function in the AWS Certificate * Manager service. * * Input parameters: * DomainName - FQDN of your site. * DomainValidationOptions - Domain name for email validation. * IdempotencyToken - Distinguishes between calls to RequestCertificate. * SubjectAlternativeNames - Additional FQDNs for the subject alternative names extension. * * Output parameter: * Certificate ARN - The Amazon Resource Name (ARN) of the certificate you requested. **/

public class AWSCertificateManagerExample {

public static void main(String[] args) {

// Retrieve your credentials from the C:\Users\name\.aws\credentials file in Windows // or the ~/.aws/credentials file in Linux. AWSCredentials credentials = null; try { credentials = new ProfileCredentialsProvider().getCredentials(); } catch (Exception ex) { throw new AmazonClientException("Cannot load your credentials from file.", ex); }

// Create a client. AWSCertificateManager client = AWSCertificateManagerClientBuilder.standard() .withRegion(Regions.US_EAST_1) .withCredentials(new AWSStaticCredentialsProvider(credentials)) .build();

// Specify a SAN. ArrayList<String> san = new ArrayList<String>(); san.add("www.example.com");

// Create a request object and set the input parameters. RequestCertificateRequest req = new RequestCertificateRequest(); req.setDomainName("example.com"); req.setIdempotencyToken("1Aq25pTy"); req.setSubjectAlternativeNames(san);

// Create a result object and display the certificate ARN. RequestCertificateResult result = null; try { result = client.requestCertificate(req); } catch(InvalidDomainValidationOptionsException ex) {

Version 1.0-93

Page 100: AWS Certificate Manager - ユーザーガイド · 2018-07-13 · AWS Certificate Manager ユーザーガイド Table of Contents AWS Certificate Manager とは何ですか?.....

AWS Certificate Manager ユーザーガイドResendValidationEmail

throw ex; } catch(LimitExceededException ex) { throw ex; }

// Display the ARN. System.out.println(result);

}

}

前述のサンプルは、以下のような出力を作成します。

{CertificateArn: arn:aws:acm:region:account:certificate/12345678-1234-1234-1234-123456789012}

検証 E メールの再送信以下の例では、ResendValidationEmail 機能を使用する方法について説明します。

package com.amazonaws.samples;

import com.amazonaws.services.certificatemanager.AWSCertificateManagerClientBuilder;import com.amazonaws.services.certificatemanager.AWSCertificateManager;import com.amazonaws.services.certificatemanager.model.ResendValidationEmailRequest;import com.amazonaws.services.certificatemanager.model.ResendValidationEmailResult;

import com.amazonaws.services.certificatemanager.model.InvalidDomainValidationOptionsException;import com.amazonaws.services.certificatemanager.model.ResourceNotFoundException;import com.amazonaws.services.certificatemanager.model.InvalidStateException;import com.amazonaws.services.certificatemanager.model.InvalidArnException;import com.amazonaws.AmazonClientException;

import com.amazonaws.auth.profile.ProfileCredentialsProvider;import com.amazonaws.auth.AWSStaticCredentialsProvider;import com.amazonaws.auth.AWSCredentials;import com.amazonaws.regions.Regions;

/** * This sample demonstrates how to use the ResendValidationEmail function in the AWS Certificate * Manager service. * * Input parameters: * CertificateArn - Amazon Resource Name (ARN) of the certificate request. * Domain - FQDN in the certificate request. * ValidationDomain - The base validation domain that is used to send email. **/

public class AWSCertificateManagerExample {

public static void main(String[] args) {

// Retrieve your credentials from the C:\Users\name\.aws\credentials file in Windows

Version 1.0-94

Page 101: AWS Certificate Manager - ユーザーガイド · 2018-07-13 · AWS Certificate Manager ユーザーガイド Table of Contents AWS Certificate Manager とは何ですか?.....

AWS Certificate Manager ユーザーガイドResendValidationEmail

// or the ~/.aws/credentials file in Linux. AWSCredentials credentials = null; try { credentials = new ProfileCredentialsProvider().getCredentials(); } catch (Exception ex) { throw new AmazonClientException("Cannot load your credentials from file.", ex); }

// Create a client. AWSCertificateManager client = AWSCertificateManagerClientBuilder.standard() .withRegion(Regions.US_EAST_1) .withCredentials(new AWSStaticCredentialsProvider(credentials)) .build();

// Create a request object and set the input parameters. ResendValidationEmailRequest req = new ResendValidationEmailRequest(); req.setCertificateArn("arn:aws:acm:region:account:certificate/12345678-1234-1234-1234-123456789012"); req.setDomain("gregpe.io"); req.setValidationDomain("gregpe.io");

// Create a result object. ResendValidationEmailResult result = null; try { result = client.resendValidationEmail(req); } catch(ResourceNotFoundException ex) { throw ex; } catch (InvalidStateException ex) { throw ex; } catch (InvalidArnException ex) { throw ex; } catch (InvalidDomainValidationOptionsException ex) { throw ex; }

// Display the result. System.out.println(result.toString());

}}

前述のサンプルは、検証 E メールに再送信し、空のセットを表示します。

{}

Version 1.0-95

Page 102: AWS Certificate Manager - ユーザーガイド · 2018-07-13 · AWS Certificate Manager ユーザーガイド Table of Contents AWS Certificate Manager とは何ですか?.....

AWS Certificate Manager ユーザーガイド

ACM のプライベートキーのセキュリティ

パブリック証明書をリクエストする (p. 22)と、AWS Certificate Manager (ACM) はパブリックキーとプライベートキーのペアを生成します。 インポートされた証明書 (p. 46)の場合、キーペアが生成されます。パブリックキーは証明書の一部となります。ACM には証明書と対応するプライベートキーが保存され、AWS Key Management Service(AWS KMS) を使用してプライベートキーを保護する役目を果たします。このプロセスの動作は次のようになります。

1. AWS リージョンに初めて証明書をリクエストまたはインポートする場合、ACM は AWS KMS に AWSが管理する aws/acm エイリアスの カスタマーマスターキー (CMK) を作成します。この CMK は、各AWS アカウントおよび各 AWS リージョンごとに一意となります。

2. ACM は、この CMK を使用して証明書のプライベートキーを暗号化します。ACM は暗号化されたバージョンのプライベートキーのみを保存します (ACM はプレーンテキスト形式でプライベートキーを保存しません)。ACM は、特定の AWS アカウントと特定の AWS リージョンのすべての証明書にプライベートキーを暗号化するために同じ CMK を使用します。

3. 証明書を AWS Certificate Manager と統合されたサービスに関連付けると、ACM は証明書と暗号化されたプライベートキーをサービスに送信します。また、サービスが AWS KMS で CMK を使用してその証明書のプライベートキーを復号化できるように、AWS KMS に暗黙的に許可を作成します。許可の詳細については、『AWS Key Management Service Developer Guide』の「許可の使用」を参照してください。ACM でサポートされているサービスの詳細については、「AWS Certificate Manager に統合されるサービス (p. 9)」を参照してください。

4. 統合サービスは、AWS KMS の CMK を使用してプライベートキーを復号化します。続いて、サービスは、証明書と復号された (プレーンテキスト) プライベートキーを使用してクライアントと安全な通信チャネル (SSL/TLS セッション) を確立します。

5. 証明書と統合サービスとの関連付けが解除されると、ステップ 3 で作成された権限は廃止されます。つまり、サービスは AWS KMS の CMK を使用して証明書のプライベートキーを復号できなくなります。

Version 1.0-96

Page 103: AWS Certificate Manager - ユーザーガイド · 2018-07-13 · AWS Certificate Manager ユーザーガイド Table of Contents AWS Certificate Manager とは何ですか?.....

AWS Certificate Manager ユーザーガイドCAA レコード

トラブルシューティングAWS Certificate Manager を使用する際に問題が発生した場合は、以下のトピックを参照してください。

トピック• CAA (Certification Authority Authorization) の問題のトラブルシューティング (p. 97)• E メールの問題のトラブルシューティング (p. 97)• 証明書のインポートの問題のトラブルシューティング (p. 100)• 証明書のピニングの問題のトラブルシューティング (p. 100)• 証明書リクエストの問題のトラブルシューティング (p. 101)• マネージド証明書の更新に関する問題のトラブルシューティング (p. 103)• 証明書検証の問題のトラブルシューティング (p. 104)• .io ドメインの問題のトラブルシューティング (p. 104)• API Gateway の問題のトラブルシューティング (p. 105)

CAA (Certification Authority Authorization) の問題のトラブルシューティング

CAA DNS レコードを使用して、Amazon 認証局 (CA) によるドメインまたはサブドメイン用の ACM 証明書の発行を指定できます。証明書の発行中に、"CAA (Certification Authority Authentication) エラーにより、1 つまたは複数のドメイン名の検証に失敗しました。" というメッセージが表示された場合は、CAADNS レコードを調べてください。ACM 証明書リクエストが正常に検証された後でこのエラーが表示された場合は、CAA レコードを更新して、証明書を再度リクエストする必要があります。CAA レコードの少なくとも 1 つの [value] フィールドに、次のいずれかのドメイン名が含まれている必要があります。

• amazon.com• amazontrust.com• awstrust.com• amazonaws.com

ACM で CAA チェックを実行しない場合は、ドメインの CAA レコードを設定しないか、CAA レコードを空白のままにします。CAA レコード作成についての詳細は、「(オプション) CAA レコードの設定 (p. 19)」を参照してください。

E メールの問題のトラブルシューティング検証 E メールに問題が発生した場合には、次のトピックを参照してください。

トピック• 検証 E メールが受信されない (p. 98)• サブドメインに E メールが送信された (p. 99)• 非表示の連絡先情報 (p. 99)• 証明書の更新 (p. 100)• WHOIS スロットリング (p. 100)

Version 1.0-97

Page 104: AWS Certificate Manager - ユーザーガイド · 2018-07-13 · AWS Certificate Manager ユーザーガイド Table of Contents AWS Certificate Manager とは何ですか?.....

AWS Certificate Manager ユーザーガイド検証 E メールが受信されない

検証 E メールが受信されないACM に証明書をリクエストして E メール検証を選択すると、WHOIS で特定される 3 つの連絡先アドレスと 5 つの一般的な管理者アドレスにドメイン検証 E メールが送信されます。詳細については、「E メールを使用したドメインの所有権の検証 (p. 31)」を参照してください。検証 E メールの受信に問題が発生した場合には、次の推奨事項を参照してください。

E メールを探す場所

検証 E メールは、WHOIS に記載される連絡先アドレスとドメインの一般的な管理者アドレスに送信されます。E メールは、AWS アカウントの所有者が WHOIS のドメイン連絡先として記載されていない限り、この所有者には送信されません。ACM コンソールに表示される E メールアドレスのリスト (または、CLI あるいは API から返されるリスト) にアクセスして、検証 E メールが送信されるべきアドレスを確認してください。リストを表示するには、[Validation not complete] とラベル付けされたボックスからドメイン名の横にあるアイコンをクリックします。

E メールがスパムと判断されている

スパムフォルダで検証 E メールを探します。GMail では E メールが自動的にソートされます。

GMail を使用している場合、検証 E メールが自動的に [Updates] または [Promotions] タブにソートされている場合があります。

ドメインのレジストラに連絡先情報またはプライバシー保護が有効になっていることが表示されない

場合によっては、ドメインの登録者、テクニカル担当者、管理者の連絡先が WHOIS で公開されていない可能性があり、そのため、AWS はこの連絡先を閲覧することができません。必要に応じて、WHOIS 上に E メールアドレスをリストするかをレジストラで設定することもできますが、このオプションをサポートしていないレジストラもあります。ドメインのレジストラで直接変更を行うことが必要になる場合もあります。また、ドメインの連絡先情報が WhoisGuard や PrivacyGuard などで提供されるプライバシーアドレスを使用している場合もあります。

Route 53 で購入したドメインの場合、プライバシー保護はデフォルトで有効になっており、E メールアドレスは whoisprivacyservice.org または contact.gandi.net E メールアドレスにマッピングされます。ドメインのレジストラに登録されている登録者の E メールアドレスが更新されていることを確認することで、古い E メールアドレスに送信された E メールが 扱うことができる E メールアドレスに転送されるようにします。

Note

Route 53 で購入した一部のドメインのプライバシー保護は、連絡先情報を公開した場合でも有効になります。たとえば、最上位レベルの .ca ドメインのプライバシー保護は、Route 53によってプログラムで無効にすることはできません。AWS サポートセンターに連絡して、プライバシー保護を無効にするようにリクエストする必要があります。

ドメインの連絡先 E メールアドレスが WHOIS から使用できない場合、または連絡先に送信されるE メールがドメイン所有者あるいは承認された担当者に届かない場合、リクエストするドメイン名にadmin@、administrator@、hostmaster@、webmaster@、postmaster@ などで始まる一般的な管理者アドレスを 1 つ以上用意して E メールを受信できるようにドメインまたはサブドメインを設定することを推奨します。ドメインの E メール設定の詳細については、「(オプション) ドメインの E メールを設定する (p. 18)」の手順に従って E メールサービスプロバイダーのドキュメントを参照してください。Amazon WorkMail を使用している場合、Amazon WorkMail 管理者ガイドで「Working withUsers」を参照してください。

AWS が検証 E メールを送信する 8 つの E メールアドレスのうち少なくとも 1 つを使用できるようにし、そのアドレスで E メールが受信できることを確認したら、ACM で証明書をリクエストする準備ができました。証明書をリクエストした後、意図する E メールアドレスが AWS マネジメントコンソール の E メールアドレスリストに表示されることを確認してください。証明書が [Pendingvalidation] 状態の間は、[Validation not complete] とラベル付けされたボックスのドメイン名の横のア

Version 1.0-98

Page 105: AWS Certificate Manager - ユーザーガイド · 2018-07-13 · AWS Certificate Manager ユーザーガイド Table of Contents AWS Certificate Manager とは何ですか?.....

AWS Certificate Manager ユーザーガイドサブドメインに E メールが送信された

イコンをクリックすると、リストを展開して表示できます。ACM [Request a Certificate] の [ステップ3: 検証] でリストを表示することもできます。リストに表示される E メールアドレスに E メールが送信されます。

MX レコードが見つからないか、設定が間違っている

MX レコードは、ドメインの E メールメッセージを受け取る 1 つ以上のメールサーバーを指定するドメインネームシステム (DNS) データベース内のリソースレコードです。MX レコードが見つからないか、設定が間違っている場合、E メールは「E メールを使用したドメインの所有権の検証 (p. 31)」で指定されている 5 つの一般的なシステム管理者のいずれのアドレスにも送信できません。見つからないか設定が間違っている MX レコードを修正し、E メールを再送信するか、証明書を再度リクエストしてみてください。

Note

現時点では、1 時間以上待ってから、E メールの再送信または証明書のリクエストを試みることをお勧めします。Note

MX レコードの要求をバイパスするには、RequestCertificate API の ValidationDomain オプションまたは request-certificate AWS CLI コマンドを使用して、ACM が検証 E メールを送信するドメイン名を指定することができます。API または AWS CLI を使用した場合、AWSは MX ルックアップを実行しません。

サポートセンターに問い合わせする

上記のガイダンスを参照した後でもドメイン検証 E メールを受信できない場合、AWS サポート センター にアクセスしてサポートケースを作成してください。サポート契約を保持していない場合は、ACM ディスカッションフォーラムにメッセージを投稿できます。

サブドメインに E メールが送信されたコンソールを使用して sub.test.example.com のようなサブドメイン名の証明書をリクエストする場合、ACM は sub.test.example.com の MX レコードがあるかどうかを確認します。存在しない場合には、親ドメイン test.example.com がチェックされ、続いてベースとなるドメイン example.com までが確認されます。MX レコードが見つかったら検索が停止され、検証 E メールがサブドメイン用の一般的な管理者アドレスに送信されます。たとえば、MX レコードが test.example.com で見つかったとすると、E メールは [email protected][email protected]、そして E メールを使用したドメインの所有権の検証 (p. 31) で特定されるその他の管理者アドレスに E メールが送信されます。サブドメインのすべてに MX レコードが見つからない場合は、証明書をリクエストする元のサブドメインにE メールが送信されます。E メールを設定し、ACM が DNS と WHOIS データベースで動作する方法についての詳細は、「(オプション) ドメインの E メールを設定する (p. 18)」を参照してください。

コンソールの代わりに、RequestCertificate API の ValidationDomain オプションまたは request-certificate AWS CLI コマンドを使用して、ACM が検証 E メールを送信するドメイン名を指定することができます。API または AWS CLI を使用した場合、AWS は MX ルックアップを実行しません。

非表示の連絡先情報新しい証明書を作成しようとしたときに発生するよくある問題。一部のレジストラでは、WHOIS のリストで連絡先情報を隠すことができます。他のレジストラでは、実際の E メールアドレスをプライバシー(またはプロキシ) アドレスに置き換えます。これにより、登録された連絡先アドレスに検証 E メールが届かなくなります。

メールを受信するには、連絡先情報が WHOIS でパブリックになっていることを確認してください。また、WHOIS のリストにプライバシー E メールアドレスが表示される場合には、プライバシーアドレスに送信される E メールが実際の E メールアドレスに転送されることを確認してください。WHOIS の設定が完了し、証明書のリクエストが有効期限内である限り、検証 E メールを再送信することを選択できま

Version 1.0-99

Page 106: AWS Certificate Manager - ユーザーガイド · 2018-07-13 · AWS Certificate Manager ユーザーガイド Table of Contents AWS Certificate Manager とは何ですか?.....

AWS Certificate Manager ユーザーガイド証明書の更新

す。ACM は、新しく WHOIS/MX ルックアップを実行して、パブリックとなった連絡先アドレスに検証 Eメールを送信します。

証明書の更新新しい証明書をリクエストしたときに WHOIS 情報をパブリックにし、その後に情報を難読化した場合、証明書を更新しようとするときに ACM は登録された連絡先アドレスを取得することができません。ACMは、この連絡先アドレスと MX レコードを使って構成する一般管理アドレス 5 つに検証 E メールを送信します。この問題に対処するには、WHOIS 情報を再度パブリックにして、検証 E メールを再送信します。ACM は、新しく WHOIS/MX ルックアップを実行して、パブリックとなった連絡先アドレスに検証 Eメールを送信します。

WHOIS スロットリング場合によっては、検証 E メールのリクエストを複数回送信したあとでも、ACM が WHOIS サーバーに接続できないことがあります。これは AWS 外部の問題です。つまり、AWS は WHOIS サーバーを管理せず、WHOIS サーバーのスロットリングを防ぐことはできません。この問題が発生した場合は、AWS サポート センターでケースを作成して対応策の提案を受けてください。

証明書のインポートの問題のトラブルシューティング

サードパーティーの証明書を ACM にインポートし、統合されたサービスと関連付けることができます。問題が発生した場合は、前提条件と証明書形式に関するトピックを確認してください。特に、以下の点に注意してください。

• X.509 バージョン 3 の SSL/TLS 証明書のみをインポートすることができます。• 証明書は自己署名するか、認証機関 (CA) によって署名できます。• 証明書が CA によって署名されている場合、ルート認証局にチェーンする証明書チェーンを含める必要

があります。• 証明書チェーンに証明書を含めないでください。• チェーンの各証明書は、先行する 1 つの証明書を直接認定する必要があります。• 証明書、プライベートキー、および証明書チェーンは PEM エンコードされる必要があります。• プライベートキーは暗号化されていない必要があります。• ACM と統合されたサービスでは、リソースへの関連付けがサポートされているアルゴリズムとキーサ

イズのみが許可されます。サポートは変更される可能性があります。各サービスのドキュメントを参照し、証明書が機能することを確認してください。

• 統合されたサービスによる証明書のサポートは、証明書のインポート先が IAM であるか ACM であるかによって異なる場合があります。

• 証明書は、インポート時に有効である必要があります。• すべての証明書の詳細情報が、コンソールに表示されます。ただし、デフォルトでは、keyTypes

フィルタを指定せずに ListCertificates API または list-certificates AWS CLI コマンドを呼び出す場合、RSA_1024 または RSA_2048 証明書のみが表示されます。

証明書のピニングの問題のトラブルシューティング証明書を更新するために、ACM は新しいパブリックキーとプライベートキーのペアを生成します。アプリケーションで 証明書ピニング (p. 12) (SSL ピンニングとも呼ばれる) を使用して ACM 証明書を固定する

Version 1.0-100

Page 107: AWS Certificate Manager - ユーザーガイド · 2018-07-13 · AWS Certificate Manager ユーザーガイド Table of Contents AWS Certificate Manager とは何ですか?.....

AWS Certificate Manager ユーザーガイド証明書のリクエスト

と、AWS が証明書を更新した後にアプリケーションがドメインに接続できないことがあります。このため、ACM 証明書を固定しないことをお勧めします。アプリケーションで証明書を固定する必要がある場合は、次の操作を実行できます。

• 保持する証明書を ACM にインポート (p. 46)し、アプリケーションをインポートした証明書に固定化します。ACM はインポートした証明書にマネージド型更新を提供しません。

• アプリケーションを Amazon ルート証明書に固定化します。

証明書リクエストの問題のトラブルシューティングACM 証明書のリクエストで問題がある場合、次のトピックを参照してください。

トピック• 証明書リクエストタイムアウト (p. 101)• 証明書リクエストに失敗した (p. 101)

証明書リクエストタイムアウトACM 証明書のリクエストは、72 時間以内に検証されない場合にタイムアウトとなります。この状態を修正するには、リクエストを削除して、[Request a certificate] を選択してもう一度開始してください。DNS検証または E メール検証を使用して、リクエストに記載したドメインの所有者または管理者であることをアサートできます。DNS を使用することをお勧めします。詳細については、DNS を使用したドメインの所有権の検証 (p. 27) を参照してください。

証明書リクエストに失敗したACM 証明書のリクエストは失敗する場合があります。その場合、リクエストがなぜ失敗したのか、そして、問題を解決するために推奨される可能な手順を理解するために次の説明が役立ちます。

失敗の理由• 利用できる連絡先がない (p. 101)• ドメインが許可されない (p. 102)• 追加の検証要求 (p. 102)• 無効なパブリックドメイン (p. 102)• その他 (p. 102)

利用できる連絡先がない証明書リクエストしたときに E メール検証を選択しましたが、ACM は、リクエストに記載された 1 つまたは複数のドメイン名を検証するために使用する E メールアドレスを検索できませんでした。この問題を解決するには、次のオプションがあります。

• WHOIS に登録されている動作中の E メールアドレスがあることを確認し、証明書リクエストのためにドメイン名で標準の WHOIS 検索を実行するときにこのアドレスが閲覧できることを確かめます。通常、この作業はドメインレジストラで行います。

• ドメインが E メールを受信するように設定されていることを確認します。ACM のメールサーバーが ドメイン検証 E メール (p. 31)の送信先を特定できるように、ドメインのネームサーバーにメールエクスチェンジャレコード (MX) を保持していることが必要です。

Version 1.0-101

Page 108: AWS Certificate Manager - ユーザーガイド · 2018-07-13 · AWS Certificate Manager ユーザーガイド Table of Contents AWS Certificate Manager とは何ですか?.....

AWS Certificate Manager ユーザーガイド証明書リクエストに失敗した

前述した作業のうち 1 つを完了すれば、この問題は解決します。両方を行う必要はありません。この問題を解決したら、新しい証明書をリクエストします。失敗した証明書のリクエストを再送信することはできません。

ACM からドメイン検証 E メールを受信できることを確認する方法の詳細については、「(オプション) ドメインの E メールを設定する (p. 18)」 または「検証 E メールが受信されない (p. 98)」を参照してください。以上の手順に従っても、引き続き [No Available Contacts] メッセージが表示される場合には、この案件を AWS に報告 し、調査を実施します。

ドメインが許可されないACM は、指定した 1 つまたは複数のドメイン名に対する証明書のリクエストを許可しませんでした。通常、これは証明書リクエストの 1 つあるいは複数のドメイン名が Google のセーフブラウジングリストの安全でないウェブサイト、あるいは PhishTank リストでフィッシングとして確認された場合です。この問題を修正するには、次の操作を実行できます。

• Google Safe Browsing Site Status ウェブサイトでドメイン名を検索します。ドメインが安全でないと考えられる場合は、Google Help for Hacked Websites にアクセスして、できることを参照します。ドメインが安全であると考えられる場合は、Request a review を参照して、Google に再審査をリクエストします。

• PhishTank ホームページでドメイン名を検索します。ドメインがフィッシングであると考えられる場合は、Google Help for Hacked Websites、または StopBadware Webmaster Help を閲覧して、できることを参照します。ドメインが安全であると考えられる場合は、PhishTank FAQ を閲覧して、誤確認を報告する方法に関する情報を参照します。

この問題を解決したら、新しい証明書をリクエストします。失敗した証明書のリクエストを再送信することはできません。

追加の検証要求ACM は、この証明書のリクエストを処理するために追加の情報を必要とします。この情報を提供するには、サポートセンターから AWS サポート にお問い合わせください。サポートプランを保持していない場合は、AWS Certificate Manager ディスカッションフォーラムに新しいスレッドを投稿します。

Note

末尾が amazonaws.com、cloudfront.net、または elasticbeanstalk.com などの Amazon が所有するドメイン名に証明書をリクエストすることはできません。

無効なパブリックドメイン証明書リクエストの 1 つまたは複数のドメイン名が有効ではありません。通常の場合、リクエストするドメイン名が有効なトップレベルドメインでないことがその理由です。失敗したリクエストで誤字や脱字を修正し、リクエストするすべてのドメイン名が有効なトップレベルのドメインであることを確認してから、再度証明書をリクエストします。たとえば、example.invalidpublicdomain に ACM 証明書をリクエストすることはできません。これは、「invalidpublicdomain」が有効な トップレベルドメインではないからです。この理由による失敗を引き続き受信した場合は、サポートセンターにお問い合わせください。サポートプランを保持していない場合は、AWS Certificate Manager ディスカッションフォーラムに新しいスレッドを投稿します。

その他通常、証明書リクエストの 1 つまたは複数のドメイン名に誤字や脱字がある場合にこの失敗が発生します。失敗したリクエストのすべての脱字や誤字を修正してから、再度証明書のリクエストを行います。こ

Version 1.0-102

Page 109: AWS Certificate Manager - ユーザーガイド · 2018-07-13 · AWS Certificate Manager ユーザーガイド Table of Contents AWS Certificate Manager とは何ですか?.....

AWS Certificate Manager ユーザーガイド証明書の更新

の理由による失敗を引き続き受信した場合には、サポートセンターから AWS サポート にお問い合わせください。サポートプランを保持していない場合は、AWS Certificate Manager ディスカッションフォーラムに新しいスレッドを投稿します。

マネージド証明書の更新に関する問題のトラブルシューティング

ACM は、ACM 証明書の有効期限が切れる前に自動的に更新を試み、ユーザーによるアクションを不要にします。ACM の Amazon が発行する証明書のマネージド型更新 (p. 40) で問題が発生した場合は、次のトピックを参照してください。

トピック• 自動ドメイン検証 (p. 103)• 非同期プロセス (p. 103)

自動ドメイン検証ACM によって証明書を自動的に更新するには、以下の条件が満たされている必要があります。

• ACM によって証明書の各ドメインと HTTPS 接続を確立できる必要があります。• 各接続では、返される証明書が ACM が更新している証明書と一致する必要があります。• 証明書が、ACM と統合された AWS サービスに関連付けられている必要があります。• ACM が証明書に記載されているドメイン名を検証できる必要があります。

ACM が証明書を自動的に更新できるための可能性を向上させるには、次の操作を行います。

AWS リソースで証明書を使用すること

証明書がサポートされる AWS リソースで使用されていることを確認してください。ACM がサポートするリソースについては、「AWS Certificate Manager に統合されるサービス (p. 9)」を参照してください。

インターネットからの HTTPS リクエストを許可するようにリソースを設定する

ACM 証明書を保有する AWS リソースを、インターネットからの HTTPS リクエストを許可するように設定します。

ドメイン名を ACM 証明書をホストするリソースにルーティングするように DNS を設定すること

HTTPS がリクエストする証明書のドメイン名が証明書を保持するリソースにルーティングされることを確認します。

非同期プロセスACM の Amazon が発行する証明書のマネージド型更新 (p. 40) は非同期プロセスです。これは、ステップがすぐに連続して発生しないことを意味します。ACM 証明書のすべてのドメイン名が検証されてから、ACM が新しい証明書を取得するまでに時間がかかることがあります。ACM が更新された証明書を取得した時間からその証明書が使用される AWS リソースにデプロイされる時間まで、さらなる遅延が生じる場合もあります。これによって、証明書ステータスの変更がコンソールに表示されるまでに数時間ほどかかる場合があります。

Version 1.0-103

Page 110: AWS Certificate Manager - ユーザーガイド · 2018-07-13 · AWS Certificate Manager ユーザーガイド Table of Contents AWS Certificate Manager とは何ですか?.....

AWS Certificate Manager ユーザーガイド証明書の検証

証明書検証の問題のトラブルシューティング検証が保留状態でスタックしている場合は、次のトピックを参照してください。

検証未完了ACM の証明書リクエストのステータスが [Pending validation] の場合、リクエストはユーザーによるアクションを待っている状態です。リクエストを実行したときに E メール検証を選択した場合、本人または承認された担当者は検証用 E メールメッセージに対応する必要があります。これらのメッセージは、登録されている WHOIS の連絡先アドレスと、リクエストされたドメイン用のその他の共通 E メールアドレスに送信されています。詳細については、「E メールを使用したドメインの所有権の検証 (p. 31)」を参照してください。DNS 検証を選択した場合は、ACM によって作成された固有の CNAME レコードをDNS データベースに記述する必要があります。詳細については、「DNS を使用したドメインの所有権の検証 (p. 27)」を参照してください。

Important

ユーザーは、証明書リクエストに含まれる各ドメイン名の所有者または管理者であるという検証を受ける必要があります。E メール検証を選択した場合は、各ドメインの検証 E メールメッセージが送信されます。E メールが届かない場合は、「検証 E メールが受信されない (p. 98)」を参照してください。DNS 検証を選択した場合は、各ドメインに対して CNAME レコードを作成する必要があります。

E メール検証の代わりに DNS 検証を使用することをお勧めします。

.io ドメインの問題のトラブルシューティング.io ドメインは英領インド洋地域に割り当てられています。現在、ドメインレジストリは、WHOIS データベースの公開情報を表示しません。これは、ドメインのプライバシー保護が有効か無効かにかかわらず、当てはまります。WHOIS ルックアップが実行されると、難読化されたレジストラ情報のみが返されます。したがって、ACM は WHOIS で通常利用可能な次の 3 つの登録済み連絡先アドレスに検証 E メールを送信できません。

• ドメインの登録者• テクニカル担当者• 管理者の連絡先

ただし、ACM は最初に証明書を要求したときに your_domain のドメイン名を入力した、.io が最上位ドメインの、次の 5 つの一般的なシステムアドレスに検証 E メールを送信します。

• administrator@your_domain.io• hostmaster@your_domain.io• postmaster@your_domain.io• webmaster@your_domain.io• admin@your_domain.io

.io ドメインの検証 E メールを受信するには、上記の 5 つの E メールアカウントのいずれかが有効になっていることを確認してください。そうしないと、検証 E メールは受信されず、ACM 証明書は発行されません。

Note

E メール検証の代わりに DNS 検証を使用することをお勧めします。詳細については、「DNS を使用したドメインの所有権の検証 (p. 27)」を参照してください。

Version 1.0-104

Page 111: AWS Certificate Manager - ユーザーガイド · 2018-07-13 · AWS Certificate Manager ユーザーガイド Table of Contents AWS Certificate Manager とは何ですか?.....

AWS Certificate Manager ユーザーガイドAPI Gateway

API Gateway の問題のトラブルシューティングエッジ最適化された API エンドポイントをデプロイすると、API Gateway は CloudFront ディストリビューションを設定します。CloudFront ディストリビューションは、アカウントではなく、API Gatewayによって所有されています。ディストリビューションは、API のデプロイ時に使用した ACM 証明書にバインドされます。バインドを削除して、ACM が証明書を削除できるようにするには、証明書に関連付けられている API Gateway カスタムドメインを削除する必要があります。

リージョン API エンドポイントをデプロイすると、ユーザーに代わって API Gateway によりアプリケーションロードバランサー (ALB) が作成されます。API Gateway によって所有されているロードバランサーは、ユーザーからは見えません。ALB は、API のデプロイ時に使用した ACM 証明書にバインドされます。バインドを削除して、ACM が証明書を削除できるようにするには、証明書に関連付けられている APIGateway カスタムドメインを削除する必要があります。

Version 1.0-105

Page 112: AWS Certificate Manager - ユーザーガイド · 2018-07-13 · AWS Certificate Manager ユーザーガイド Table of Contents AWS Certificate Manager とは何ですか?.....

AWS Certificate Manager ユーザーガイド

ドキュメント履歴次の表は、AWS Certificate Manager のドキュメントのリリース履歴をまとめたものです。

文書の最終更新: 2018 年 27 月 3 日

変更 説明 リリース日

新しいコンテンツ 証明書の透明性ログ記録のオプトアウト (p. 13) および 証明書の透明性ログ記録 (p. 4) に証明書の透明性ログ記録を追加します。

2018 年 3 月 27 日

新しいコンテンツ DNS 検証を「DNS を使用したドメインの所有権の検証 (p. 27)」に追加しました。

2017 年 11 月 21 日

新しいコンテンツ 新しい Java コード例を ACMAPI の使用 (p. 77) に追加しました。

2017 年 10 月 12 日

新しいコンテンツ CAA レコードに関する情報を(オプション) CAA レコードの設定 (p. 19) に追加しました。

2017 年 9 月 21 日

新しいコンテンツ .IO ドメインについての情報を トラブルシューティング (p. 97) に追加しました。

2017 年 7 月 07 日

新しいコンテンツ 証明書の再インポートについての情報を 証明書の再インポート (p. 49) に追加しました。

2017 年 7 月 07 日

新しいコンテンツ 証明書のピニングについての情報を ベストプラクティス (p. 12) と トラブルシューティング (p. 97) に追加しました。

2017 年 7 月 07 日

新しいコンテンツ AWS CloudFormation を AWSCertificate Manager に統合されるサービス (p. 9) に追加しました。

2017 年 5 月 27 日

更新 詳細情報を 制限 (p. 10) に追加しました。

2017 年 5 月 27 日

新しいコンテンツ 認証とアクセスコントロール (p. 55) に関するドキュメントを追加しました。

2017 年 4 月 28 日

更新 検証 E メールの送信先を示すグラフィックを追加しました。「Eメールを使用したドメインの所有権の検証 (p. 31)」を参照してください。

2017 年 4 月 21 日

Version 1.0-106

Page 113: AWS Certificate Manager - ユーザーガイド · 2018-07-13 · AWS Certificate Manager ユーザーガイド Table of Contents AWS Certificate Manager とは何ですか?.....

AWS Certificate Manager ユーザーガイド

変更 説明 リリース日

更新 ドメインの E メールの設定についての情報を追加しました。「(オプション) ドメインの Eメールを設定する (p. 18)」を参照してください。

2017 年 4 月 6 日

更新 証明書更新ステータスをコンソールで確認するための情報が追加されました。「証明書の更新ステータスの確認 (p. 42)」を参照してください。

2017 年 3 月 28 日

更新 Elastic Load Balancing を使用するためのドキュメントが更新されました。

2017 年 3 月 21 日

新しいコンテンツ AWS Elastic Beanstalk とAmazon API Gateway へのサポートが追加されました。「AWS Certificate Manager に統合されるサービス (p. 9)」を参照してください。

2017 年 3 月 21 日

更新 「マネージド型更新 (p. 40)」に関するドキュメントが更新されました。

2017 年 2 月 20 日

新しいコンテンツ 証明書のインポート (p. 46) に関するドキュメントを追加しました。

2016 年 10 月 13 日

新しいコンテンツ ACM アクション向けの AWSCloudTrail サポートが追加されました。「AWS CloudTrailを使用した AWS CertificateManager API 呼び出しのログ作成 (p. 63)」を参照してください。

2016 年 3 月 25 日

新規ガイド このリリースで AWS CertificateManager が導入されました。

2016 年 1 月 21 日

Version 1.0-107