Databricks への取り込み用に Gmail を構成する
Databricks が Gmail メールボックスからデータを取り込めるように Google Cloud サービス アカウントを構成する方法について説明します。
ベータ版
この機能はベータ版です。ワークスペース管理者は、 プレビュー ページからこの機能へのアクセスを制御できます。Databricksのプレビューを管理するを参照してください。
Gmailコネクタは、ドメイン全体の委任を使用して単一のメールボックスを偽装するGoogleサービスアカウントで認証を行います。このタスクでは、サービスアカウントとJSONキーを作成し、Gmailデータへの読み取り専用アクセス権を付与して、偽装するメールボックスを指定します。取得した認証の詳細を使用して、GmailへのDatabricks Unity Catalog接続を作成します。
前提条件
- サービスアカウントを作成する Google Cloud プロジェクトへのアクセス権。サービスアカウントとキーを作成する権限が必要です。
- ドメイン全体の委任を許可するための Google Workspace スーパー管理者のアクセス権。
- 取り込むGmailメールボックスのEメールアドレス。
サービスアカウントとJSONキーを作成します
-
Google Cloudコンソールで、 IAM & 管理 > サービスアカウント に移動します。
-
[サービス アカウントの作成] をクリックします。
-
サービス アカウントの名前と説明を入力し、 作成して続行 をクリックします。
-
[完了] をクリックします。プロジェクトレベルのロールを付与する必要はありません。
-
サービス アカウント ページで、作成したサービス アカウントをクリックします。
-
キー タブで、 キーの追加 > 新しいキーの作成 をクリックします。
-
JSON を選択し、 作成 をクリックします。JSONキーファイルがマシンにdownloadされます。
JSONキーは安全に保存してください。Unity Catalogの接続を作成するときにその内容を貼り付けます。
Gmail APIを有効にする
- Google Cloud コンソールで、 APIs & サービス > ライブラリ に移動します。
- Gmail API を検索し、クリックします。
- [ 有効にする ]をクリックします。
ドメイン全体のデレゲートを付与する
ユーザーに代わってメールボックスデータを読み取るには、Google Workspace でサービスアカウントに対してドメイン全体の委任を許可する必要があります。
-
Google Cloud コンソールで、 詳細 tabからサービス アカウントの 一意のID (クライアントID)をコピーします。
-
Google 管理コンソールで、 セキュリティ > アクセスとデータ管理 > API の制御 に移動します。
-
「ドメイン全体の委任」 の下で、 「ドメイン全体の委任を管理」 をクリックします。
-
新規追加 をクリックします。
-
[Client ID] に、サービスアカウントの一意のIDを貼り付けます。
-
OAuthスコープ に、以下の読み取り専用スコープを入力します:
https://www.googleapis.com/auth/gmail.readonly -
[許可] をクリックします。
偽装するメールボックスを特定する
サービスアカウントは、単一のメールボックスを偽装します。取り込むメールボックスのEメールアドレス(例:user@example.com)をメモしておきます。Unity Catalog接続を作成する際、このアドレスを偽装用Eメールとして指定します。
複数のメールボックスを取り込むには、メールボックスごとに個別の接続とパイプラインを作成してください。