はじめに ─ チェック 1 つで $430 が請求された
AWS Certificate Manager(ACM)のパブリック証明書は、長らく 「ALB / CloudFront に紐付ける限り無料」 のサービスとして使われてきました。社内でも複数システムで日常的にリクエストしてきた、ほぼノーリスクのルーチン操作のはずでした。
先日、ドメイン整備の作業の一環で、社員に証明書のリクエスト作業を依頼しました。数日後に Cost Explorer を確認すると、Certificate Manager の行に USD 430 が立っている。心当たりがありません。「無料のはずでは?」と請求の内訳を開いて初めて、Exportable オプションを ON に証明書が発行されていることに気が付きます。
AWS サポートに事情を伝えて返金を依頼した結果、USD 430 全額をクレジットとして返金していただけました(ケース起票から判断まで実働 3 日)。本記事は同じ事故を踏むかもしれない方への注意喚起、そして踏んでしまったときの参考として公開します。なお返金可否は AWS の判断であり、すべてのケースで全額返金が約束されるものではないことだけは強調しておきます。
何が起きたか ─ 10 枚の証明書と $430 の内訳
| Usage Type | 単価(本件発生時) | 枚数 | 小計 |
|---|---|---|---|
APN1-IssueExportablePublicCertificateDomainFQDN 1 件(Exportable ON) | $7.00 | 5 | $35.00 |
APN1-IssueExportablePublicCertificateWildcardDomainワイルドカード 1 件(Exportable ON) | $79.00 | 5 | $395.00 |
| 合計(意図せず Exportable で発行した分のみ) | $430.00 | ||
特にワイルドカードの単価が $79 と高額で、無料だと想定していたため不用意に *. のドメインを複数作成していました。
ACM Exportable Public Certificate とは
ACM は元々 「AWS サービスに紐付けて使う前提なら、パブリック証明書は追加料金なし」 という発想で設計されたサービスで、ALB / CloudFront / API Gateway 等に統合される限り、秘密鍵は AWS の管理下のみで利用できる無料のサービスでした。
Exportable Public Certificate は 2025 年 6 月 17 日に追加された比較的新しいオプションで、「秘密鍵を含めて証明書本体をエクスポートし、オンプレや EC2 上の Web サーバ、AWS 外のクラウドなどでも使えるようにする」 機能を "有償" で提供しています。
| 種別 | 通常(Exportable OFF) | Exportable ON |
|---|---|---|
FQDN(api.example.com 等) | $0 | $7 |
ワイルドカード(*.example.com) | $0 | $79 |
なお本記事執筆時点(2026 年 5 月)の単価 FQDN $7 / ワイルドカード $79 は、2025 年 6 月のリリース当初の FQDN $15 / ワイルドカード $149 と比較して 約半額に引き下げられたものです。2026 年 2 月、AWS が公開証明書の最大有効期間を 395 日 → 198 日に短縮したタイミングで、これに比例する形で単価も値下げされた経緯があります。背景には CA/Browser Forum の方針(2026 年 3 月以降は最大 200 日、2029 年までに最大 47 日へ段階的短縮)があり、有効期間が短くなる分だけ年間で必要な再発行回数が増えるため、「単価 × 年間再発行回数」で見ると年間コスト感は概ね据え置きになる設計と読めます。今後さらに有効期間が短縮されるタイミングで単価が再度下がる可能性があります。
AWS の他サービスの多くは 時間単位課金(EC2 / NAT Gateway / RDS / ALB など)のため、 異常請求に気付いた時点でリソースを停止 / 削除すれば、被害は 分〜時間単位に抑えられます。 「気付く → 止める → 被害縮小」が成立する世界です。
一方、Exportable Public Certificate は AWS 公式の表記で upon issuance ── 証明書が DNS 検証(または E メール検証)を経て 「ISSUED」状態になった瞬間に 1 件あたりの料金($7 / $79)が確定します。リクエスト送信時点ではなく、検証完了 → 発行のタイミングで課金が走る点に注意。
理論上は 「リクエスト送信 → 検証完了前に削除」すれば課金を回避できます。ただし DNS 検証は CNAME 伝播後 数分〜数十分で自動完了し、E メール検証なら数十秒〜数分で完了するため、利用者が画面の前で待ち構えていない限り間に合いません。一度 ISSUED まで進めば、その後すぐに証明書を削除しても 発生済みの料金は戻りません。
本件でも発覚と同時に 10 枚を全削除しましたが、$430 はそのまま請求対象として残りました (後に AWS サポート交渉で全額クレジット返金を受けられたのは別の話で、毎回保証されるものではありません)。「無料前提のサービスに、有償かつ即時課金型のオプションが差し込まれた」──この二重構造が、 本件の被害を深刻にした最大の要因です。
事故の構造 ─ UIの問題 / 無料という思い込み
理由 1. UI の問題(確認ダイアログが出ない)
前提として、本件発生時点の ACM コンソールでは 「エクスポートを許可」のデフォルトは「無効にする」で、有効化するには利用者が明示的に「有効にする」のオプションを選択する必要があります。つまり「初期状態で勝手に ON になっていた」のではなく、利用者が選択して ON にしたうえで発行されたのが本件です。

