
WSL2のUbuntu 24.04 LTSにDatabricks CLIを入れてOAuth U2M認証で接続してみた
さがらです。
DatabricksをGUIから操作するだけでも便利ですが、Declarative Automation BundlesやDatabricks Appsの利用を考慮すると、CLIから操作したくなる場面が出てきます。
そこで本記事では、WSL2のUbuntu 24.04 LTS上にDatabricks CLIをインストールし、OAuth U2M(user-to-machine)認証でDatabricksのワークスペースへ接続するまでの手順をまとめてみます。
前提条件
- Databricks: Free Edition(サインアップ済み、ブラウザでワークスペースにログイン可能な状態)
- ローカル環境: Ubuntu 24.04 LTS ※WSL2で動作
事前準備:WSL2 Ubuntuのパッケージ更新と必要パッケージのインストール
まずWSL2のUbuntu側で、パッケージリストを更新し、Databricks CLIのインストールスクリプトで使用するcurlとunzipをインストールします。
sudo apt update
sudo apt install -y curl unzip
curlとunzipが利用可能となっていることを確認します。
curl --version
unzip -v
事前準備:Databricks Free EditionのワークスペースURLを控える
OAuth U2M認証では--hostパラメータで接続先のワークスペースURLを指定する必要があります。事前にFree EditionのワークスペースURLを控えておきましょう。
ブラウザでDatabricks Free Editionにログインした状態で、アドレスバーに表示されるURLを確認します。https://<ホスト名>.cloud.databricks.com/?o=...のような形式となっているため、https://<ホスト名>.cloud.databricks.comまでの部分をコピーして控えておきます。

Databricks CLIのインストール
ここからDatabricks CLIをインストールしていきます。公式Docはこちらです。
LinuxではcurlでインストールスクリプトをダウンロードしてシェルでパイプするのがDatabricks公式の推奨手順となっています。WSL2のUbuntuでも同じコマンドが使えます。
curl -fsSL https://raw.githubusercontent.com/databricks/setup-cli/main/install.sh | sudo sh
このコマンドにより、/usr/local/bin/databricksにバイナリが配置されます。インストール途中でsudoによるパスワード入力を求められる場合があるため、必要に応じて入力してください。
インストール完了後、バージョンを確認します。
databricks -v
下図のようにDatabricks CLI v0.xxx.xと表示されればOKです。

OAuth U2M認証でDatabricksにログイン
Databricks CLIではいくつかの認証方式がサポートされていますが、本記事ではOAuth U2M(user-to-machine)認証を使用します。OAuth U2Mはブラウザベースで対話的に認証を行う方式で、発行されるトークンの有効期限が1時間未満と短いため、誤って公開してしまった場合のリスクが小さいことが特徴です。
公式Docはこちらです。
以下のコマンドを実行します。<workspace-url>の部分には、先程控えたFree EditionのワークスペースURLを指定します。
databricks auth login --host https://<workspace-url>
実行すると、プロファイル名の入力が求められます。任意のプロファイル名を指定します。今回はfree-editionとしました。
Databricks Profile Name [DEFAULT]: free-edition

プロファイル名を入力すると、認証用のURLが表示されるため、これをブラウザに貼り付けます。

ブラウザ側でDatabricksにログインすると、下図のように表示されます。ターミナルにもProfile free-edition was successfully savedのようなメッセージが表示されます。これで認証情報が~/.databrickscfgに保存されました。

保存されたプロファイルの中身を確認してみます。
cat ~/.databrickscfg
下記のような内容が書き込まれているはずです(一部抜粋)。
[free-edition]
host = https://<workspace-url>
auth_type = databricks-cli
auth_type = databricks-cliは、OAuth U2M認証でCLIから対話的にログインしたプロファイルであることを示しています。
疎通確認
ここから、CLIから実際にDatabricks Free Editionに対してAPIコールが成功するかを確認していきます。
プロファイル一覧の確認
設定済みのプロファイル一覧を表示します。
databricks auth profiles
先程作成したfree-editionプロファイルがVALID:YESの状態で表示されればOKです。

ユーザー情報の取得
current-user meコマンドで、ログイン中のユーザーの情報を取得してみます。Databricks REST APIの基本的なエンドポイントを叩くコマンドのため、疎通確認用として最適です。
databricks current-user me --profile free-edition
問題なければ、userNameやemailsなどの情報がJSON形式で返ってきます。これが返ってくれば、CLIからDatabricks Free EditionへのAPIコールが成功しており、認証も無事に通っている状態です。

注意点
OAuthトークンの有効期限が短い
OAuth U2Mで発行されるトークンは1時間未満で期限切れとなります。CLI側でリフレッシュトークンを使った自動更新の仕組みが入っているため、通常の利用であればコマンドが頻繁に失敗することはないと思われますが、長期間ターミナルを使わずに放置していた場合は再度databricks auth loginでの再認証が必要になる場合があります。
--profileの指定忘れに注意
複数のプロファイルを使い分けている場合、--profileもしくは-pでの指定を忘れると、意図しないプロファイル(基本的にはDEFAULTのプロファイル)でコマンドが実行されてしまいます。複数のDatabricks環境にも接続している方は、特にご注意ください。
# 短縮形(-p)でも同じ意味になります
databricks current-user me -p free-edition
最後に
WSL2のUbuntu 24.04 LTS上にDatabricks CLIをインストールし、OAuth U2M認証でDatabricksへ接続するまでの手順をまとめてみました。
どなたかの参考になると幸いです!







