Accessドライバーでクラウドストレージのファイルにアクセスする
本記事はCDataが提供する「CData Software Blog」に掲載された「Accessドライバーでクラウドストレージのファイルにアクセスする」を再編集したものです。
本記事ではCData Access Drivers でGoogle Drive やBox などのクラウドストレージにあるAccess ファイルにアクセスする方法を説明します。
Access ドライバーはこれまでローカル環境にあるAccess ファイルのみをサポートしていましたが、2025年2月にリリースされたv24.3 ではクラウドストレージにあるファイルへの読み取りアクセスをサポートしました。
2025年2月時点でサポートしているクラウドストレージは以下の通りです。
- ・Amazon S3
- ・Azure Blob Storage
- ・Azure Data Lake Store Gen1/Gen2
- ・Azure File
- ・Box
- ・Dropbox
- ・FTP/FTPS
- ・Google Cloud Storage
- ・Google Drive
- ・Hadoop Distributed File System
- ・IBM Object Storage Source
- ・OneDrive
- ・Oracle Cloud Storage
- ・Secure Hadoop Distributed File System
- ・SFTP
- ・SharePoint
- ・Wasabi
接続先のクラウドストレージや接続するための認証情報はドライバーのプロパティによって制御します。以下からは、代表的なクラウドストレージとしてSFTP (SSH File Transfer Protocol)、Amazon S3、Google Drive、OneDrive、SharePoint、Box のファイルにアクセスする際のプロパティ設定例を紹介します。なお、Access ドライバーでローカルのファイルにアクセスする場合は読み書きが可能ですが、クラウドストレージ上のファイルに対しては読み取りだけをサポートしています。
SFTP
SFTP サーバにあるAccess ファイルにパスワード認証でアクセスする方法を説明します。例として、SFTP サーバのAccessTest フォルダにあるTEST1.accdb というファイルにアクセスします。
設定するプロパティと設定例
上のファイルを取得する時のプロパティ設定例を以下に示します。DataSource プロパティのプレフィックスは「sftp:」です。User プロパティとPassword プロパティにはSFTP サーバに接続する際のユーザ名とパスワードをそれぞれ設定します。
Amazon S3
Amazon S3 にあるAccess ファイルをアクセスキー認証で取得する方法を説明します。例として、cdatajwrk バケットのAccessTest フォルダにあるTEST1.accdb というファイルにアクセスします。
設定するプロパティと設定例
上のファイルを取得する時のプロパティ設定例を以下に示します。DataSource プロパティのプレフィックスは「s3:」です。アクセスキーとシークレットアクセスキーの取得方法については下に説明を記載しています。
アクセスキーの取得方法
AWS のIAM からアクセスするユーザの設定画面を開きます。許可ポリシーに AmazonS3ReadOnlyAccess (またはそれより強いポリシー)が含まれていることを確認し、[アクセスキーを作成] をクリックします。
アクセスキーとシークレットアクセスキーが生成されますので、これらの値をコピーし、接続プロパティのAWSAccessKey とAWSSecretKey にそれぞれ設定します。
Google Drive
Google Drive にあるAccess ファイルにOAuth 認証でアクセスする方法を説明します。例として、Google Drive のAccessTest フォルダにあるTEST1.accdb というファイルにアクセスします。
設定するプロパティと設定例
上のファイルを取得する時のプロパティ設定例を以下に示します。DataSource プロパティのプレフィックスは「gdrive:」です。共有ドライブにあるファイルにアクセスする際は、IncludeItemsFromAllDrives プロパティにTrue を設定し、DataSource プロパティに「gdrive://SharedDriveA/AccessTest/...」のように共有ドライブ名を含めたパスを設定してください。
上のプロパティ設定で接続するとGoogle へのログイン画面が表示され、ログインすると以下のように許可する操作を選択する画面が表示されます。ドライバーが行う操作内容を確認し、チェックボックスをチェックして[続行] をクリックしてください。
認証が完了すると以下の画面が表示されます。
OneDrive
OneDrive にあるAccess ファイルにOAuth 認証でアクセスする方法を説明します。例として、OneDrive のAccessTest フォルダにあるTEST1.accdb というファイルにアクセスします。
設定するプロパティと設定例
上のファイルを取得する時のプロパティ設定例を以下に示します。DataSource プロパティのプレフィックスは「onedrive:」です。
上のプロパティ設定で接続するとOneDrive へのログイン画面が表示されます。OneDrive のアカウントでログインして認証が完了すると以下の画面が表示されます。
SharePoint
SharePoint にあるAccess ファイルにNTLM (パスワード) またはOAuth 認証でアクセスする方法を説明します。例として、SharePoint のTestSite というサブサイト上のAccessTest フォルダにあるTEST1.accdb というファイルにアクセスします。
設定するプロパティと設定例
上のファイルを取得する時のプロパティ設定例を示します。SharePoint への接続は使用するAPI によってSOAP スキーマとREST スキーマの二つの接続方法があります。Access ファイルにアクセスする場合SOAP スキーマとREST スキーマで機能的な差異はありません。ただしパスワードによるNTLM 認証はSOAP スキーマ、OAuth 認証はREST スキーマでのみ対応していますので、認証方法に合わせて選択してください。
SharePoint SOAP
設定するプロパティ例を以下に示します。DataSource プロパティのプレフィックスは「sp:」です。DataSource にはファイルパスを指定しますが、「ドキュメント」など言語に合わせたリスト名を指定する必要がありますのでご注意ください。StorageBaseURL プロパティにはサイトのURL を指定します。
SharePoint REST
設定するプロパティ例を以下に示します。DataSource プロパティのプレフィックスは「sprest:」です。SOAP と同様にStorageBaseURL プロパティにはサイトのURL を指定します
上のプロパティ設定で接続するとSharePoint へのログイン画面が表示されます。SharePoint のアカウントでログインして認証が完了すると以下の画面が表示されます。
Box
Box にあるAccess ファイルにOAuth 認証でアクセスする方法を説明します。例として、Box のAccessTest フォルダにあるTEST1.accdb というファイルにアクセスします。
設定するプロパティと設定例上のファイルを取得する時のプロパティ設定例を以下に示します。DataSource プロパティのプレフィックスは「box:」です。
上のプロパティ設定で接続するとBox へのログイン画面が表示され、Box のアカウントでログインすると以下のように操作の許可を確認する画面が表示されます。ドライバーが行う操作内容を確認し、[Boxへのアクセスを許可] をクリックしてください。
認証が完了すると以下の画面が表示されます。
おわりに
本記事ではCData Access Drivers でGoogle Drive やBox などのクラウドストレージにあるAccess ファイルに読み取りアクセスする方法を説明しました。Access ドライバーは30日間無料で試用できます。Access ファイルとの連携をご検討の方はぜひお試しください。この記事の内容についてもっと詳しく知りたい、または記事で紹介していないクラウドストレージにアクセスする方法が知りたい、といった方はCData のサポートデスクまでお気軽にお問い合わせください。