AWS Certificate Manager (ACM)のCT(Certificate Transparency)をオプトアウトする

この記事は公開されてから1年以上経過しています。情報が古い可能性がありますので、ご注意ください。

ども、大瀧です。 2月末にアナウンスされたACMのCT対応ですが、アナウンス時の予告通りオプトアウト方法が公開されました。早速試してみた様子をレポートします。

CT(Certificate Transparency)のオプトアウトとは

Certificate TransparencyはGoogleが提唱するTLS証明書の出所を明らかにするための仕組みで、CTのログサーバーによって証明書の発行履歴が公開されるとともに、証明書にCTに関する情報を追加します。Google Chromeブラウザでは2018年5月より、それ以降に発行されたTLS証明書がCT情報を持たない場合に警告を表示するようになります。

公開サービスの証明書であれば順次CT対応を進めるのが望ましいですが、ドメイン名が公になると都合の悪いドメインでTLS証明書を扱いたい場合もあるでしょう。例えば未発表の製品名であるとか、機密性の高い情報を扱うシステムのドメインなどです。ブラウザでの警告を避けることはできませんが、敢えてCTをオプトアウトすると判断することもありえるわけです。

オプトアウト手順

ACMでは2018年4月24日以降に発行する証明書は既定でCTが有効になり、設定としてオプトアウトを指示することができます。以下で対応します。

証明書の説明 オプトアウトの対応
発行済みの既存の証明書 証明書の次回更新までにオプトアウトを設定する
新規の証明書を2018年4月24日以前に発行する 証明書の次回更新までにオプトアウトを設定する
新規の証明書を2018年4月24日以降に発行する 証明書発行時にオプトアウトを設定する

現時点ではAWS Management Consoleではオプトアウトに対応していないため、設定はAWS CLIなどACMのAPIを呼ぶ仕組みで対応します。今回はAWS CLIで設定します。

既存の証明書でCTをオプトアウトする

AWS CLIで証明書のオプションを変更するaws acm update-certificate-optionsコマンドの--optionsオプションで指定します。証明書をARNで選択するので事前に控えておきましょう。

$ aws acm update-certificate-options \
  --certificate-arn arn:aws:acm:us-east-1:XXXXXXXXXXXX:certificate/XXXXXXXXXXXX \
  --options CertificateTransparencyLoggingPreference=DISABLED
$

設定したら、aws acm describe-certificateコマンドで確認しましょう。

$ aws acm describe-certificate \
  --certificate-arn arn:aws:acm:us-east-1:XXXXXXXXXXXX:certificate/XXXXXXXXXXXX
{
    "Certificate": {
        "CertificateArn": "arn:aws:acm:us-east-1:XXXXXXXXXXXX:certificate/XXXXXXXXXXXX",
        "Status": "ISSUED",
        "Options": {
            "CertificateTransparencyLoggingPreference": "DISABLED"
        },
        "SubjectAlternativeNames": [
            "www.example.com"
        ],
  :(以下略)

OKですね。

新規の証明書でCTをオプトアウトする

証明書発行時にCTをオプトアウトします。AWS CLIで証明書発行をリクエストするaws acm request-certificateコマンドの--optionsオプションで指定します。他のオプションは任意のものでOKです。

$ aws acm request-certificate \
  --domain-name www.example.com \
  --validation-method DNS \
  --options CertificateTransparencyLoggingPreference=DISABLED
{
    "CertificateArn": "arn:aws:acm:us-east-1:XXXXXXXXXXXX:certificate/XXXXXXXXXXXX"
}
$

既存の設定変更と同様に、aws acm describe-certificateコマンドで確認するのが良いでしょう。

まとめ

ACMの証明書でCTをオプトアウトする手順をご紹介しました。ちょっと特殊な用途での対応ですが、頭の片隅に置いておくと役に立つときが来るかもしれません。

参考URL