OAuth トークンまたは Postgres パスワードを使用してデータベースに接続します。 Lakebase インフラストラクチャの管理 (プロジェクト、ブランチ、コンピューティングの作成) については、「プロジェクトの アクセス許可」を参照してください。
認証方法を選択します
接続する前に、ユース ケースに最適な認証方法を決定します。
- OAuth ロール: OAuth トークンを使用して Azure Databricks ID を使用して認証します。 プロジェクト所有者はすぐに接続できます。 他の Azure Databricks ID で OAuth 認証を使用できるようにするには、Lakebase UI、SQL、または REST API を使用して Postgres ロールを作成します。 OAuth ロールの作成を参照してください。
- ネイティブ Postgres パスワード認証: 従来のデータベース パスワードを使用して Postgres ロールを使用して認証します。 「ネイティブ Postgres パスワード ロールの作成」を参照してください。
OAuth は、資格情報の有効期限とワークスペース ID の自動統合を提供しますが、実行時間の長いアプリケーションではトークンローテーションが必要です。 Postgres パスワードは期限切れでもローテーションも必要ありませんが、OAuth の自動有効期限と一元化されたセキュリティ管理がありません。
データベースに接続する
パブリックインターネット経由で接続する際、クライアントサイドファイアウォールを使用している場合は、Lakebaseが使っているIPアドレスを許可リストに追加してください。 Databricks サービスの IP アドレスとドメインを参照してください。
次の例では、標準の Postgres クライアントである psql を使用します。 psql を使用して接続する方法の詳細については、「 psql を使用した接続」を参照してください。 また、Databricks Notebook、Lakebase SQL エディター、テーブル エディター、pgAdmin などのサード パーティ製ツール、その他の Postgres 互換クライアントを使用してデータベースにアクセスすることもできます。 その他のオプションについては、「 データのクエリ 」を参照してください。
各プロジェクトには、接続先 databricks_postgres という名前の既定のデータベースが含まれています。 このデータベースは、プロジェクトの作成時に自動的に作成される Databricks ID ( user@databricks.com など) の Postgres ロールによって所有されます。 追加の Postgres ロールを作成するには、「 Postgres ロールの管理」を参照してください。
注
すべてのデータベース接続には、24 時間のアイドル タイムアウトと 3 日間の最大接続時間が適用されます。 接続タイムアウトを参照してください。
OAuth ロールを使用して接続する
OAuth ロールを使用すると、トークン ベースの認証で Azure Databricks ID を使用して接続できます。 プロジェクト所有者の OAuth ロールが自動的に作成されます。 他の Azure Databricks ID で OAuth 認証を使用できるようにするには、Lakebase UI、SQL、または REST API を使用して Postgres ロールを作成します。 OAuth ロールの作成を参照してください。
プログラムによって、または自動化されたワークフローに対して OAuth トークンを生成するには、対話型セッションの ユーザーからマシンへのフローで OAuth トークンを取得 する方法、またはサービス プリンシパルの マシン間フローで OAuth トークンを取得 する方法に関する説明を参照してください。
Important
OAuth トークンは 1 時間後に期限切れになります。
実行時間の長いデータベース接続を維持するアプリケーションの場合は、有効期限が切れる前に資格情報を自動的に更新するトークン ローテーションを実装する必要があります。 トークンのローテーションがないと、アプリケーションは 1 時間後にデータベース接続を失います。
コード例については、 トークン ローテーションの例 を参照してください。
OAuth ロールを使用して接続するには:
- Lakebase アプリからプロジェクトを選択し、[ 接続] をクリックします。
- 接続するブランチ、コンピューティング、データベースを選択し、[ロール] ドロップダウン メニューの [OAuth ロール] セクションから Azure Databricks ID を選択します。
-
psql接続スニペットをターミナルにコピーして入力します。 - パスワードの入力を求められたら、[ OAuth トークンのコピー ] をクリックし、パスワードとして入力します。
注
OAuth トークンのコピー では、サービス プリンシパルやその他のユーザーではなく、現在のログイン ID のトークンのみが生成されます。 他の ID のトークンを生成するには、 CLI または SDK を使用します。
ネイティブ Postgres パスワードを使用して接続する
ネイティブ Postgres パスワード認証を使用すると、従来のデータベース パスワードを使用して Postgres ロールを使用して接続できます。
ネイティブ Postgres パスワード認証を使用して接続するには:
- Lakebase アプリからプロジェクトを選択し、[ 接続] をクリックします。
- 接続先のブランチ、コンピューティング、データベースを選択し、[ロール] ドロップダウン メニューの [ Postgres roles ] セクションから Postgres ロール を選択します。
-
psql接続スニペットをターミナルにコピーし、それを入力して接続します。
注
Lakebase には、ネイティブ Postgres パスワード ロール用の組み込みの接続プーラーが含まれています。 高スループットアプリケーションの接続オーバーヘッドを削減するには、「 接続プーリングを使用する」を参照してください。