AzureとOneDriveの連携について
はじめに
クラウドサービスのプラットフォームであるMicrosoft Azure(以下、Azure(アジュール))とクラウドストレージサービスであるMicrosoft OneDrive(以下、OneDrive)の連携について、本記事では次の2つを紹介します。
- Azure Logic AppsとOneDriveコネクタを使用したファイル管理
- OneDriveのコンテンツとAzure App Serviceの同期
連携によるファイル管理
Azure Logic AppsとOneDriveコネクタを使用した連携によって、ファイルを管理するための自動化されたタスクとワークフローを作成することができます。
ここで、Azure Logic AppsとOneDriveコネクタについて簡単に紹介します。
(Azure Logic Apps)
Azure Logic Appsは、企業もしくは組織間でアプリ、データ、システム、サービスを統合する際に、タスクや、ビジネスプロセス、ワークフローのスケジュール設定、自動化、調整に便利なクラウドサービスです。Azure Logic Appsにより、クラウドとオンプレミス問わず、アプリの統合、データの統合、システムの統合、EAI、B2B通信が可能になるスケーラブルなソリューションを設計及び構築する作業を簡略化できます。
(OneDriveコネクタ)
OneDriveコネクタは、OneDrive内のファイルのアップロードや更新、取得、削除など、ファイル管理に関するアクションの実行が可能です。
事前準備
ここでの連携には、次の4つについて事前に行っておく必要があります。
- Azureアカウントの作成
- OneDriveアカウントの作成
- ロジックアプリの作成
- OneDriveアカウントに接続するロジックアプリの承認
前半の2つは割愛しますが、後半の2つについては、その手順を紹介します。
ロジックアプリの作成
ロジックアプリの作成については、以下の手順で作成できます。
- Azureホームページの検索ボックスるから「Logic Apps」を検索
- アプリ名やサブスクリプションといったロジックアプリに関する詳細を入力
- 完了したら下部の「作成」を選択
OneDriveアカウントに接続するロジックアプリの承認
- ロジックアプリ作成後、Logic Appsデザイナーで、ドロップダウンリストから「Microsoft が管理しているAPIを表示」を選択(※Logic Appsデザイナーとは、Azureポータル上でロジックアプリの具体的な処理を記述するためのGUIエディタです。)
- 検索ボックスに「onedrive」と入力し、トリガーまたはアクションを選択
- (初めてOneDriveへの接続を作成する場合)OneDriveの資格情報を使用してサインイン(ここでの資格情報は、接続するロジックアプリの承認と、OneDriveアカウントのデータへのアクセスに使用されます。)
- アクセス許可が表示されるため、下部の「はい」を選択し、OneDriveアカウントの使用をロジックアプリに承認
トリガーの使用
トリガーは、多くのMicrosoftマネージドコネクタで提供されており、イベント、新しいデータが一定条件を満たした場合に起動し、ロジックアプリで定義されたワークフローの開始に使用します。トリガーが起動する度に、Logic Appsエンジンによって、ワークフローを実行するLogic Apps インスタンスが作成されます。
トリガーを起動できる場面は複数提供されており、以下にその例のを紹介します。
- メールを受信した場合
- Azure Storageアカウントに対する変更が検出された場合
- ファイルが作成された場合
- ファイルが変更された場合
後述の「アクションの使用」で具体例を挙げていますが、トリガーは、指定した間隔と頻度でサービスをポーリングします。
アクションの使用
アクションは、前述のトリガーの後に発生する全てのステップを指します。基本的に各アクションは、マネージドコネクタ、カスタムAPI、またはカスタムコネクタにより定義される一つの操作と対応しています。
アクションの例を以下に示します。
- ファイルの作成・複製・削除
- フォルダ内のファイルの一覧を表示
- アーカイブをフォルダに展開
- ファイル内容の取得
- 電子メールを送信
例えば、前述のトリガーとアクションを組み合わせると、選択したフォルダー内のファイルが変更される度に、Office 365 Outlookの電子メールを送信することができます。また、「編集」を開き、「頻度」と「間隔」を設定することで、トリガーが起動してからアクションを起こすまでの時間の設定も可能です。
同期による連携
本記事では、OneDriveのコンテンツをAzure App Serviceと同期する連携方法を紹介していますが、DropboxもAzure App Serviceと連携が可能です。
コンテンツの同期を有効化
コンテンツの同期を有効にするために、Azure PortalでApp Serviceアプリのページに移動します。その後、以下の手順で有効化します。
- スクロールメニューから、「デプロイセンター」へ移動
- (初めての場合)OneDriveを選択し、下部の承認をクリック
- 承認後、続行をクリックし、構成ページへ移動
- 同期するフォルダの選択(選択したフォルダはOneDriveのコンテンツパス(Apps\Azure Web Apps)の下に作成されます。)
- 完了後、「続行」をクリックし、概要ページにて選択内容を確認し、「完了」をクリック
以上の手順でコンテンツの同期を有効にすることができます。
コンテンツの同期と切断
OneDriveフォルダのコンテンツのAzure Apps Serviceとの同期または切断は、「デプロイセンター」から行うことができます。上部にある「同期」をクリックすると、自動的にOneDriveにデプロイ用のディレクトリが作成されます。
まとめ
本記事では、AzureとOneDriveの連携について、ファイル管理と同期という観点で2つを取り上げ、紹介しました。Azureでは、12か月間無料サービスのアカウントを作成することができ、アップグレードしない限り課金は発生しません。そのため、既にAzureのアカウントを作っている方だけでなく、これまでAzureを利用したことがない方でもOneDriveとの連携を気軽に試すことができます。