データパイプラインソースとしてのOneDriveの設定
OneDriveをデータパイプラインソースとして設定し、レコードを抽出して同期先に同期します。
このガイドでは、OneDriveフォルダに保存されている.csvファイルと.parquetファイルを扱うためのコネクション設定、パイプライン設定、および主な動作を確認できます。
サポートされている機能
OneDriveをデータパイプラインソースとして使用する場合、以下の機能がサポートされます。
ファイル形式のサポート:OneDriveフォルダ内の
.csvファイルと.parquetファイルからデータを抽出して同期します。完全同期と増分同期:パイプラインの開始時に完全同期を実行し、その後の各実行では増分同期を実行して、前回の実行以降に作成または変更されたファイルを取得します。
ドライブの選択:共有ドライブやSharePointサイトのドキュメントライブラリを含め、同期元となる特定のOneDriveドライブを選択します。
フィールド単位の選択:抽出して同期先に複製するフィールドを選択します。
フィールドレベルのデータ保護:データがデスティネーションに到達する前に、機密フィールドをハッシュ化するか、そのままレプリケートします。
前提条件
OneDriveをデータパイプラインソースとして接続するには、以下が必要です。
- Microsoft OneDriveアカウント:個人用、ビジネス用、または特定のテナントに紐付けられたアカウント
- 選択した認証方法の認証情報:
- 認可コードグラント:Azureポータルでアプリを登録し、必要なアクセス許可を割り当てます。設定手順については、OneDriveへの接続を参照してください。
- クライアント資格情報グラント:Azureポータルでテナント固有のアプリを登録し、クライアントシークレットを生成して、テナントID、クライアントID、およびユーザーIDを取得します。この方法は、テナント固有のアカウントでのみ使用できます。設定手順については、OneDriveへの接続を参照してください。
必要な権限
OneDriveデータパイプラインは読み取り専用です。ファイルの内容を抽出して同期しますが、OneDrive内のファイルを作成、更新、移動、削除することはありません。選択した認証方法に必要なスコープのみを付与してください。
サポートされるコネクションタイプ
OneDriveデータパイプラインは、以下の認証方法をサポートしています。
- 認可コードグラント(OAuth 2.0):Microsoftの個人用、ビジネス用、またはテナント固有のアカウントでサインインします。設定手順については、OneDriveへの接続を参照してください。
- クライアント資格情報グラント(OAuth 2.0):対話型のユーザーサインインを行わずに、テナント固有のアプリのクライアントIDとクライアントシークレットを使用して認証します。この方法は、テナント固有のアカウントでのみサポートされています。
OneDriveへの接続
OneDriveコネクターは、次の認証タイプをサポートしています:
Microsoft MFAの強制適用
Microsoftは、必須の多要素認証(MFA)を、さまざまなアプリケーションおよびアカウントに段階的にロールアウトしています。この強制適用は、2025年以降も継続されます。詳細については、MicrosoftのAzureおよび管理ポータルに対する必須の多要素認証ドキュメントを参照してください。
短期間の通知による強制適用の変更でサービスが中断されることを避けるため、Workatoで使用するすべてのMicrosoftアカウントについて、今すぐMFAを有効にすることを強くお勧めします。
サービスを中断なく維持するには、次の手順を実行します。
Microsoft MFA設定ガイドに従って、Microsoft組織のMFAを有効にします。詳細については、Microsoft 365の多要素認証を設定するを参照してください。
WorkatoでMicrosoftコネクションに再接続します。
プロンプトが表示されたら、MFAでOAuthフローを完了します。
レシピをテストして、更新されたコネクションで動作することを確認します。
認可コード付与認証(OAuth 2.0)
テナント固有のアカウントタイプではTenant ID/Domain値を使用します。
最小スコープとデフォルトスコープ
OneDriveコネクタは、デフォルトで次のスコープをリクエストします。これらのスコープは、すべてのトリガーとアクションをサポートします。 Azureポータルで、これらを委任されたアクセス許可として割り当てる必要があります:
Files.ReadWriteGroup.Read.AllFiles.Readoffline_access
認可コードグラント認証を使用してOneDriveへのコネクションを確立するには、次の最小スコープを追加する必要があります:
Files.Readoffline_access
認可コードグラント認証用のOneDriveセットアップ
認可コードグラント認証用にOneDriveを設定するには、次の手順を実行します:
Azure portalでWorkatoアプリを登録
AzureポータルでWorkatoアプリを登録する手順を表示
AzureポータルでWorkatoアプリを登録するには、次の手順を実行します:
Azureポータルにサインインします。
アプリの登録>+ 新規登録を選択します。
アプリケーションの一意の名前を入力します。
サポートされているアカウントの種類ドロップダウンメニューを使用して、アカウントの種類を選択します。
プラットフォームの選択ドロップダウンメニューからWebを選択します。
リダイレクトURIには次のURIを使用します:
https://www.workato.com/oauth/callback登録を選択します。
アプリに権限を割り当てる
アプリに権限を割り当てる手順を表示
アプリにアクセス許可を割り当てるには、次の手順を実行します。
新しく登録したアプリに移動し、ナビゲーションサイドバーで管理>API のアクセス許可を選択します。
+ アクセス許可の追加をクリックし、Microsoft Graph APIを選択します。
必要なアクセス許可を追加します。コネクションタイプに応じて、アプリケーションまたは委任されたアクセス許可を割り当てる必要があります。
アクセス許可の追加
Add permissionsをクリックします。特定のアクセス許可で管理者の同意が必要な場合、詳細についてはMicrosoft Entra ID を Outlook コネクターに接続するを参照してください。
Azureポータルからディレクトリ(テナント)IDを取得する
Azure portalからDirectory (tenant) IDを取得する手順を表示
Azure portalからディレクトリ (テナント) IDを取得するには、次の手順を実行します:
概要>基本セクションに移動します。
アプリの詳細
Workatoで使用するためにDirectory (tenant) IDをコピーして保存します。
認可コードグラント認証でOneDriveに接続
認可コードグラント認証でOneDriveに接続する手順を表示
WorkatoでOneDriveへの認可コードグラントコネクションを設定するには、次の手順を実行します:
作成 > コネクションをクリックします。
OneDriveを検索し、アプリとして選択します。
コネクション名フィールドにコネクションの名前を入力します。
ロケーションドロップダウンメニューを使用して、コネクションを保存するプロジェクトを選択します。
コネクションアカウントタイプドロップダウンメニューを使用して、使用する予定のアカウントのタイプを選択します。利用可能な選択肢は、個人用、ビジネス、テナント固有です。
Authentication typeドロップダウンメニューを使用して、Authorization code grantを選択します。
任意。要求する権限(OAuthスコープ)フィールドを使用して、特定の権限を選択します。コネクションを確立するために必要な最小権限は、Files.Readとoffline_accessです。 Workatoは、選択した権限にかかわらず、常にこれらの権限を要求します。詳細は最小スコープとデフォルトスコープを参照してください。
任意。 Custom OAuth profileドロップダウンメニューを使用して、コネクション用のCustom OAuth profileを選択します。
Sign in with Microsoftをクリックします。
クライアント資格情報ベースの認証(OAuth 2.0)
この認証タイプには、次の値が必要です:
- Tenant ID/Domain
- ユーザーID
- Client ID
- クライアントシークレット
最小スコープとデフォルトスコープ
クライアント資格情報ベースのコネクションには、次のスコープを推奨します。これらのスコープは、すべてのトリガーとアクションをサポートします。 Azureポータルで、これらをアプリケーションのアクセス許可として割り当てる必要があります:
Files.Read.AllFiles.ReadWrite.AllGroup.Read.AllSites.ReadWrite.All
クライアント資格情報ベースの認証でOneDriveへのコネクションを確立するには、次の最小スコープを追加する必要があります:
Files.Read.All
クライアント資格情報ベースの認証用のOneDriveセットアップ
クライアント資格情報ベースの認証用にOneDriveを設定するには、次の手順を実行します:
- Azure portalでWorkatoアプリを登録する
- アプリに権限を割り当てる
- クライアントシークレットを生成する
- Azureポータルからアプリケーション(クライアント)ID、オブジェクトID、ディレクトリ(テナント)IDを取得する
- AzureポータルからユーザーIDを取得する
互換性のある認証
クライアント資格情報ベース認証は、テナント固有のコネクションとのみ互換性があります。
Azure portalでWorkatoアプリを登録
AzureポータルでWorkatoアプリを登録する手順を表示
AzureポータルでWorkatoアプリを登録するには、次の手順を実行します:
Azureポータルにサインインします。
アプリの登録>+ 新規登録を選択します。
アプリケーションの一意の名前を入力します。
サポートされているアカウントの種類ドロップダウンメニューを使用して、アカウントの種類を選択します。
プラットフォームの選択ドロップダウンメニューからWebを選択します。
リダイレクトURIには次のURIを使用します:
https://www.workato.com/oauth/callback登録を選択します。
アプリに権限を割り当てる
アプリに権限を割り当てる手順を表示
アプリにアクセス許可を割り当てるには、次の手順を実行します。
新しく登録したアプリに移動し、ナビゲーションサイドバーで管理>API のアクセス許可を選択します。
+ アクセス許可の追加をクリックし、Microsoft Graph APIを選択します。
必要なアクセス許可を追加します。コネクションタイプに応じて、アプリケーションまたは委任されたアクセス許可を割り当てる必要があります。
アクセス許可の追加
Add permissionsをクリックします。特定のアクセス許可で管理者の同意が必要な場合、詳細についてはMicrosoft Entra ID を Outlook コネクターに接続するを参照してください。
クライアントシークレットを生成する
クライアントシークレットを生成する手順を表示
クライアントシークレットを生成するには、次の手順を完了します。
管理>証明書とシークレット>クライアントシークレットに移動します。
+ New client secretをクリックします。
クライアントシークレットの説明を入力し、有効期限の日付を指定します。
Addをクリックします。
Workatoで使用するために、シークレット IDではなくクライアントシークレットの値をコピーして保存します。
クライアントシークレット値をコピーして保存
Azureポータルからアプリケーション(クライアント)ID、オブジェクトID、ディレクトリ(テナント)IDを取得する
Azure portalからApplication (client) ID、Object ID、およびDirectory (tenant) IDを取得する手順を表示
Azure portalからApplication ID、Object ID、およびDirectory (tenant) IDを取得するには、次の手順を実行します:
概要>基本セクションに移動します。
アプリの詳細
Workatoで使用するために、Application (client) ID、Object ID、およびDirectory (tenant) IDをコピーして保存します。
AzureポータルからユーザーIDを取得する
AzureポータルからユーザーIDを取得する手順を表示
AzureポータルからユーザーIDを取得するには、次の手順を実行します。
ホーム>ユーザーに移動して、User IDを取得します。
ユーザーを選択
操作の実行に使用する予定のデフォルトユーザーを検索して選択します。このユーザーはコネクションの確立には使用されませんが、アプリが実行できない特定の操作を実行するために必要です。また、ユーザーデータを取得するためにピックリストでも必要です。たとえば、フォルダのピックリストには、デフォルトユーザーに属するフォルダが入力されます。
ユーザー プリンシパル名をコピーして保存します。 Workatoでこの値をユーザーIDとして使用します。
クライアント資格情報ベースの認証でOneDriveに接続
クライアント資格情報ベースの認証によるOneDriveへの接続手順を表示
WorkatoでOneDriveへのクライアント資格情報ベースのコネクションを設定するには、次の手順を実行します:
作成 > コネクションをクリックします。
OneDriveを検索し、アプリとして選択します。
コネクション名フィールドにコネクションの名前を入力します。
ロケーションドロップダウンメニューを使用して、コネクションを保存するプロジェクトを選択します。
テナント固有をコネクションアカウントタイプとして選択します。このオプションは、特定の組織(テナント)に紐付けられたアカウントをサポートします。
テナント固有のアカウントコネクションタイプ
テナントID/ドメインを入力します。これはアプリのDirectory (tenant) IDです。詳細については、Azure portalからApplication (client) ID、Object ID、およびDirectory (tenant) IDを取得するを参照してください。
認証タイプドロップダウンメニューで、クライアント認証情報を選択します。
アプリのユーザーID、クライアントID、およびクライアントシークレットを入力します。詳細については、Azure portalからApplication (client) ID、Object ID、およびDirectory (tenant) IDを取得するおよびクライアントシークレットを生成するを参照してください。
任意。 Custom OAuth profileドロップダウンメニューを使用して、コネクション用のCustom OAuth profileを選択します。
Sign in with Microsoftをクリックします。
Microsoft Entra IDをOneDriveコネクターに接続
Microsoft Entra IDをOneDriveコネクターに接続する手順を表示
Microsoft Entra IDアカウントを使用してOneDriveコネクターに接続するには、すべての同意要求が管理者によって付与されていることを確認してください。
管理者アカウントを使用して管理者の同意を付与するには、次の手順を実行します。
Azure portalにサインインし、エンタープライズアプリケーション>アクティビティ>管理者の同意要求に移動します。
必要な同意要求を承認します。
パイプラインの設定
以下の手順を実行して、OneDriveをデータパイプラインソースとして設定します。
作成 > データパイプラインを選択するか、C+Iを押します。
データパイプライン名フィールドにデータパイプラインの名前を入力します。
データパイプライン設定
ロケーションドロップダウンメニューを使用して、データパイプラインを保存するプロジェクトを選択します。
ビルドを開始をクリックします。
Extract new/updated records from source app トリガーをクリックします。このトリガーでは、パイプラインがOneDriveからデータを取得する方法を定義します。
ソースアプリから新規/更新済みレコードを抽出トリガーを設定
Your Connected Source Apps ドロップダウンメニューを使用して、OneDrive を選択します。
このパイプラインで使用するOneDriveのコネクションを選択します。または、+ 新規コネクションをクリックして、新しいコネクションを作成します。
任意。 Drive ID(ドライブID)を入力します。認可されたユーザーの個人用OneDriveドライブを使用するには、このフィールドを空欄にします。共有OneDriveドライブまたはSharePointサイトのドキュメントライブラリにあるファイルとフォルダを一覧表示するには、認可されたユーザーがアクセスできるドライブのIDを指定します。ドライブIDは、OneDriveのURLのcidパラメーターで確認できます。たとえば、https://onedrive.live.com/?id=244DDFC44A57%21103&cid=24C9A8FC44A57では、24C9A8FC44A57がドライブIDです。
Add objectをクリックしてNew objectパネルを開きます。
オブジェクトの追加
Source Folder path(ソースフォルダパス)フィールドに監視するフォルダパスを入力します。パイプラインは、このフォルダの直下にあるファイルを一覧表示し、ファイル名パターンに一致するファイルを取得します。
ファイル設定の構成
ネストされたフォルダの制限
OneDriveデータパイプラインは、Source Folder path(ソースフォルダのパス)フィールドで指定したフォルダの直下にあるファイルのみを取得します。ネストされたサブフォルダ内のファイルは取得されません。パイプラインでサブフォルダ内のファイルを処理する必要がある場合は、それらのファイルを最上位のフォルダに移動してください。
ファイルタイプドロップダウンメニューを使用して、抽出するファイル形式を選択します。 Workatoは次のファイルタイプをサポートしています。
- CSV:
.csvファイルからデータを抽出します。追加のファイルタイプ設定の構成が必要です。 - Parquet:
.parquetファイルからデータを抽出します。スキーマとデータ型はファイルから直接推測されます。
ファイル名パターンフィールドでパターンを使用して、取得するファイルを定義します。複数のファイルを含めるには、orders_* のようなワイルドカードを使用します。ファイル拡張子は、選択した File type に基づいて自動的に付加されます。
一致するファイルを取得をクリックして、定義したパターンに一致するファイルをプレビューします。
宛先テーブルのスキーマを定義する参照ファイルを選択します。
ファイルタイプ設定を構成します。
スキーマを取得をクリックして、参照ファイルからスキーマを取得します。
スキーマを確認し、想定されるテーブル構造と一致していることを確認します。スキーマプレビューには、ソースファイルの列と、次のシステム生成列が含まれます。
_file: 各行の元になったソースファイルの名前。_line: ソースファイル内の各レコードの行番号またはロー番号。
Choose a merge strategy(マージ方法の選択)フィールドで、同期先テーブルでの行のマージ方法を設定します。
- Upsert(アップサート)(デフォルト):新しい行を挿入し、既存の行を更新します。アップサートを選択すると、マージ方法フィールドが表示されます。宛先テーブルのプライマリキーとして使用する列を1つ以上選択できます。マージ方法を空白のままにすると、パイプラインはシステム生成列
_fileと_lineを複合プライマリキーとして使用します。 - 追加のみ: 既存のレコードとの照合や更新を試みずに、すべての行を挿入します。追加専用テーブルには、システムによって生成される
_modified列も含まれるため、各行のソースファイルの変更時刻を追跡できます。
オブジェクトを確認をクリックして、設定を確認します。この画面には、ファイル設定、ファイルタイプ固有のオプション、マージの詳細が表示されます。
オブジェクト名を入力します。この名前は宛先テーブル名を定義します。
完了をクリックして、オブジェクト設定を保存します。
選択した各オブジェクトのスキーマを確認してカスタマイズします。パイプラインは、オブジェクトを選択するとそのオブジェクトのスキーマを自動的に取得します。これにより、デスティネーションがソースと一致します。
オブジェクトを展開して、関連フィールドを表示します。使用可能なすべてのデータを抽出するにはすべてのフィールドを選択したままにし、データ抽出とスキーマレプリケーションから除外するには特定のフィールドの選択を解除します。
任意。オブジェクトを展開し、各フィールドの処理方法を選択して、フィールドレベルのデータ保護を設定します。
- そのまま複製: ソースのデータ値が宛先に同一に複製されます。
- ハッシュ: 宛先に同期する前に、フィールド内の機密データ値をハッシュ化します。
Workatoでは、個人を特定できる情報(PII)やその他の機密フィールドをハッシュ化することを推奨します。 PIIが一般的に含まれるフィールドのリストについては、機密データの処理を参照してください。
オブジェクトを追加を再度クリックして、さらにオブジェクトを追加します。この手順を繰り返して、パイプラインにOneDriveのオブジェクトをさらに追加します。
スキーマ変更の処理方法を選択ドロップダウンメニューを使用して、スキーマドリフトの処理オプションを選択します。
- 新しいフィールドを自動同期: ソースに追加された新しいフィールドを自動的に検出して同期します。
- 新しいフィールドをブロック: パイプラインの開始後、スキーマを固定します。新しいフィールドは手動で追加する必要があります。このオプションを使用すると、ソーススキーマが更新された場合に宛先が同期されなくなる可能性があります。
詳細については、スキーマのレプリケーションとスキーマドリフトの管理を参照してください。
任意。同時実行制限フィールドに値を入力して、同時実行操作数の上限を設定します。 Workatoで設定されたデフォルトクォータを使用するには、フィールドを空白のままにします。最大値は100です。
Frequency(頻度)フィールドで、標準の時間ベースのスケジュールを選択するか、カスタムcron式を定義します。これにより、パイプラインがOneDriveから送信先にデータを同期する頻度が決まります。
サポートされるオブジェクト
OneDriveには固定のオブジェクトカタログがありません。代わりに、追加したフォルダとファイル名パターンの各設定がオブジェクトとなり、同期先の個別のテーブルとして同期されます。
| オブジェクト | 同期モード | 削除追跡 |
|---|---|---|
CSV files | 完全同期後に増分同期 | いいえ |
Parquet files | 完全同期後に増分同期 | いいえ |
同期モード
OneDriveデータパイプラインは完全同期を実行し、その後の各実行では増分同期を実行します。この順序は変更できません。
フル同期
完全同期では、設定されたフォルダのパス、ファイルタイプ、およびファイル名パターンに一致するすべてのファイルを一覧表示し、一致する各ファイルからすべての行を抽出します。この完全同期は、パイプラインの開始時に一度だけ実行されます。以降の各実行は増分同期です。
増分同期
増分同期は行単位ではなく、ファイル単位で行われます。各実行では、一致するファイルを一覧表示し、最後に記録された変更時刻より後に作成または変更されたファイルのみを処理します。 OneDriveはCSVファイルまたはParquetファイル内の行単位の変更追跡を提供しないため、変更されたファイルは、行ごとに差分を比較するのではなく、全体が再処理されます。
削除追跡
OneDriveは削除の追跡をサポートしていません。選択したマージ方法にかかわらず、ソースファイルが削除されても、Workatoは同期先の行を削除したり、削除済みとしてマークしたりしません。この動作が必要な場合は、ソースファイルに削除を追跡する列を含めてください。
スキーマとデータ型の処理
OneDriveデータパイプラインは、選択されたCSVファイルまたはParquetファイルからスキーマを推論します。
- CSVファイル:Workatoはファイルをサンプリングして、列名と型を推論します。曖昧な値やサポートされていない値は、文字列のまま保持されます。
- Parquetファイル:Workatoは、埋め込まれたParquetスキーマをファイルから直接読み取ります。ネストされた構造と繰り返しフィールドは、共通のParquetリーダーの仕様に従って保持され、必要に応じてネストされた構造がJSON文字列としてシリアル化されます。
正確なスキーママッピングを確保するため、同じオブジェクト設定に一致するすべてのファイルは、同じ列構造とデータ形式を維持する必要があります。
合成列
Workatoは、各同期先テーブルに以下の合成列を追加します。
| 列 | 目的 |
|---|---|
_file | 各行の取得元となったソースファイルの名前。 |
_line | ソースファイル内の各レコードの行番号。 |
_modified | ソースファイルの最終変更タイムスタンプ。 Append only(追加のみ)のマージ方法を選択した場合にのみ追加されます。 |
マージ方法と主キーの選択方法については、パイプラインの設定の手順を参照してください。
機密データの処理
OneDriveファイルには、個人を特定できる情報(PII)やその他の機密性の高い内容など、任意の顧客データが含まれる可能性があります。ファイルの列は、固定のソースAPIフィールドではなく顧客が定義するため、OneDriveデータパイプラインには機密フィールドの固定リストがありません。
パイプライン設定中にフィールドレベルのデータ保護でHashオプションを使用し、PIIが宛先に到達する前に保護します。詳細については、パイプラインを構成手順を参照してください。
制限事項
OneDriveをデータパイプラインソースとして使用する場合、以下の制限が適用されます。
サポートされるファイル形式
OneDriveデータパイプラインは、.csvファイルと.parquetファイルのみをサポートします。 Excel、JSON、XML、PDF、画像、およびその他のバイナリファイルなど、他の形式はサポートされていません。
フォルダの走査
OneDriveデータパイプラインは、設定されたフォルダの直下にあるファイルのみを取得します。ネストされたサブフォルダ内のファイルは取得も同期もされません。
最大ファイルサイズ
各ファイルのサイズは10 GB以下である必要があります。
最小同期頻度
サポートされる最小同期間隔は15分です。
最終更新日:
個人用コネクション
ビジネスコネクション
テナント固有のコネクション