柔軟なファイル タスク
適用対象: SQL Server Azure Data Factory の SSIS 統合ランタイム
柔軟なファイル タスクにより、サポートされているさまざまなストレージ サービスでファイル操作を実行できるようになります。 現在サポートされているストレージ サービスは次のとおりです。
- ローカル ファイル システム
- Azure Blob Storage
- Azure Data Lake Storage Gen2
柔軟なファイル タスクは、SQL Server Integration Services (SSIS) Feature Pack for Azure のコンポーネントです。
パッケージに柔軟なファイル タスクを追加するには、SSIS ツールボックスからデザイナー キャンバスにドラッグします。 次に、タスクをダブルクリックするか、右クリックして [編集] を選択し、 [Flexible File Task Editor](柔軟なファイル タスク エディター) ダイアログ ボックスを開きます。
[操作] プロパティでは、実行するファイル操作を指定します。 現在サポートされている操作は、次のとおりです。
- コピー操作
- 削除操作
コピー操作に対して使用できるプロパティは次のとおりです。
- SourceConnectionType: ソース接続マネージャーの種類を指定します。
- SourceConnection: ソース接続マネージャーを指定します。
- SourceFolderPath: ソース フォルダーのパスを指定します。
- SourceFileName: ソース ファイル名を指定します。 空白のままにすると、ソース フォルダーがコピーされます。 ソース ファイル名にはワイルドカードとして
*
(ゼロか複数の文字に一致)、?
(ゼロか 1 つの文字に一致)、^
(エスケープ文字) が許可されます。 - SearchRecursively: サブフォルダーを再帰的にコピーするかどうかを指定します。
- DestinationConnectionType: 送信先接続マネージャーの種類を指定します。
- DestinationConnection: 送信先接続マネージャーを指定します。
- DestinationFolderPath: 送信先フォルダーのパスを指定します。
- DestinationFileName: 送信先ファイル名を指定します。 空白のままにすると、ソース ファイル名が使用されます。
削除操作に対して使用できるプロパティは次のとおりです。
- ConnectionType: 接続マネージャーの種類を指定します。
- Connection: 接続マネージャーを指定します。
- FolderPath: フォルダーのパスを指定します。
- FileName: ファイル名を指定します。 空白のままにすると、フォルダーが削除されます。 Azure Blob Storage の場合、フォルダーの削除はサポートされていません。 ファイル名にはワイルドカードとして
*
(ゼロか複数の文字に一致)、?
(ゼロか 1 つの文字に一致)、^
(エスケープ文字) が許可されます。 - DeleteRecursively: ファイルを再帰的に削除するか指定します。
サービス プリンシパルのアクセス許可の構成に関する注意事項
テスト接続が機能するためには (BLOB ストレージまたは Data Lake Storage Gen2)、サービス プリンシパルには少なくともストレージ アカウントに対するストレージ BLOB データ閲覧者の役割を割り当てる必要があります。 これは、RBAC を使用して行います。
BLOB ストレージの場合、少なくともストレージ BLOB データ閲覧者とストレージ BLOB データ共同作成者の役割をそれぞれ割り当てることにより、読み取りと書き込みのアクセス許可が付与されます。
Data Lake Storage Gen2 の場合、アクセス許可は RBAC と ACL の両方によって決定されます。 こちらに説明されているように、アプリ登録に対応するサービス プリンシパルのオブジェクト ID (OID) を使用して ACL を構成することに注意してください。 これは、RBAC 構成で使用されるアプリケーション (クライアント) ID とは異なります。 組み込みロールまたはカスタム ロールを使用してセキュリティ プリンシパルに RBAC データ アクセス許可が付与されると、これらのアクセス許可は、要求の認可時に最初に評価されます。 要求された操作がセキュリティ プリンシパルの RBAC 割り当てによって認可された場合、認可はすぐに解決され、追加の ACL チェックは実行されません。 また、セキュリティ プリンシパルに RBAC 割り当てがない場合、または要求の操作が割り当てられたアクセス許可と一致しない場合、ACL チェックが実行され、要求された操作を実行する権限がセキュリティ プリンシパルに付与されているかどうかが判断されます。
- 読み取りアクセス許可の場合、少なくともソース ファイル システムから開始する実行アクセス許可を、コピーするファイルに対する読み取りアクセス許可と共に付与します。 または、少なくともストレージ BLOB データ閲覧者の役割を RBAC を使用して付与します。
- 書き込みアクセス許可の場合、少なくともシンク ファイル システムから開始する実行アクセス許可を、シンク フォルダーに対する書き込みアクセス許可と共に付与します。 または、少なくともストレージ BLOB データ共同作成者の役割を RBAC を使用して付与します。
詳細については、この記事を参照してください。