CData Box Driver でサービス アカウント(OAuthJWT)認証の BOXJSONタイプを利用する方法

by 周建强 | January 30, 2025

CData Box Driver でサービス アカウント(OAuthJWT)認証の BOXJSONタイプを利用する方法

 

こんにちは。プロダクトチームの周です。

本記事ではCData 製品でサポートしているBox の認証方法の1つ、サービスアカウント(OAuthJWT)認証について、Boxで生成される公開/秘密キーペアを使用するBOXJSONタイプの接続手順を紹介します。

(※ご自身で用意したRSAキーペアを使用するPEMKEYタイプの接続手順はCData Box Driverでサービスアカウント認証を利用する方法をご参照ください。)

本記事の手順でCData 製品のBox Driver やCSV Driver 、Excel Driver を使用してBox へ接続できますので、参考にしてください。
今回はODBC Box Driver を使用していきます。

Box ODBC Driver - CData Software Japan

 

Box カスタムOAuth アプリ作成

ヘルプドキュメントの「カスタムOAuth アプリの作成」>「サービスアカウント用のOAuth アプリの作成」の手順に沿って作成していきます。

CData ODBC Driver for Box - カスタムOAuth アプリの作成

 

1. Box 開発者ダッシュボード にログインして「Platformアプリの作成」をクリックします。

https://app.box.com/developers/console

 

Platformアプリの作成

 

2. アプリの種類を選択します。サービスアカウント(OAuthJWT)認証を利用する場合は「カスタムアプリ」を選択します。

 

カスタムアプリ

 

3. 「アプリ名」を入力して、「目的」を選択して、「次へ」をクリックします。

 

アプリ名と目的

 

4. サービスアカウント(OAuthJWT)認証なので「サーバー認証(JWT使用)」を選択して、「アプリの作成」をクリックします。

 

サーバー認証(JWT使用)

 

5. アプリが作成できたら「クライアントID」、「クライアントシークレット」をメモしておきます。

 

Image2438

 

6. 「アプリアクセスレベル」に「アプリ+Enterpriseアクセス」を選択します。

 

アプリ+Enterpriseアクセス

 

7. 公開/秘密キーペアを作成していきます。

公開/秘密キーペアを生成」するには、操作を行うユーザーの2要素認証が必要ですので、事前に2要素認証を有効にしてください。

 

2要素認証必要

 

8. 公開/秘密キーペアを生成」をクリックしますと、下記メッセージが表示されますので、指示通りJSON形式の構成ファイルをダウンロードして適切な場所に保存します。

すべてのアプリ設定が含まれている構成ファイルをダウンロードしました。Boxに秘密キーは保存されないため、このファイルに含まれる秘密キーが唯一のコピーです。このファイルを安全に保管してください。

 

構成ファイルダウンロード

 

9. 8でダウンロードした構成ファイル(例:884766700_kipvpydd_config.json)をテキストエディタ等で開いてみますと、以下のような内容です。

 

Image2439

 

10. 「公開キー ID」をメモしておきます。

 

公開キーID

 

11. 「承認」タブで「確認して送信」をクリックします。

 

承認タブで確認して送信

 

12. 作成したアプリの承認申請が管理者にメールされますので、メールを確認して承認します。管理者コンソールでも表示されます。

 

管理者承認

 

13. 管理者に承認されますと、アプリのステータスが「有効」と「承認済み」になります。

 

承認済み

 

14. 「Enterprise ID」をメモしておきます。

 

Enterprise ID

 

 

 サービスアカウントへBox の各ファイルを共有

「Service Account ID」に表示されているメールアドレスをメモしておきます。

Service Account ID

 Box で「共有」をクリックします。

 

共有

 

「Service Account ID」に表示されていたメールアドレスを設定して「送信」をクリックします。

  

送信

 

 これでファイルを共有することができました。

 

 DSN 構成画面の設定

それではDSN 構成画面の設定を行います。

Box でメモした各値をそれぞれのプロパティに設定します。

 

  • AuthScheme:「OAuthJWT」
  • OAuthClientId:「5でメモしたクライアントID」
  • OAuthClientSecret:「5でメモしたクライアントシークレット」
  • OAuthJWTCert:「8でダウンロードしたJSON形式の構成ファイルへのフルパス」
  • OAuthJWTCertType:「BOXJSON」
  • OAuthJWTCertSubject:「*」
  • OAuthJWTSubject:「14でメモしたEnterprise ID」
  • OAuthJWTSubjectType:「enterprise」
  • OAuthJWTPublicKeyId:「10でメモした公開キー ID」

 

Image2440

詳しくは下記ヘルプドキュメントの「サービスアカウント」を参照ください。 

CData ODBC Driver for Box - Windows DSN の構成

 

「接続テスト」をクリックして、Box に接続できるか確認します。

 

接続テスト

 

下記はDSN 構成画面の「データモデル」→「クエリ」タブ で実際にデータを取得した時の画像です。

 

データモデル

おわりに

本記事ではCData 製品でサポートしているBox の認証方法の1つ、サービスアカウント(OAuthJWT)認証について、Boxで生成される公開/秘密キーペアを使用するBOXJSONタイプの接続手順を紹介しました。

ぜひCData 製品でBox へ格納したExcel やCSV ファイルの操作等でご活用ください。