Webhook 定義
SSL for SaaS カスタムホスト名のためにウェブフック通知を作成する際に、特定のイベント(証明書の発行、検証の失敗など)に対する応答を自動化したい場合があります。
以下のセクションでは、Cloudflareがウェブフック宛に送信するデータの詳細を説明します。
証明書発行機関がドメインに対して証明書を発行する前に、リクエスターはそのドメインを制御していることを証明する必要があります。このプロセスはドメイン制御検証(DCV)として知られています。
Cloudflareは、証明書がpending_validationの状態からpending_issuanceに移行する際にこのアラートを送信します。
{ "metadata": { "event": { "id": "<<WEBHOOK_ID>", "type": "ssl.custom_hostname_certificate.validation.succeeded", "created_at": "2022-02-09T00:03:28.385080Z" }, "account": { "id": "<<ACCOUNT_ID>" }, "zone": { "id": "<<ZONE_ID>" } }, "data": { "id": "<<CUSTOM_HOSTNAME_ID>", "hostname": "blog.com", "ssl": { "id": "<<CERTIFICATE_ID>", "type": "dv", "method": "cname", "status": "pending_issuance", "settings": { "min_tls_version": "1.2", "http2": "on" } }, "custom_metadata": { "key1": "value1", "key2": "value2" }, "custom_origin_server": "0001.blog.com" }}Cloudflareは、証明書がDCVリトライ中にpending_validationの状態に留まるたびにこのアラートを送信します。
{ "metadata": { "event": { "id": "<<WEBHOOK_ID>", "type": "ssl.custom_hostname_certificate.validation.failed", "created_at": "2018-02-09T00:03:28.385080Z" }, "account": { "id": "<<ACCOUNT_ID>" }, "zone": { "id": "<<ZONE_ID>" } }, "data": { "id": "<<CUSTOM_HOSTNAME_ID>", "hostname": "blog.com", "ssl": { "id": "<<CERTIFICATE_ID>", "type": "dv", "method": "cname", "status": "pending_validation", "cname": "_ca3-64ce913ebfe74edeb2e8813e3928e359.app.example2.com", "cname_target": "dcv.digicert.com", "validation_errors": [ { "message": "blog.example.com reported as potential risk: google_safe_browsing" } ], "settings": { "min_tls_version": "1.2", "http2": "on" } }, "custom_metadata": { "key1": "value1", "key2": "value2" }, "custom_origin_server": "0001.blog.com" }}検証が完了すると、Cloudflareは選択した証明書発行機関と連携して証明書を発行します。
Cloudflareは、証明書がpending_validationまたはpending_issuanceの状態からpending_deploymentに移行する際にこのアラートを送信します。
{ "metadata": { "event": { "id": "<<WEBHOOK_ID>", "type": "ssl.custom_hostname_certificate.issuance.succeeded", "created_at": "2022-02-09T00:03:28.385080Z" }, "account": { "id": "<<ACCOUNT_ID>" }, "zone": { "id": "<<ZONE_ID>" } }, "data": { "id": "<<CUSTOM_HOSTNAME_ID>", "hostname": "blog.com", "ssl": { "id": "<<CERTIFICATE_ID>", "type": "dv", "method": "cname", "status": "pending_deployment", "settings": { "min_tls_version": "1.2", "http2": "on" } }, "custom_metadata": { "key1": "value1", "key2": "value2" }, "custom_origin_server": "0001.blog.com" }}Cloudflareは、証明書がDCVリトライ中にpending_issuanceの状態に留まるたびにこのアラートを送信します。
{ "metadata": { "event": { "id": "<<WEBHOOK_ID>", "type": "ssl.custom_hostname_certificate.issuance.failed", "created_at": "2022-02-09T00:03:28.385080Z" }, "account": { "id": "<<ACCOUNT_ID>" }, "zone": { "id": "<<ZONE_ID>" } }, "data": { "id": "<<CUSTOM_HOSTNAME_ID>", "hostname": "blog.com", "ssl": { "id": "<<CERTIFICATE_ID>", "type": "dv", "method": "cname", "status": "pending_issuance", "cname": "_ca3-64ce913ebfe74edeb2e8813e3928e359.app.example2.com", "cname_target": "dcv.digicert.com", "validation_errors": [ { "message": "caa_error: blog.example.com" } ], "settings": { "min_tls_version": "1.2", "http2": "on" } }, "custom_metadata": { "key1": "value1", "key2": "value2" }, "custom_origin_server": "0001.blog.com" }}発行された証明書は、Cloudflareのグローバルエッジネットワークに展開されます。
Cloudflareは、証明書がpending_deploymentの状態からactiveに移行する際にこのアラートを送信します。
{ "metadata": { "event": { "id": "<<WEBHOOK_ID>", "type": "ssl.custom_hostname_certificate.deployment.succeeded", "created_at": "2022-02-09T00:03:28.385080Z" }, "account": { "id": "<<ACCOUNT_ID>" }, "zone": { "id": "<<ZONE_ID>" } }, "data": { "id": "<<CUSTOM_HOSTNAME_ID>", "hostname": "blog.com", "ssl": { "id": "<<CERTIFICATE_ID>", "type": "dv", "method": "cname", "status": "active", "settings": { "min_tls_version": "1.2", "http2": "on" } }, "custom_metadata": { "key1": "value1", "key2": "value2" }, "custom_origin_server": "0001.blog.com" }}Cloudflareは、証明書がDCVリトライ中にpending_deploymentの状態に留まるたびにこのアラートを送信します。
{ "metadata": { "event": { "id": "<<WEBHOOK_ID>", "type": "ssl.custom_hostname_certificate.deployment.failed", "created_at": "2022-02-09T00:03:28.385080Z" }, "account": { "id": "<<ACCOUNT_ID>" }, "zone": { "id": "<<ZONE_ID>" } }, "data": { "id": "<<CUSTOM_HOSTNAME_ID>", "hostname": "blog.com", "ssl": { "id": "<<CERTIFICATE_ID>", "type": "dv", "method": "cname", "status": "pending_deployment", "settings": { "min_tls_version": "1.2", "http2": "on" } }, "custom_metadata": { "key1": "value1", "key2": "value2" }, "custom_origin_server": "0001.blog.com" }}Cloudflareは、証明書がpending_deletionの状態からdeletedに移行する際にこのアラートを送信します。
{ "metadata": { "event": { "id": "<<WEBHOOK_ID>", "type": "ssl.custom_hostname_certificate.deletion.succeeded", "created_at": "2022-02-09T00:03:28.385080Z" }, "account": { "id": "<<ACCOUNT_ID>" }, "zone": { "id": "<<ZONE_ID>" } }, "data": { "id": "<<CUSTOM_HOSTNAME_ID>", "hostname": "blog.com", "ssl": { "id": "<<CERTIFICATE_ID>", "type": "dv", "method": "cname", "status": "deleted" }, "custom_metadata": { "key1": "value1", "key2": "value2" }, "custom_origin_server": "0001.blog.com" }}Cloudflareは、証明書がDCVリトライ中にpending_deletionの状態に留まるたびにこのアラートを送信します。
{ "metadata": { "event": { "id": "<<WEBHOOK_ID>", "type": "ssl.custom_hostname_certificate.deletion.failed", "created_at": "2022-02-09T00:03:28.385080Z" }, "account": { "id": "<<ACCOUNT_ID>" }, "zone": { "id": "<<ZONE_ID>" } }, "data": { "id": "<<CUSTOM_HOSTNAME_ID>", "hostname": "blog.com", "ssl": { "id": "<<CERTIFICATE_ID>", "type": "dv", "method": "cname", "status": "pending_deletion" }, "custom_metadata": { "key1": "value1", "key2": "value2" }, "custom_origin_server": "0001.blog.com" }}発行された証明書は、証明書発行機関に応じて一定期間有効です。
証明書を更新するために必要なアクションは、検証方法に依存します。
{ "metadata": { "event": { "id": "<<WEBHOOK_ID>", "type": "ssl.custom_hostname_certificate.renewal.upcoming_certificate_expiration_notification", "created_at": "2022-02-09T00:03:28.385080Z" }, "account": { "id": "<<ACCOUNT_ID>" }, "zone": { "id": "<<ZONE_ID>" } }, "data": { "id": "<<CUSTOM_HOSTNAME_ID>", "hostname": "blog.com", "ssl": { "id": "<<CERTIFICATE_ID>", "status": "active", "hosts": ["blog.example.com"], "issuer": "DigiCertInc", "serial_number": "1001172778337169491", "signature": "ECDSAWithSHA256", "uploaded_on": "2021-11-17T04:33:54.561747Z", "expires_on": "2022-11-21T12:00:00Z", "custom_csr_id": "7b163417-1d2b-4c84-a38a-2fb7a0cd7752", "settings": { "min_tls_version": "1.2", "http2": "on" } }, "custom_metadata": { "key1": "value1", "key2": "value2" }, "custom_origin_server": "0001.blog.com" }}Cloudflareは、証明書がactiveの状態からpending_deploymentに移行する際にこのアラートを送信します。
{ "metadata": { "event": { "id": "<<WEBHOOK_ID>", "type": "ssl.custom_hostname_certificate.renewal.succeeded", "created_at": "2022-02-09T00:03:28.385080Z" }, "account": { "id": "<<ACCOUNT_ID>" }, "zone": { "id": "<<ZONE_ID>" } }, "data": { "id": "<<CUSTOM_HOSTNAME_ID>", "hostname": "blog.com", "ssl": { "id": "<<CERTIFICATE_ID>", "type": "dv", "method": "cname", "status": "pending_deployment", "settings": { "min_tls_version": "1.2", "http2": "on" } }, "custom_metadata": { "key1": "value1", "key2": "value2" }, "custom_origin_server": "0001.blog.com" }}Cloudflareは、証明書がactiveの状態からpending_issuanceに移行する際にこのアラートを送信します。
{ "metadata": { "event": { "id": "<<WEBHOOK_ID>", "type": "ssl.custom_hostname_certificate.renewal.failed", "created_at": "2022-02-09T00:03:28.385080Z" }, "account": { "id": "<<ACCOUNT_ID>" }, "zone": { "id": "<<ZONE_ID>" } }, "data": { "id": "<<CUSTOM_HOSTNAME_ID>", "hostname": "blog.com", "ssl": { "id": "<<CERTIFICATE_ID>", "type": "dv", "method": "cname", "status": "pending_issuance", "cname": "_ca3-64ce913ebfe74edeb2e8813e3928e359.app.example2.com", "cname_target": "dcv.digicert.com", "validation_errors": [ { "message": "caa_error: blog.example.com" } ], "settings": { "min_tls_version": "1.2", "http2": "on" } }, "custom_metadata": { "key1": "value1", "key2": "value2" }, "custom_origin_server": "0001.blog.com" }}時折、対応する<<CUSTOM_HOSTNAME_ID>>およびhostnameの値を含まないウェブフック通知が表示されることがあります。
この動作は、各カスタムホスト名に対して一つの証明書しか添付できないためです。以前に添付された証明書は、関連するホスト名やIDの値を含まなくてもウェブフックイベントを発生させることができます。
カスタムホスト名証明書の変更に関する通知を受け取るために、アラートを設定できます。
SSL for SaaS Custom Hostnames Alert
Who is it for?Customers with custom hostname certificates who want to receive a notification on validation, issuance, renewal, and expiration of certificates. For more details around data formatting for webhooks, refer to the Cloudflare for SaaS docs.
Other options / filtersNone.
Included withPurchase of Cloudflare for SaaS.
What should you do if you receive one?You only need to take action if you are notified that you have a certificate that failed. You can find the reasons why a certificate is not being issued in Troubleshooting SSL errors.
Refer to Cloudflare Notifications for more information on how to set up an alert.