Keeper Secrets Manager デモ

テクノロジー



こんにちは。Keeper SecurityのCTO兼共同設立者のCraig Lureyと申します。ほとんどの開発チームは秘密情報の管理と保護に苦心しています。それが、Keeper Secrets Managerを作った動機です。APIキーやデータベースパスワード、クラウドアクセスキー、証明書、SSH鍵、サービスアカウントパスワード、あらゆる種類の機密データなど、インフラストラクチャの機密情報をすべて管理するための完全なクラウドベースのゼロ知識プラットフォームを利用できます。一般的に、大企業でも小企業でも、秘密情報はあちこちに分散して保存されているものです。ソフトウェアに直接ハードコードされたプレーンテキストのconfigファイル、S3バケット、ソースコードのRepostにチェックインされたり、開発者のワークステーションに置かれるC I C Dツールなど、リストは延々と続きます。ハイブリッドクラウドやマルチクラウド環境を扱っていると、さらに状況は悪化します。そのため、こうした機密情報を各環境の個別のデータストアに複製して、攻撃対象をどんどん拡大していきます。たとえば、APIキー、データベースパスワード、または証明書を更新する必要がある場合など、秘密情報をローテーションする必要があると、本番システム全体が停止するリスクがあり、秘密情報が使用されている場所もわからなくなる恐れがあります。従来、Hashicorp Vaultのような製品は、ホストされ、ストレージエンジンで設定されなければならない障害サーバを提供することによって、この問題を解決しようとしています。ピアリングは、ある問題を別の問題と交換しているだけです。市場に出回っている他の製品では、インフラストラクチャを実行する必要のあるプロキシサーバをインストールする必要があります。そのため、複雑さ、メンテナンス、およびセキュリティの問題が増大します。ここがKeeperの腕の見せ所です。Keeper Secrets Managerは、当社のゼロ知識、ゼロトラスト、およびクラウドベースのモデルに基づいて構築された、チームの機密を管理するための簡潔かつ安全なソリューションを提供します。そのためKeepersモデルでは、すべてのサーバー、DevOpsツール、開発環境、ソースコードが、暗号化されたAPIエンドポイントから秘密情報を取得します。デバイスはエンドポイントから暗号テキストを引っ張り、各デバイスでローカルに秘密が復号されます。各シークレットは256ビットAESキーで暗号化され、すべてのキーはAESおよび楕円曲線キーの追加レイヤーでラップされます。当社のSDKは暗号化を透過的に処理するので、暗号化を処理する必要はありません。Keeperを使って秘密を管理することには、多くの利点があります。すでに何百万人ものユーザーと何千もの企業が、パスワードと機密データの管理にゼロ知識プラットフォームを選択しています。Secrets Managerは、開発者向けに開発されたプラットフォームを自然に拡張したものです。基本的な例を見てみましょう。この例では、いくつかの記録を作成し、アプリケーションに記録へのアクセスを許可し、最後に、アプリケーションとして秘密情報を消費します。最初に行うことは、管理者のWeb Vaultにログインすることで、Microsoft Azureをシングルサインオンに使用します。Azureを使っている理由は、ユーザーがSAML 2.0互換の任意のIDプロバイダーを使ってVaultにログインできる、エンタープライズ環境ではかなり一般的なユースケースだからです。また、Jump Cloud、Okta、Ping、Duoなどのサービスも提供しています。ログイン後、私のVaultはKeeperの暗号化モデルでデバイス上でローカルに復号化されます。Vaultは、楕円曲線の秘密キーを使用してデバイス上でローカルに暗号化および復号化され、個々のフォルダおよび記録は、独自のクライアント側で生成された256ビットAESキーを使用して暗号化されます。さて、ここにプライベートフォルダと共有フォルダがいくつかあります。新しい共有フォルダを作成し、「Production Secrets」という名前を付けます。次に、Secrets Managerのチームメンバーにこのフォルダへのアクセスを許可します。共有フォルダに他のチームメンバーを追加する必要はありませんが、一般的な環境では、アクセスが必要な複数のDevOpsチームメンバーが存在します。次に、フォルダに秘密情報を作成します。「新規作成」をクリックします。ここでは、データベースのタイプを選択し、それを本番MySQLデータベースと呼びます。もう1つ秘密情報をこのフォルダに入れましょう。Stripe APIキーを追加します。多くのエンジニアはコマンドラインツールを好むので、今回はKeeper Commanderにある当社のCLIからそれを行います。Secrets Managerのユースケースでは、アプリケーションに特定の秘密へのアクセスを許可できます。ベストプラクティスとして、アプリケーションは最小権限の原則に従う必要があります。つまり、管理者はすべてにアクセスできます。ただし、アプリがアクセスできるのは、必要最小限のアクセス許可のみです。「Secrets Manager」アプリケーションを使用して、「Secrets Manager」アプリケーションを作成します。この製品をそのまま呼び出します。list SFコマンドを使用して、共有フォルダの識別子を取得します。ボルトインターフェースには、共有フォルダ「U I D」もあります。次に、アプリケーションを共有フォルダに割り当てます。これにより、暗号化の観点からボルトの一部が分割されます。したがって、特定のデバイスだけがこれらの特定の秘密情報へのアクセスを要求できます。1つ以上のデバイスを同じ秘密情報管理アプリケーションおよび秘密情報のセットに割り当てることができます。クラスターまたはAuto Scalingグループにコードをデプロイする場合は、すべてのインスタンスで同じデバイスを使用できます。Secrets Manager Client Ad Commandは、1回限りのアクセストークンを生成します。このトークンは、デバイスをSecrets Managerに接続する次の手順で使用します。私はIPロックダウンを使ってこれを設定しました。これはセキュリティの追加レイヤです。では、これまでの作業を確認します。 共有フォルダを作成しました。MY SQLデータベースのパスワードとStripe APIキーをフォルダに追加しました。次に、フォルダをSecrets Managerアプリケーションと共有し、デバイスを接続するためのワンタイムアクセストークンを生成しました。これで、会社の本番機に秘密情報を要求する準備が整いました。これを実演するために、簡単なスクリプトをPythonシェルに貼り付けます。このスクリプトはデバイスを初期化し、秘密情報を一覧表示します。ご覧のように、秘密情報は正常に消費されました。秘密情報を取得するもう1つの強力な方法は、KSMアプリケーションを使用することです。任意の媒体から秘密情報を取得および更新できます。Keeper Secretsを使用して環境変数の置換を実行できます。これは、環境変数を使用する構築スクリプト、コンテナ、およびアプリケーションに非常に便利です。秘密情報に保存するには、任意の変数をこのようなKeeper URL形式に置き換えます。Java、JavaScript、Python go.net、PowerShell、More Keeperで利用できるSDKがあります。Secrets Managerは、GitHub、Actions、Jenkins、Azure、DevOps、Docker、Kubernetes、Ansibleなど、多くのDevOpsツールとすぐに統合でき、またその統合オプションの数は増えています。Keeper Secrets Managerのパワーとシンプルさについて、ご理解いただければ幸いです。要約すると、ホストするサーバーはありません。完全なゼロ知識の暗号化であり、オンプレミスのインフラはありません。極めてシンプルに使えます。keepersecurity.comでは、Secrets Managerにアクセスして作業を開始したり、完全なエンタープライズプラットフォームデモをご覧になったりできるようになっています。また、Secrets Managerのドキュメント(docs.keepersecurity.io/SecretsManager)も参照してください。
ありがとうございます。

Comments

Copied title and URL