GCP:Alembic接続情報にSecret Managerを利用する

Google環境に色々な物を置いているけどセキュリティ情報をべた書きしたりするのは嫌なのでSecret Managerを活用するわけだけど、alembicってSQL接続情報をiniファイルに書くスタイルなので何とかならないかなぁと検討。

で、alembicを読んでみると、env.py でiniを読んで接続とかを作っている。
なので、ここで接続情報を上書きしてしまえばOK。

 

ssl接続の場合はファイルから読むしかないのはURLよりも先の問題なので小手先のコードでは対応出来ず。。。
URLの最後に ?ssl_key=privkey.pem&ssl_cert=cert.pem&ssl_ca=ca.pem みたいな感じで追加、オレオレ証明書の場合は更にssl_check_hostname=Falseも追記する。
まぁ、証明書関係はアプリデプロイもマイグレーションもCloud Buildにして、処理中にSecret Managerで取ってきてローカルやコードリポジトリには置かない対応で多少改善するかと。 デプロイ時に取ってきて、外部アクセス出来ないディレクトリに設置する系。

(7)


カテゴリー: LAMP[Linux, Apache, MySQL, PHP]   パーマリンク

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です