Certificate Authority Service のコンセプト

このページでは、Certificate Authority Service(CA Service)の主なコンセプトについて説明します。

関連情報

CA Service は、次のリソースで構成されます。

認証局プール

認証局プール(CA プール)は、CA Service のプライマリ リソースです。CA プールは、認証局と証明書のコンテナです。Identity and Access Management の条件、発行ポリシー、その他の構成は、CA プールに設定されます。証明書の発行も CA プールを介して行われ、CA プール内の CA 全体の証明書リクエストの負荷が分散されます。

認証局

認証局(CA)リソースは、証明書の署名に使用される個々の認証局を表します。CA Service では、ルート CA と下位 CA の両方を作成できます。ルート CA には自己署名証明書があり、証明書チェーンの最上位にあります。下位 CA の場合、CA 証明書の署名者は CA Service または外部 CA で作成した別の CA のいずれかです。後者の場合、CA Service は外部 CA が署名する必要がある証明書署名リクエスト(CSR)を生成します。Google Cloud CLI または Google Cloud コンソールを使用して、署名された PEM でエンコードされた証明書チェーンをアップロードすることで、新しい CA を有効にできます。

証明書

証明書は、認証局が発行した署名付き X.509 証明書です。

証明書失効リスト

証明書失効リスト(CRL)には、取り消された、信頼されていない証明書のシリアル番号が含まれます。CRL は CA の下にネストされたクラウド リソースとして存在しますが、PEM または DER エンコードで、一般公開されている HTTP ベースの URL を使用して Cloud Storage バケットに公開することもできます。

証明書テンプレート

証明書テンプレートは、個別の証明書発行シナリオを定義する最上位のリソースです。証明書テンプレートを使用して発行された証明書は、証明書テンプレートから事前構成された X.509 拡張機能(鍵の使用やパスの長さの制限など)を継承します。証明書テンプレートを使用すると、保持する拡張機能と、証明書リクエストから無視する拡張機能を定義できます。証明書テンプレートを使用して ID の制約を定義し、証明書の ID を制限できます。証明書テンプレートは 1 つ以上の CA プールで使用できます。

CA 署名鍵

CA Service は、Cloud Key Management Service を使用して CA 署名鍵を生成、保存、利用するように自動的に構成されます。CA Service では、証明書と CRL の署名に Cloud KMS 鍵バージョンが使用されます。独自の Cloud KMS 鍵を作成し、その後、この鍵を使用する CA を作成できます。また、CA に使用する Cloud KMS 鍵のアルゴリズムを指定すると、CA Service がこの鍵を自動的に作成して構成します。Cloud KMS 鍵は、ソフトウェア式またはハードウェア式のいずれかです。CA Service がユーザーに代わって鍵を作成すると、常にハードウェア格納型鍵が作成されます。

Cloud Storage バケット

CA Service で作成された CA は、デプロイされた CA と同じロケーションにある Cloud Storage バケット内の CA 証明書や CRL などのアーティファクトを公開します。Cloud KMS 鍵と同様に、Cloud Storage バケットは Google 管理のリソースまたは顧客管理のリソースのいずれかになります。

CA 階層

認証局の階層は、サポートされている機能と請求 SKU を示します。CA Service には、作成された CA プールごとに次の 2 つのオペレーション サービス階層が用意されています。

  • DevOps: 証明書の発行率やスループットを高めて証明書を発行します。これは、大量のシナリオで役立ちます。DevOps CA が発行した証明書は、CA データベースで追跡されないため、取り消すことはできません。DevOps CA は、Google が管理する鍵のみをサポートします。顧客管理の Cloud KMS 鍵はサポートしません。
  • Enterprise: 証明書発行スループットは低くなりますが、証明書の追跡や証明書の取り消しなどの CA オペレーションがサポートされます。これにより、この階層の CA は長期間の証明書の発行に適しています。エンタープライズ CA は、顧客管理の Cloud KMS 署名鍵と Google が管理する鍵の両方をサポートしています。

ポリシー制御

ポリシー制御を使用すると、CA プールが発行できる証明書の種類を制御できます。ポリシー制御は次のいずれかのタイプになります。

  • 発行ポリシーなどの大まかなポリシー制御。証明書発行ポリシーでは、その CA プール内の CA が発行できる証明書の種類を定義します。たとえば、CA プールが、クライアント TLS に対して正しい拡張鍵使用フィールドが設定されている証明書のみを発行できること、および CA 証明書を発行できないように制限できます。
  • 特定のユーザーが CA プールに対して実行でき、オペレーションが定められた、テンプレートを使用して表現された詳細なポリシー制御。証明書テンプレートを IAM 条件と組み合わせて使用すると、同じ CA プール上の異なるユーザーに異なるポリシー制御を効率的に作成できます。

CA Service では、次の方法でポリシー管理を適用できます。

  • CA プール全体から証明書を発行するためのベースラインを追加する。
  • 一般的な発行シナリオで再利用可能なパラメータ化されたテンプレートを使用する。
  • 条件による IAM バインディングのきめ細かい制御の適用。
  • ID リフレクションを使用したワークロード証明書のプロビジョニングの簡素化。

次のステップ