セキュリティのモダナイゼーションは、
大規模に成果を上げていますか?
GitLabは、業界をリードするお客様との取り組みをもとに、この成熟度フレームワークを作成しました。チームのセキュリティとコンプライアンスへの取り組みについていくつかの質問に答えるだけで、成熟度スコアと次のステージに向けた推奨事項をご確認いただけます。
所要時間は5分以内です
Secrets Manager
OpenBao上に構築されたGitLab Secrets Managerで、シークレットの乱立に終止符を。パイプラインとランタイムのシークレットを1つのストアから読み取り、コードをすでに保護している権限と監査証跡で統制します。

デベロッパーが普段作業している場所でシークレットを管理
GitLab Secrets Managerでは、シークレットはそれを使用するコードと同じグループとプロジェクトに保存されます。そのため、シークレットのリクエストは通常のワークフローの中で完結し、プラグインやエージェント、新たに習得すべき別のツールは必要ありません。

アクセスは既存のグループとプロジェクトの階層に従い、きめ細かな権限でさらに細かく制御できます。同期し続けなければならない2つ目のアクセスモデルはありません。認証情報はプロジェクトレベルで一度定義することも、グループ全体で共有することもできます。プロジェクトから外れたメンバーは、自動的にアクセス権を失います。
デベロッパーは、ジョブに必要なシークレットをパイプライン設定ファイルのsecrets:キーワードで宣言します。GitLabはジョブのプロジェクト、ブランチ、環境をすでに把握しているため、CIと別のvaultとの間でIDを連携させる必要はありません。
シークレットの参照が壊れても、修正はコードと同じマージリクエストでリリースでき、別のリポジトリや承認者は必要ありません。安全な認証情報をわずか1行で利用できるため、CI変数、ローカルの設定ファイル、リポジトリに紛れ込むシークレットが減ります。
漏洩した認証情報の影響範囲を限定
侵害された依存関係がジョブ内で実行されても、GitLab Secrets Managerなら、対応はそのジョブがアクセスできたシークレットのローテーションと監査だけで済み、すべてのパイプラインを止める必要はありません。

パイプライン内のすべてのジョブに届くCI変数とは異なり、シークレットが届くのは、それを宣言し、かつスコープの条件(ブランチ、環境、保護ステータス)を満たすジョブだけです。
Secrets Managerは値を一時ファイルに書き込み、そのパスだけを公開するため、サブプロセス、クラッシュダンプ、テレメトリーへの露出を抑えられます。値はジョブログでマスクされ、ジョブの終了時に破棄されるため、Runnerには何も残りません。
作成・読み取り・更新・削除のイベントは、GitLabの他のイベントと同じ監査証跡に記録されます。パイプラインからの読み取りにはパイプラインIDとジョブIDが含まれるため、インシデント対応者や監査担当者は、複数システムのログを手作業で突き合わせることなく、認証情報をアクセスからデプロイまでたどれます。
パイプライン、クラスター、インフラストラクチャを1つのストアで
パイプラインはシークレットを直接読み取ります。Kubernetesワークロード、TerraformとOpenTofuの実行、Vault互換のCLIツール、その他の自動化処理は、標準的な連携ポイントを通じて接続し、パイプラインと同じ権限と監査証跡のもとで動作します。

