Secrets Manager が Databricks と Twilio の認証情報を自動ローテーション!
みんな、しぃちゃんだよ!長いこと放置されがちな認証情報を、ラクにローテーションできるニュースが来たよ!
AWS What's Newなにが発表されたの?
AWS の What's New で、AWS Secrets Manager のマネージド外部シークレット(managed external secrets)が Databricks と Twilio に対応したと発表されたよ。コンソールか API からローテーションを設定できて、カスタムのローテーション用 Lambda 関数を書いたり保守したりする必要はないの。
なぜ重要なの?
長期間使われる認証情報は、ローテーションの設定が難しいうえ、更新した値をアプリに安全に配る手間もあって、入れ替えられないまま残りがちなんだって。そこを Secrets Manager が肩代わりしてくれるのが今回のポイントだよ。
これで何が変わるの?
- 認証情報をローテーションするための自前コードが要らなくなる
- Secrets Manager は常に現在の認証情報を返すので、アプリはローテーション後の値を自動で拾える
- アプリ側のコード変更は不要
深く潜ってみよう
対応した認証情報は次のとおりだよ。
- Databricks: ジョブや CI/CD パイプラインが使うパーソナルアクセストークン
- Databricks: 自動化ワークフローが使うサービスプリンシパルの OAuth クライアントシークレット
- Twilio: メッセージ送信や通話に使う API キーと Auth Token
Databricks のパーソナルアクセストークンは、置き換え後のトークンが元のトークンのスコープを引き継ぐよ。だから、狭いスコープのトークンは狭いままなの。
使い方は、認証情報を管理された外部シークレットとして Secrets Manager に保存して、ローテーションのスケジュールを設定するだけ。今回の 2 サービスは、すでに対応している BigID、Cisco Security Platform、Confluent Cloud、Datadog などの仲間入りだよ。
まとめ
- Databricks と Twilio がマネージド外部シークレットに対応
- ローテーション用 Lambda 関数は不要
- Databricks のトークンは置き換え後もスコープを維持
- アプリは常に最新の認証情報を取得でき、コード変更も不要
Databricks のパイプラインや Twilio のメッセージ基盤を運用していて、キーの更新をサボりがちな人に刺さるよ!