こんにちは。Product Specialist の菅原です。
本記事ではCData 製品でサポートしているBox の認証方法の1つ、サービスアカウントを使用してBox へ接続する手順を紹介します。
本記事の手順でCData 製品のBox Driver やCSV Driver 、Excel Driver を使用してBox へ接続できますので、参考にしてください。
(※Boxで生成される公開/秘密キーペアを使用するBOXJSONタイプの接続手順は、「CData Box Driver でサービス アカウント(OAuthJWT)認証の BOXJSONタイプを利用する方法」をご参照ください。)
今回は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
2. アプリの種類を選択します。今回は「カスタムアプリ」を選択します。
3. 「アプリ名」を入力して、「目的」を選択して、「次へ」をクリックします。
4. サービスアカウントなので「サーバー認証(JWT使用)」を選択して、「アプリの作成」をクリックします。
5. アプリが作成できたら「クライアントID」、「クライアントシークレット」をメモしておきます。
6. 「アプリアクセスレベル」を選択します。
7. RSA キーペアを作成していきます。
まずは秘密キーを作成するため、下記のOpenSSL コマンドを実行します。
openssl genrsa -aes128 -out private_key.pem 2048
8. 公開キーを作成するため、下記のOpenSSL コマンドを実行します。
openssl rsa -pubout -in private_key.pem -out public_key.pem
9. 8で作成した公開キー「public_key.pem」をテキストエディタ等で開いてコピーします。
10. コピーした公開キーをBox に登録します。
「公開キーを追加」をクリックします。この操作を行うユーザーの2要素認証が必要ですので、事前に2要素認証を有効にしてください。
11. 9でコピーした公開キーを貼り付けて、「確認して保存」をクリックします。
12. 「公開キー ID」をメモしておきます。
13. 「承認」タブの「確認して送信」をクリックします。
[送信]をクリックすると作成したアプリの承認申請がメールされるので、メールを確認して承認します。
14. 「Enterprise ID」をメモしておきます。
サービスアカウントへBox の各ファイルを共有
「Service Account ID」に表示されているメールアドレスをメモしておきます。

Box で「共有」をクリックします。
「Service Account ID」に表示されていたメールアドレスを設定して「送信」をクリックします。
これでファイルを共有することができました。
DSN 構成画面の設定
それではDSN 構成画面の設定を行います。
Box でメモした各値をそれぞれのプロパティに設定します。
- AuthScheme:「OAuthJWT」
- OAuthClientId:「メモしたClient ID」
- OAuthClientSecret:「メモしたClient Secret」
- OAuthJWTCert:「7で作成したprivate_key.pemのフルパス」
- OAuthJWTCertType:「PEMKEY_FILE」
- OAuthJWTCertPassword:「pemファイル作成時のパスワード」
- OAuthJWTCertSubject:「*」
- OAuthJWTSubject:「メモしたEnterprise ID」
- OAuthJWTSubjectType:「enterprise」
- OAuthJWTPublicKeyId:「メモしたPublic Key ID」
詳しくは下記ヘルプドキュメントの「サービスアカウント」を参照ください。
CData ODBC Driver for Box - Windows DSN の構成
「接続テスト」をクリックして、Box に接続できるか確認します。
下記はA5 Mk-2 で実際にデータを取得した時の画像です。
おわりに
本記事ではCData 製品でサポートしているBox の認証方法の1つ、サービスアカウントを使用してBox へ接続する手順を紹介しました。
ぜひCData 製品でBox へ格納したExcel やCSV ファイルの操作等でご活用ください