エンロールメントプロトコル
デバイスとワークロードが、すでに話しているプロトコルを使って自動的にエンロールできるようにします。
概要
手動のリクエストと承認のワークフローに加えて、DuoKey は標準的なエンロールメントプロトコルを公開しており、クライアントは人手を介さずに証明書を取得・更新できます。各プロトコルには、クライアントが呼び出すパブリックなプロトコルエンドポイントと、Cockpit 上の(CA に紐付き、権限によって制御される)管理設定があります。
| プロトコル | 標準 | 典型的なクライアント |
|---|---|---|
| ACME | RFC 8555 | certbot、acme.sh、Kubernetes cert-manager、Caddy |
| EST | RFC 7030 | ルーター、ゲートウェイ、IoT デバイス |
| SCEP | RFC 8894 | ネットワーク機器、MDM 管理エンドポイント |
| CMP | RFC 4210 / 9483 | 産業用およびオペレーター PKI |
| cert-manager | Kubernetes | Kubernetes ワークロード(外部発行者) |
| KMIP | OASIS KMIP 2.1 | KMIP クライアント(鍵/証明書オブジェクト) |
ACME(RFC 8555)
CA ごとの完全な ACME サーバーで、アカウント、注文、認可、チャレンジ、ファイナライズ、ダウンロード、失効という一連のフローをカバーします。任意の ACME クライアント(または cert-manager の ACME 発行者)を CA の ACME ディレクトリ URL に向けるだけで利用できます。
EST(RFC 7030)
Enrollment over Secure Transport(セキュアトランスポート経由のエンロールメント)で、デバイスとゲートウェイ向けに標準の cacerts、simpleenroll、simplereenroll、serverkeygen、csrattrs の各操作をサポートします。
SCEP(RFC 8894)
Simple Certificate Enrollment Protocol で、ネットワーク機器や MDM 管理エンドポイントなど従来型の SCEP クライアント向けに設定可能なプロファイルを提供します。
CMP(RFC 4210 / 9483)
Certificate Management Protocol で、名前付きのエイリアス、トランザクション追跡、エイリアスごとのメトリクスを備え、産業用およびオペレーター PKI 向けに利用できます。
Kubernetes cert-manager
DuoKey を cert-manager の外部発行者として登録します。cert-manager が CSR を送信すると DuoKey が署名済み証明書を返却し、Kubernetes が管理する鍵を自組織の CA に対してエンロールされた状態に保ちます。
KMIP 2.1 サーバー
DuoKey はKMIP サーバーとして動作し、鍵/証明書オブジェクトと操作を KMIP クライアントに公開できます。
統合されたエンドポイントライフサイクル
すべてのプロトコルエンドポイント(EST / SCEP / ACME / CMP / KMIP)は、デプロイ、開始、一時停止、停止という共通のエンドポイントライフサイクルを共有し、ヘルスチェックとメトリクスを備えているため、一貫した方法で運用できます。