コンテンツに移動
デベロッパー

Python を使用して簡単に Cloud SQL に接続する方法

2022年8月31日
https://storage.googleapis.com/gweb-cloudblog-publish/images/python_connector.max-2100x2100.png
Google Cloud Japan Team

※この投稿は米国時間 2022 年 8 月 24 日に、Google Cloud blog に投稿されたものの抄訳です。

Python を使用して Cloud SQL に接続するのは、必ずしも簡単とは限りません。状況によっては、Unix ドメイン ソケットへの接続、TCP 接続のための IP アドレスの許可リストの作成、ローカルでの Cloud SQL Auth Proxy の実行が必要になることがあります。SSL 証明書、ファイアウォール ルール、IP アドレスの管理が必要になる場合もあるため、こうした接続のセキュリティを確保することも問題となりますが、幸いなことに、これらを簡単に行う方法があります。

Python パッケージである Cloud SQL Python Connector は、サポートされている 3 つのすべてのデータベース エンジン(Postgres、MySQL、SQL Server)を対象として、Cloud SQL に簡単かつセキュアに、どこからでも(ローカルマシン、Cloud Run、App Engine、Cloud Functions など)接続できます。

Python Connector は、Cloud SQL コネクタ ライブラリの一つです(Java Go のバージョンもあります)。

どういった利点がありますか?コネクタはその他の方法とどう違うのでしょうか?

Cloud SQL コネクタ ライブラリには、次のようなメリットがあります。

  • IAM 承認: コネクタは、IAM 権限を使用して、誰または何が Cloud SQL インスタンスに接続できるかを制御します。

  • 強化されたセキュリティ: コネクタは、データベース プロトコルに関わりなく、クライアント コネクタとサーバーサイド プロキシとの間で、堅牢で更新された TLS 1.3 暗号化と身元確認を使用します。

  • 利便性: コネクタは SSL 証明書の使用と配布のための要件を除外し、ファイアウォールまたは送信元 / 送信先 IP アドレスを管理します。

  • IAM データベース認証(オプション): コネクタは、Cloud SQL の自動 IAM データベース認証機能をサポートしています

試用方法

デモ ノートブックを使って試してみる

Cloud SQL Python Connector の使用方法を示すインタラクティブな Colab ノートブックを作成しました。コードは 1 行も書く必要がありません。このノートブックでは、ユーザーが Cloud SQL で使用しているデータベース エンジンに基づいて、自動的にサポートされているデータベース ドライバが使用されます。

https://storage.googleapis.com/gweb-cloudblog-publish/original_images/Python_Blog_GIF.gif

Python Connector ノートブック

まとめ

Cloud SQL Python Connector を使用することで、Python から安全かつ便利に Cloud SQL に接続できるようになります。自動 IAM データベース認証を活用して、IAM 認証されたユーザーまたはサービス アカウントとして、Cloud SQL にアクセスすることさえ可能です。


詳細については、以下のリソースをご活用ください。


- デベロッパー プログラム エンジニア、Jack Wotherspoon
投稿先