ドイツ銀行が Google Cloud で証明書を大規模に管理する方法

ドイツ銀行が Google Cloud で証明書を大規模に管理する方法
ドイツ銀行は 1870 年以降、世界各国の企業や政府、機関投資家、個人向けに多様な金融サービスを提供しています。お客様へのサービスと保護を強化するため、クラウドによる変革においては、ソフトウェア エンジニアは安全でスケーラブルかつ信頼性の高い証明書管理システムをクラウドのワークロード向けに構築する必要がありました。

ドイツ銀行は Google Cloud プロフェッショナル サービスと提携して、同社の数百あるアプリケーションにおいて転送中のデータの暗号化を効率的かつ安全に管理しています。これは簡単なことではありません。当行のビジネス クリティカルなアプリケーションには、ネットワーク通信の暗号化に使用するため毎日何万件にも及ぶ証明書が必要になるからです。

証明書の重要性

デジタル ID はインフラストラクチャとアプリケーションの保護において最も重要なものであり、X.509 証明書がその一般的な方法です。ネットワーク通信、メール、一般的な暗号化を安全に行うために広く使われています。サービス指向ソリューション アーキテクチャが広く採用されたことで、証明書によって保護されるエンティティの数は拡大しました。デジタル証明書には有効期限があり、正しく機能させるには、期限前に更新する必要があります。

業界ではセキュリティ リスク管理の向上のため、証明書の有効期間を短縮する動きがありますが、そうすることで、更新の頻度が高くなってしまいます。証明書が更新されなかった場合や、使用されてない証明書や不正使用された証明書が無効化されなかった場合、または信頼できる証明書が配布されなかった場合には、サービスの停止やセキュリティ侵害などの深刻な結果をもたらす可能性があります。

Google Cloud Certificate Authority Service

Google Cloud Certificate Authority Service(CAS)はオンプレミスの公開鍵基盤(PKI)サービスをクラウドのワークロードに拡張するための基礎となるものです。パブリック クラウドで動作する企業のワークロードすべてに対するフルマネージドの中央認証機関として機能するため、CAS は企業の証明書管理の中心的なコンポーネントをオンプレミスからクラウドに移行し、CAS インテグレーションを補完する自動化された統合ソリューション向けの便利なツールやサービスを提供できます。

組織のカスタム証明書をスケーラブルかつ安全にオンデマンドで発行する機能は、証明書管理において始まりにすぎません。Google Cloud では数十のマネージド サービスが提供されているため、CAS 証明書の使用を、現在のユースケースを超えて、クラウドとオンプレミスのシステム コンポーネント間の通信を保護するよう拡張する必要があります。

そのため、一元化された自動的なカスタム証明書のライフサイクル管理ソリューションが必要になっています。そうしたソリューションにより、アプリケーション開発チームのクラウド サービス構成にかかる負荷を軽減し、タスクを一元化して自動化することで、リソースが限られたチームでも管理できるようになります。

大規模な証明書管理の課題

証明書について、企業には組織および規制に関する要件やビジネス上の優先事項がさまざまあります。セキュリティが非常に重視され、規制が厳しい業界にあるドイツ銀行では、さらに高い目標があります。そうした目標のうち、最も重要なものをいくつかご紹介します。

運用

  • 費用を削減して可用性やセキュリティのリスクを最小化するため、可能な限り自動化します。
  • アプリケーションに対して証明書の管理を透明化することで、アプリケーション チームが証明書の有効期限や更新について心配する必要がないようにします。

セキュリティ

  • インターネットに接続するアプリケーションについてクライアントの最高レベルの信頼を確保します。公開認証局(CA)により最も厳格な身元確認の手順を使用して発行された証明書を通してアプリケーションのセキュリティを確保することで、ブランドとユーザーを保護します。
  • 本番環境と非本番環境でそれぞれの信頼境界を確立します。データ侵害を防止し、本番環境のセキュリティを強化するために、証明書を発行する別のトラスト アンカーを作成する必要があります。
  • 証明書の発行のためアプリケーション ドメインの所有権の検証を行います。企業はその環境で数千ものアプリケーションとサービスを実行しています。企業はアプリケーションにどのサブドメインの使用を許可するかを制御する必要があります。つまり、アプリケーションの未承認のサブドメインに対する証明書リクエストは拒否されます。