External Secrets OperatorがKubernetesのシークレットをGitLabと同期し続けるため、ローテーションした値は再デプロイなしで反映されます。TerraformとOpenTofuは実行時にシークレットをデータソースとして読み取るため、認証情報をファイルやCI/CD変数に残さずに済みます。
OpenBao上に構築されたSecrets ManagerはVault互換のAPIを公開しているため、OpenBaoやVault CLIを前提にスクリプトを組んでいるチームは、既存のコマンドをそのまま使えます。その他の自動化処理は、認証情報をハードコーディングしたり、変数ファイルを別途管理したりすることなく、Secrets Manager APIを通じてシークレットを取得できます。
認証情報は、プラットフォームごとのIDフェデレーションなしで、マルチクラウド、ハイブリッド、オンプレミスのワークロードに対応します。ワークロードを別のクラウドに移しても2つ目のストアを立ち上げる必要はなく、アカウントやリージョンごとのストアに散らばりがちなシークレットを1か所にまとめられます。
[ 保護 ]
シークレットの漏洩をブロック・検出GitLabの役割は、認証情報の管理だけにとどまりません。シークレットプッシュ保護は認証情報がリポジトリに到達する前にブロックし、クライアント側のシークレット検出はイシューやマージリクエストのテキストに含まれるシークレットを検出し、パイプラインシークレット検出はすでにコードに含まれるシークレットを見つけ出します。Duo Agent Platformは検出結果をトリアージし、誤検出の可能性が高いものにフラグを立てます。

[ 料金 ]
使った分だけのお支払いGitLab Secrets Managerは、PremiumおよびUltimate向けの有料アドオンで、GitLabクレジットを通じて課金されます。保存されたシークレット1件につき月1クレジット、シークレットの読み取り操作2,500回につき1クレジットです。定額料金をご希望の場合は、エンタープライズライセンス契約(ELA)もご利用いただけます。

// 次の時代をリードする
すでにPremiumまたはUltimateをご利用ですか?トップレベルグループのオーナーは、GitLab Secrets Managerを30日間、または500評価クレジットを使い切るまでのいずれか早い方まで、無料でお試しいただけます。
トライアルを開始セキュリティのモダナイゼーションは、
大規模に成果を上げていますか?
GitLabは、業界をリードするお客様との取り組みをもとに、この成熟度フレームワークを作成しました。チームのセキュリティとコンプライアンスへの取り組みについていくつかの質問に答えるだけで、成熟度スコアと次のステージに向けた推奨事項をご確認いただけます。
所要時間は5分以内です

よくある質問
そのまま機能し続け、自動的に移行されることはありません。CI/CD変数は、機密性のない設定には引き続き適しています。移行の候補を見つけるには、CI/CD変数向けのシークレット監査ツールを使って認証情報を含む変数を特定し、その値をご自身のスケジュールでSecrets Managerに移行してください。
GitLab Secrets Managerは、GitLabクレジットを通じて課金される有料アドオンです。シークレット1件を1か月保存すると1クレジット、シークレットの読み取り操作2,500回で1クレジットを消費します。利用量はネームスペースレベルで計測されるため、ユーザーごとのクレジット割り当てや支出上限は適用されません。コミット済みのクレジットプールをお持ちのお客様は、Secrets Managerの利用分がそのプールから差し引かれ、クレジットダッシュボードではDuo Agent Platformの利用量とは別に表示されます。詳しくはSecrets Managerの課金に関するドキュメントをご覧ください。
PremiumまたはUltimateのサブスクリプションと、トップレベルグループのオーナーロールが必要です。トライアル期間は30日間、または500評価クレジットを使い切るまでのいずれか早い方です。GitLab.comでトライアルを開始するには、トップレベルグループに移動し、セキュリティ > シークレットマネージャーを選択してから、Start 30-day trial(30日間のトライアルを開始)を選択します。GitLab Self-Managedでも、管理者がインスタンスにSecrets Managerをインストールしていれば、GitLab 19.5から同じ手順で開始できます。トライアル終了後も引き続き利用するには、従量課金の利用規約に直接同意するか、月額のコミットメントプールを購入する必要があります。詳しい手順はトライアルの開始方法をご覧ください。
はい。Kubernetesワークロードは、External Secrets OperatorのVaultプロバイダーを使ってシークレットを同期します。TerraformとOpenTofuは、planまたはapplyの実行時にシークレットをデータソースとして読み取ります。Vault互換のツールを前提にスクリプトを組んでいるチームはOpenBaoまたはVault CLIを使用でき、その他の自動化処理はSecrets Manager APIを通じて読み取れます。いずれも、パイプラインと同じストアから同じ権限のもとで読み取ります。詳しくはCI/CD外からのアクセスをご覧ください。