Question#35(Professional Cloud Developer)

Question#35(Professional Cloud Developer)
あなたは社内アプリケーションのセキュリティ管理を担当しています。アプリケーションは Cloud Run にデプロイされており、内部データベースへのアクセスに必要なパスワードの保存に Secret Manager を使用しています。各アプリケーションは、シークレットを最大 15 分間キャッシュできます。シークレットをローテーションする方法を決定する必要があります。アプリケーションのダウンタイムを回避したい場合、あなたは何をすべきですか?

正解:C

ダウンタイムなしでパスワードを更新(ローテーション)するには、アプリケーションが自動的に新しいパスワードを取得し、かつ旧パスワードから新パスワードへの切り替え期間中も動作し続ける必要があります。

なぜ C が正解なのか?

  1. ダウンタイムの回避 (Zero Downtime): アプリケーションが latest バージョンを参照するように設定されている場合、Secret Manager で新しいバージョン(新しいパスワード)が追加されると、アプリケーションは自動的にそれを検知できます。

  2. キャッシュの考慮: 問題文に「最大 15 分間キャッシュする」とあります。これは、新しいパスワードが Secret Manager に登録された後、最大 15 分間は古いパスワードを使い続ける可能性があることを意味します。そのため、データベース側で「新旧両方のパスワードを一定期間受け付ける(オーバーラップ期間)」設定にしておけば、キャッシュが切れて新しい latest を取得するまで、アプリケーションは停止することなく動作し続けられます。

  3. 効率的な管理: latest エイリアスを使用することで、パスワード更新のたびにコードを書き換えたり再デプロイ(D)したりする必要がありません。


コメント

コメント

コメントする

目次