Cloudflareの新しい秘密管理サービスであるSecrets Storeを発表できることを嬉しく思っています!
Secrets Storeは、その名の通り、秘密を保存するものです。機密とは、開発者が使用する変数で、機密情報(許可されたユーザーやシステムのみがアクセスできるべき情報)が含まれているものです。
アプリケーション構築の際、管理しなければならない機密にはさまざまな種類があります。すべてのシステムは、システムまたはアプリケーションへのアクセスを許可するために、何らかの形のアイデンティティを検証するアイデンティティ・認証データを持つように設計される必要があります。その一例として、データベースへの読み書きのリクエストを行うためのAPIトークンが挙げられます。これらのトークンを安全に保管しないと、意図的であれ偶発的であれ、情報への不正アクセスにつながる可能性があります。
機密の管理に関するリスクは非常に高いものがあります。これらの値の保存に瑕疵が少しでもあれば、データ漏洩や安全性が損なわれる可能性があります。セキュリティ管理者にとってはまさに悪夢でしょう。
開発者はアプリケーションの作成に主眼を置いており、素早い構築、システムの高性能化、規模拡大を望んでいます。開発者にとっての秘密管理とは、使いやすさ、パフォーマンス、信頼性を意味します。一方、セキュリティ管理者は、これらの機密を安全に保つことを任務としています。機密情報を保護し、セキュリティのベストプラクティスが行われていることを確認し、データ漏洩や侵害といったインシデントの影響管理は開発者の責任です。また、自社の開発者が安全かつ確実な方法で構築していることを検証するのも開発者の仕事です。
開発者が迅速に構築し、セキュリティ管理者が安心して利用するためには、企業は信頼性と安全性の高い機密管理者を採用する必要があります。これは、機密情報を最高のセキュリティ対策で保存することを保証しつつ、エンジニアリングチームが効率的に構築可能な、使い勝手の良いシステムである必要があります。
CloudflareがSecrets Storeを構築する理由
Cloudflareの使命は、より良いインターネットの構築を支援すること、つまり、より安全なインターネットを実現することです。当社は、機密データを安全かつ一元管理が可能なリポジトリを必要とするお客様のニーズを認識しています。Cloudflareのエコシステム内には、お客様がAPIや認可トークン、共有する秘密、機密情報を保存し、アクセスする必要があるさまざまな場所があります。この価値を、お客様が簡単に安全に管理できるようにするのが当社の仕事です。
機密管理の必要性は、Cloudflareにとどまりません。お客様は、クラウドプロバイダー、自社インフラストラクチャ、マシンなど、あらゆる場所で管理する機密データをお持ちです。今後は、お客様の秘密をワンストップですべてを管理するSecrets Storeとする予定です。
Cloudflareの秘密の進化
2020年、当社はCloudflare Workersのための環境変数と秘密を開始し、お客様はWorkerスクリプト全体で変数を作成し暗号化ができます。これにより開発者は変数の値を難読化し、平文では利用できなくなり、Workerからのみのアクセスを可能にします。
これらの秘密の採用や使用は急速に拡大しています。現在、Cloudflareで管理された変数や機密を参照するWorkersスクリプトは300万を超えました。お客様からのご意見の中に、「この秘密は範囲が狭すぎる」というものがあります。
現在、お客様は変数や機密を、それが関連するWorker内でしか使うことができません。その代わり、お客様はWorkers間で共有する秘密を持っています。その秘密の再現を望まず、同期に時間を集中させるのです。彼らは、一箇所で管理されながら、複数のWorkersスクリプトや機能で参照されるアカウントレベルの秘密を求めています。
Workers以外でも、Cloudflareサービス全体で機密を使用するケースは多くあります。
Webアプリケーション ファイアウォール(WAF)内において、お客様はリクエストへのアクセスを許可または拒否する認可ヘッダーの検索ルールを作成できます。現在、お客様がこれらのルールを作成する際、認証ヘッダーの値を平文にし、CloudflareアカウントのWAFアクセス権を持つ誰もがその値を確認できます。お客様の意見によれば、社内であってもエンジニアはこのような情報にアクセスすべきではないということでした。その代わり、お客様が求めているのは、このヘッダーやトークンの値を管理する場所を一元化し、権限のあるユーザーのみがこの値の閲覧、作成、回転できるようにすることです。そうすることで、WAFルール作成する際に、エンジニアは「account.mysecretauth」のような関連する機密を参照できるようになります。このように、アクセス範囲を狭めることでお客様のシステムの安全性を確保し、この値を一元的に更新することで管理を強化できるのです。
Cloudflareの新製品や機能が急速な発展を見せるなか、集中型機密管理者の使用例を耳にすることが多くなってきました。AccessサービストークンまたはWebhooksの共有秘密を保存するために使用できるものです。
新しいアカウントレベルのSecrets Storeにより、Cloudflareサービス全体で機密管理に必要なツールをお客様に提供できることを嬉しく思います。
Secrets Storeの安全確保
Secrets Storeを持つためには、さまざまな対策が必要であり、当社はそれをお客様に提供することにコミットしています。
まず、当社はお客様が機密へのアクセスを制限する際に必要となるツールを提供します。管理者が機密の閲覧、作成、編集、削除が可能なユーザーを選択できる範囲の許可を行う予定です。また、当社のサービスにも同レベルの詳細情報を追加する予定です。これにより、「この秘密へのアクセスはこのWorkerのみに許可し、秘密へのアクセスはこのファイアウォールルールのセットのみに許可する」機能をお客様に提供することができるのです。
次に、お客様が秘密へのアクセスや使用を追跡可能な広範な監査ができるようにすることです。セキュリティ管理者にとって、監査ログは非常に重要です。これは、秘密が不正なサービスに使用されたときや、安全性が損なわれた秘密が不適切なタイミングでアクセスされていることをチームメンバーに警告するために使用できます。お客様には、機密関連のイベントごとに監査ログをお渡しし、機密に変更を加えたのが誰で、どのサービスがいつアクセスしたのかを正確に把握できるようにします。
Secrets Storeに組み込まれたセキュリティに加え、オンデマンドで、あるいはお客様にとって正しいセキュリティ体制に合わせた周期で暗号化鍵をローテーションするツールを提供する予定です。
ベータ版へのサインアップ
当社は、Secrets Storeをお客様にお届けすることを嬉しく思います。ご興味のある方は、こちらのフォームにご記入いただければ、ご利用いただけるようになったときにご連絡いたします。