問題は、「有効にする」を選択して発行する際に 「このまま続行すると 1 件あたり $XX が課金されます」といった料金確認ダイアログやインライン警告が表示されないことです。「有効にする」側の説明文には小さく 「ACM は、証明書が初めて発行されたときと更新するたびに、リクエストされたドメインに基づいてアカウントに請求します」と書かれているのみで、具体的な金額($7 / $79)も警告色も無しのため、注意して読まないと「有償オプション」だと気付きにくい設計になっています。

*.example.com)が複数含まれています。この画面で「リクエスト」を押した瞬間に、ワイルドカード 1 件あたり $79 が確定する構造です。料金ページや AWS 公式ドキュメントには課金条件が記載されているものの、コンソール上で操作している瞬間に「気付かせる」UI 要素は弱いのが現状です。リクエスト送信後、DNS 検証(または E メール検証)が完了して証明書が ISSUED 状態になった瞬間に、利用者が選択した「有効にする」が静かに課金へ直結します。
理由 2. 無料という思い込みで、指示出しのポイントが甘かった
ACM は長らく 「リクエストして ALB に貼るまで全て無料」 のサービスとして使われており、社内でも料金面で立ち止まる癖がそもそもありませんでした。リクエスト画面に新しい「エクスポートを許可」セクションが追加されていたことにも、依頼者(私)側で気付いていませんでした。
その結果、社員に作業を依頼するときも 「ACM で証明書を発行してほしい」だけで済ませ、Exportable オプションの存在や、ON にすると即時課金されることを事前に共有しませんでした。担当者は必要な事前情報を持たないまま、ACM のリクエスト画面と向き合うことになります。
「ACM = 無料」を疑わない依頼者の指示の甘さが、必要な事前情報なしに担当者を UI の罠の前に立たせた── これが本件の核心です。
担当者の落ち度というよりも、依頼者(私)の管理責任として捉えています。
発覚から返金完了までのタイムライン
社員にドメイン整備の証明書発行を依頼(Exportable の事前共有なし)
ドメイン整備の作業として、社員に ACM 証明書の発行を依頼。 依頼者(私)からは「FQDN とワイルドカードを ACM で発行してほしい」とだけ伝え、 Exportable オプションの存在や ON / OFF の意味、料金体系については事前に共有していなかった。 担当者は ACM コンソールのリクエスト画面で Exportable オプションが ON のまま 10 枚 (FQDN 5 + ワイルドカード 5)を発行。別の場面で発行された通常パブリック証明書 5 枚は OFF のまま無料で発行されており、作業自体は無事完了したと依頼者にも報告された。
Cost Explorer で「Certificate Manager $430」を発見 ─ 当日中に削除 + サポート起票
月次でコスト推移を眺めていて、見慣れない APN1-IssueExportablePublicCertificate*の行と USD 430 を発見。請求の内訳から Exportable オプションが原因と特定。 該当の 10 枚をすべて即時削除し、同日中に AWS サポートに「請求に関して / ご利用料金の訂正申請」カテゴリで返金依頼ケースを起票。
AWS から「USD 430 全額をクレジット付与」の連絡
起票から実働 3 日で、「担当部署にて慎重に検討した結果、$430 全額のクレジット付与が承認されました」との回答。今月分の請求が確定前のためクレジットで相殺、というシンプルな処理。 クレジットは AWS Billing Console > クレジット で確認できる旨も併記されていました。
サポートケースをクローズ
返金処理を確認のうえ、お礼を返信してケースをクローズ。 起票から完了まで 5 営業日、緊急度「一般的な質問」で起票しています。
再発防止 ─ MOOBON で実施していること
ACM Exportable Public Certificate は 発行時点で全額が即時確定する課金モデルのため、 Cost Anomaly Detection や AWS Budgets のような事後検知系では止血できません。
本来であれば IAM / SCP の条件キーで Exportable オプション ON のリクエストを Deny するのが最も筋の良い対策ですが、検討した範囲では それを実現できる条件キーは見つけられませんでした。そのため MOOBON では、発行前に止める手段として 「社内での周知徹底 / 依頼時の注意喚起」を運用の主軸にしています。
社内で共有・依頼する際に必ず注意喚起する
依頼を受けた側に Exportable の事前情報が無ければ UI の罠は「気付きようがない」ので、依頼者側の管理責任で塞ぐ必要があります。ACM 証明書の発行を社内で共有 / 依頼する際は、必ず Exportable オプションへの注意を添える運用にしています。
- 「Exportable は OFF のまま発行してください」を依頼文面に必ず 1 行明記する
- Exportable オプションの存在と 「発行時点で全額即時確定する」仕組みを社内で常時共有する
- 操作前 / 操作後の画面共有・スクリーンショットによる相互確認を習慣化する
あとがき
本記事は MOOBON の AWS コスト最適化記事とは対照的に、「気付かず払ってしまった」側のやらかし記録です。AWS は機能を増やしていくサービスである以上、無料前提のサービスに有償オプションが差し込まれる事象は今後も発生すると思っています。本記事は「同じ事故をもう 1 件でも減らせれば」という意図で公開しました。
日々のコスト管理として効くのは、月次で Cost Explorer の usage type 別ビューに目を通す習慣です。即時課金型の罠は事後検知では止血できない以上、定期的に請求の中身を眺めて突発の異常値を早期に拾えるかどうかが分かれ目になります。
それでも踏んでしまった場合は、すぐに諦めずに AWS サポートへの連絡を試してみてください。起票文面は AI に状況を整理させれば短時間でまとまるので、思っているより手間はかかりません。本件のように全額返金される保証はありませんが、対話のテーブルには乗せてもらえます。
AWS のコスト構造そのものを腰を据えて見直したい方は、MOOBON が公開している AWS コスト分析ツールや、姉妹記事の AWS 固定費を月 $310 削減した実例も併せてご覧ください。コスト診断 / 設計レビューのご相談もお気軽にどうぞ。
よくある質問
QACM の Exportable Public Certificate と通常のパブリック証明書は何が違うのですか?
従来からある通常のパブリック証明書は、ALB や CloudFront など AWS サービスに紐付ける用途では追加課金なしで利用できます。一方、Exportable Public Certificate は秘密鍵を含めた証明書本体をエクスポートして AWS 外で使えるようにする有償オプションです。Tokyo リージョンでは本件発生時点で FQDN 1 件あたり USD 7、ワイルドカード 1 件あたり USD 79 の発行料金が掛かりました(料金は AWS 側で改定される可能性があります。最新値は AWS 公式の料金ページでご確認ください)。
QACM コンソールで Exportable オプションを ON にすると、課金前に警告は出ますか?
本件発生時点では、Exportable を ON にしてリクエストする画面では追加料金が発生する旨の明確なポップアップやインライン警告は出ませんでした。料金ページや AWS 公式ドキュメントには記載がありますが、コンソール上で「このまま発行すると課金される」ことを直前に気付かせる UI 要素は弱く、無料という前提で操作した利用者は気付かずに ON のまま発行してしまう構造です。AWS 側で UI が変更されている可能性があるため、ご利用の際は実画面でご確認ください。
Q意図せず Exportable を有効にして発行してしまった証明書を削除すれば、課金は止まりますか?
残念ながら止まりません。Exportable Public Certificate は発行時点で 1 件あたりの料金が即時確定する課金モデルで、発行直後に削除しても発生済みの料金は戻りません。EC2 や NAT Gateway のような時間単位課金のサービスは「気付いて停止すれば被害は分〜時間単位で抑えられる」のが通常ですが、ACM Exportable は「気付いた時には既に全額計上済み」という特殊な挙動になります。IAM / SCP の条件キーで Exportable オプション ON のリクエストを Deny できれば理想的ですが、検討した範囲では該当する条件キーが見つけられませんでした。そのため MOOBON では「社内で共有・依頼する際に Exportable オプションへの注意喚起を必ず添える」運用を主軸にしています。本記事のケースでは、AWS サポートに事情を伝えて全額クレジット返金を受けることができました(返金可否は AWS の判断であり、毎回保証されるものではありません)。
QAWS サポートに返金を依頼する場合、どのプランから利用できますか?
請求に関する問い合わせ(Billing case)は、Basic / Developer / Business / Enterprise いずれのサポートプランでも無料で起票できます。技術的な相談には有償プランが必要ですが、本件のような「請求についての質問・訂正申請」は Basic プランでも問題なく利用できました。返金可否は AWS の判断であり、結果が保証されるものではないため、「お願いすれば必ず戻る」前提では運用しないでください。
Q再発防止として最低限おすすめできる対策は何ですか?
ACM Exportable は発行時点で全額即時確定する課金モデルのため、Cost Anomaly Detection や AWS Budgets のような事後検知系には止血効果がありません。IAM / SCP の条件キーで Exportable オプション ON のリクエストを Deny できれば理想的ですが、検討した範囲では該当する条件キーが見つけられませんでした。そのため MOOBON では「発行前に止める」運用として『社内で共有・依頼する際に Exportable オプションへの注意喚起を必ず添える』を徹底しています。具体的には、依頼文面に「Exportable は OFF のまま発行してください」を 1 行明記する、Exportable の存在と「発行時点で全額即時確定する」仕組みを社内で常時共有する、操作前 / 操作後の画面共有による相互確認を習慣化する、という 3 つを運用に組み込んでいます。