ガバナンス

  • 承認された CA によって発行された証明書のみが使用されるようにします。企業は組織内で使用される暗号化サービスを規制するポリシーにより、信頼性を管理し、リスクを軽減します。
  • 組織内で発行された証明書をモニタリングします。所有者、所在地、使用するアルゴリズムについてのすべての関連情報を含む証明書のインベントリを保持し、暗号に関する現在および今後の脅威の影響とその対応を特定して報告する際に活用します。たとえば、ポスト量子の技術革新によって指摘されるような将来の脅威です。
  • 規制機関によって要求される特定の証明書タイプを使用します。たとえば、電子決済サービスに関する EU 指令(PSD2)により、EU の eIDAS 規則で定義されたトラスト サービス プロバイダによって発行された QWAC 証明書および QSEAL 証明書を使用する必要があります。

自動化は膨大な数の証明書を効率的に管理するために非常に重要です。

証明書管理の自動化

ドイツ銀行の証明書管理ソリューションでは CAS およびその他の Google Cloud サービスを使用して課題に対処しています。次の図にこのアーキテクチャの概要を示します。

https://storage.googleapis.com/gweb-cloudblog-publish/images/00__CCMA_Blog__Overview.max-1493x840.jpg
このソリューションが役立つユースケースには次のものがあります。

  • 初期登録と証明書のプロビジョニング: IaC を介し、組織のセキュリティ ポリシー要件を遵守した有効な ID 情報(サブジェクト、サブジェクト代替名)を伴う新しい証明書をプロビジョニングします。
  • 証明書の内容の更新: 既存の証明書の属性(サブジェクト代替名)を変更します。
  • 証明書の更新: 新しい再検証済みの証明書を既存の証明書の有効期限が切れる前にプロビジョニングして、有効期限が切れる証明書を新しい証明書にアプリケーション チームの介入なしで自動的に置き換えます。
  • 証明書の無効化: 既存の証明書を無効にして、この証明書で保護されたネットワーク接続を介したデータ交換を停止し、証明書の鍵が不正使用された場合や紛失した場合に、データ交換が行われるのを防ぎます。
  • トラスト アンカー管理: 証明書の検証を行うサービスやアプリケーション向けに、トラスト アンカー(承認されたルート CA 証明書)の最新かつ正確な単一の「ゴールデン」ソースを提供します。信頼できる CA 証明書をクライアントおよびサーバーのアプリケーションに配信して保存し、TLS 証明書を検証できるようにします。
  • 認証局の更新: 認証局の証明書は一定期間を経過すると有効期限が切れるため、更新が必要になります。業界のベスト プラクティスに沿って、CA の有効期間は短縮される傾向にあります。

影響とメリット

証明書管理ソリューションを一元化すると、組織には複数のメリットがあります。

ドイツ銀行では、専任のセキュリティ チームが組織内のすべての証明書を運用および一元管理しています。ドイツ銀行の規模では、定型処理と規制を遵守した PKI サービスの自動化がなければ、実現不可能だったでしょう。手作業を排除してプロセスを改善し、証明書を自動的に管理することにより、費用を削減し、アプリケーション停止の可能性を低減することができました。このソリューションを本番環境にデプロイして以降、証明書の有効期限切れによるアプリケーションのインシデントは発生していません。

アプリケーションの高可用性は、特にインターネット接続サービスにおいては企業の評価や費用、規制の遵守に関わるため、非常に重要です。Google Cloud サービスを使用した証明書管理の自動化は、信頼性の高い、将来を見据えた最新ソリューションであるだけでなく、高可用性とスケーラビリティの要件も追加作業なしでネイティブに満たします。

Google のソリューションにより、転送中のデータの暗号化をアプリケーション チームが簡単に行えるようになり、ドイツ銀行の多層防御アプローチ全体をサポートできるようになりました。高エントロピーの安全な鍵を作成し、脆弱な鍵の使用を防ぐことができます。さらに、このように機密性の高い暗号資産は、所有するアプリケーションまたはリソースを除き、プロセス全体で暗号化され、平文で公開されることはありません。また、信頼性を確保したまま証明書の有効期間を短くできるようになりました。

証明書のモニタリング、制御、責任は、この難解な分野に関する優れた専門知識を持つ専任のチームが担当します。ドイツ銀行のクラウド環境でこれまでに使用された発行済みの内部証明書はすべて、CAS の一元管理下でモニタリングされている場所で記録、追跡されます。

まとめ

Cloud Key Management Service や Certificate Authority Service などの主要な Google Cloud サービスのサポートにより、証明書管理プロセスを最小のリソースで必要なレベルにスケールできます。当行のクラウド インフラストラクチャに CAS をベータ版の段階から採用することで、信頼できる証明書管理プラットフォームを Google Cloud 上に構築し、目標を達成することができました。

-ドイツ銀行、リード エンジニア Murat Kubilay 氏

Google Cloud ブログへ

事例カテゴリの最新記事