リクエストに mTLS 認証 用のクライアント証明書が含まれると、Cloudflare は証明書の詳細を Ruleset Engine の変数として、また Workers の request.cf オブジェクトのプロパティとして公開します。
クライアント証明書のフィールドは、WAF カスタムルール や リクエストヘッダー変更ルール など、Ruleset Engine ベースの製品で mTLS フィールド として利用できます。
これらの変数は、Cloudflare Workers の request.cf.tlsClientAuth オブジェクトでも利用できます。定義の全体は、リンク先の Rules 言語フィールドを参照してください。
request.cf.tlsClientAuth.certRevoked— mTLS クライアントが、有効だが失効済みのクライアント証明書を提示したかどうかを示します。Workers では Boolean ではなく文字列です(失効時は"1"、未失効時は"0")。request.cf.tlsClientAuth.certVerified— mTLS クライアントが有効なクライアント証明書を提示したかどうかを示します。Workers では Boolean ではなく文字列です(有効時は"SUCCESS"、未提示時は"NONE")。失敗時は、エラー理由を含む文字列になります(例:"FAILED:unable to get local issuer certificate")。request.cf.tlsClientAuth.certPresented— mTLS クライアントが証明書を提示したかどうか(有効・無効を問わない)を示します。Workers では Boolean ではなく文字列です(提示時は"1"、それ以外は"0")。request.cf.tlsClientAuth.certIssuerDN— mTLS クライアント証明書を発行した認証局(CA)の識別名(DN)です。request.cf.tlsClientAuth.certSubjectDN— mTLS クライアント証明書の所有者(または申請者)の識別名(DN)です。request.cf.tlsClientAuth.certIssuerDNRFC2253— mTLS クライアント証明書を発行した認証局(CA)の識別名(DN)を、RFC 2253 ↗ 形式で表します。request.cf.tlsClientAuth.certSubjectDNRFC2253— mTLS クライアント証明書の所有者(または申請者)の識別名(DN)を、RFC 2253 ↗ 形式で表します。request.cf.tlsClientAuth.certIssuerDNLegacy— mTLS クライアント証明書を発行した認証局(CA)の識別名(DN)を、レガシー形式で表します。request.cf.tlsClientAuth.certSubjectDNLegacy— mTLS クライアント証明書の所有者(または申請者)の識別名(DN)を、レガシー形式で表します。request.cf.tlsClientAuth.certSerial— mTLS クライアント証明書のシリアル番号です。request.cf.tlsClientAuth.certIssuerSerial— mTLS クライアント証明書の直接の発行者のシリアル番号です。request.cf.tlsClientAuth.certFingerprintSHA256— mTLS クライアント証明書の SHA-256 フィンガープリントです。request.cf.tlsClientAuth.certFingerprintSHA1— mTLS クライアント証明書の SHA-1 フィンガープリントです。request.cf.tlsClientAuth.certNotBefore— この日付より前は、mTLS クライアント証明書は無効です。request.cf.tlsClientAuth.certNotAfter— この日付より後は、mTLS クライアント証明書は無効です。request.cf.tlsClientAuth.certSKI— mTLS クライアント証明書のサブジェクトキー識別子(SKI)です。request.cf.tlsClientAuth.certIssuerSKI— mTLS クライアント証明書の直接の発行者のサブジェクトキー識別子(SKI)です。request.cf.tlsClientAuth.certRFC9440— クライアントのリーフ証明書を RFC 9440 ↗ 形式(DER、Base64 エンコード、コロンで折り返し)で表します。request.cf.tlsClientAuth.certRFC9440TooLarge— リーフ証明書が 10 KiB のエンコード上限を超え、certRFC9440から省略された場合はtrueです。request.cf.tlsClientAuth.certChainRFC9440— 中間証明書チェーンを RFC 9440 ↗ 形式のカンマ区切りリストで表します。request.cf.tlsClientAuth.certChainRFC9440TooLarge— 中間チェーンが 16 KiB のエンコード上限を超え、certChainRFC9440から省略された場合はtrueです。