チュートリアル:Azure Logic Apps を使用して承認ベースの自動化されたワークフローを作成する

適用対象: Azure Logic Apps (従量課金)

このチュートリアルでは、承認ベースのタスクを自動化するロジック アプリ ワークフローの例を作成する方法について説明します。 具体的には、この例のワークフロー アプリで、MailChimp サービスによって管理されるメーリング リストの登録申請を処理します。 このワークフローには、申請のメール アカウント監視から、承認申請の送信、申請が承認されたかどうかの確認、承認されたメンバーのメーリング リストへの追加、新しいメンバーがリストに追加されたかどうかの確認まで、さまざまなステップがあります。

このチュートリアルでは、以下の内容を学習します。

  • 空のロジック アプリを作成します。
  • 登録申請のメールを監視するトリガーを追加します。
  • 申請の承認/拒否を依頼するメールの送信アクションを追加します。
  • 承認応答をチェックする条件を追加します。
  • 承認済みのメンバーをメーリング リストに登録するアクションを追加します。
  • これらのメンバーが正常にリストに登録されているかどうかをチェックする条件を追加します。
  • これらのメンバーが正常にリストに登録されているかどうかを伝えるメールの送信アクションを追加します。

完成したワークフローは、大まかに次のようになります:

完成したロジック アプリの概観

前提条件

  • Azure アカウントとサブスクリプション。 サブスクリプションをお持ちでない場合には、無料の Azure アカウントにサインアップしてください。

  • MailChimp アカウント。このアカウントには、ロジック アプリから承認済みメンバーのメール アドレスを追加できるリスト "test-members-ML" を作成しておく必要があります。 アカウントがない場合は、無料アカウントにサインアップして、MailChimp リストの作成方法を確認してください。

  • Azure Logic Apps でサポートされるメール プロバイダー (Office 365 Outlook、Outlook.com、Gmail など) のメール アカウント。 その他のプロバイダーについては、こちらのコネクタ一覧を参照してください。 このクイックスタートでは、職場または学校アカウントで Office 365 Outlook を使用します。 別のメール アカウントを使う場合、おおよその手順は変わりませんが、UI がやや異なることがあります。

  • 承認ワークフローに対応した Office 365 Outlook または Outlook.com のメール アカウント。 このチュートリアルでは、Office 365 Outlook を使用します。 別のメール アカウントを使う場合、おおよその手順は変わりませんが、UI の表示がやや異なることがあります。

  • ロジック アプリ ワークフローが特定の IP アドレスへのトラフィックを制限するファイアウォール経由で通信する必要がある場合、そのファイアウォールは、ロジック アプリ リソースが存在する Azure リージョン内の Azure Logic Apps で使用される受信送信 IP アドレスの両方に対して、アクセスを許可する必要があります。 また、ロジック アプリが Office 365 Outlook コネクタや SQL コネクタなどのマネージド コネクタを使用している場合、またはカスタム コネクタを使用している場合、そのファイアウォールでは、ロジック アプリの Azure リージョン内の "すべて" のマネージド コネクタ アウトバウンド IP アドレスへのアクセスを許可する必要もあります。

ロジック アプリ リソースを作成する

  1. Azure アカウントの資格情報で Azure Portal にサインインします。 Azure ホーム ページで、 [リソースの作成] を選択します。

  2. Azure Marketplace メニューで、 [統合]>[ロジック アプリ] を選択します。

    Azure Marketplace メニューで [統合] と [ロジック アプリ] が選択されているスクリーンショット。

  3. [ロジック アプリ] ペインで、作成するロジック アプリ リソースについて、以下の情報を入力します。

    ロジック アプリの作成ペインと新しいロジック アプリに設定する情報を示すスクリーンショット。

    プロパティ 説明
    サブスクリプション <Azure サブスクリプション名> Azure サブスクリプション名。 この例では、Pay-As-You-Go を使用します。
    リソース グループ LA-MailingList-RG Azure リソース グループの名前。関連するリソースの整理に使用します。 この例では、LA-MailingList-RG という名前の新しいリソース グループを作成します。
    名前 LA-MailingList ロジック アプリの名前。文字、数字、ハイフン (-)、アンダースコア (_)、かっこ (())、およびピリオド (.) のみを含めることができます。 この例では、LA-MailingList を使用します。
    場所 米国西部 ロジック アプリの情報の保存先となるリージョン。 この例では、West US を使用します。
    [プランの種類] 従量課金
    Log Analytics Off 診断ログの場合は、この設定をオフのままにしてください。
  4. 完了したら、 [確認および作成] を選択します。 Azure によってロジック アプリに関する情報が検証されたら、 [作成] を選択します。

  5. Azure によってアプリがデプロイされたら、 [リソースに移動] を選択します。

    Azure によってテンプレート選択ペインが開かれ、紹介ビデオ、一般的に使われるトリガー、ロジック アプリのテンプレート パターンが表示されます。

  6. 動画と一般的なトリガーのセクションの下にある [テンプレート] セクションまでスクロールし、 [空のロジック アプリ] を選択します。

    Logic Apps のテンプレートの選択ペインで、[空のロジック アプリ] が選択されているスクリーンショット。

次に、登録申請が含まれる受信メールをリッスンする Outlook トリガーを追加します。 ロジック アプリはいずれも必ずトリガーにより起動され、トリガーは、特定のイベントが発生するか、新しいデータが特定の条件を満たしたときに起動されます。 詳細については、「クイックスタート: マルチテナント Azure Logic Apps で従量課金ロジック アプリ ワークフローの例を作成する」をご覧ください。

メールを監視するトリガーを追加する

  1. ワークフロー デザイナーの検索ボックスに「when email arrives」と入力し、[新しいメールが届いたとき] というトリガーを選択します。

    • Azure の職場または学校アカウントには、Office 365 Outlook を選択します。
    • 個人用 Microsoft アカウントには、Outlook.com を選択します。

    この例では、Office 365 Outlook を選択して続行します。

    Logic Apps デザイナーの検索ボックスに検索語句「when email arrives」が入力され、

  2. まだ接続していない場合は、サインインし、メッセージが表示されたら電子メール アカウントへのアクセスを認証します。

    Azure Logic Apps によって、ご自分のメール アカウントへの接続が作成されます。

  3. トリガーに、新しいメールを確認する際の条件を指定します。

    1. メールを確認するフォルダーを指定します。他のプロパティは、既定の設定値のままにしておきます。

    2. メールに対して件名に応じたフィルター処理ができるようにするために、トリガーに [件名フィルター] プロパティを追加します。 [新しいパラメーターの追加] リストを開き、 [件名フィルター] を選択します。

      [新しいパラメーターの追加] リストが開いて、[件名フィルター] が選択された状態のスクリーンショット。

      このトリガーのプロパティの詳細については、Office 365 Outlook のコネクタ リファレンスまたは Outlook.com のコネクタ リファレンスを参照してください。

    3. このプロパティがトリガーに表示されたら、このテキストを入力します: subscribe-test-members-ML

      [件名フィルター] プロパティに「subscribe-test-members-ML」というテキストが入力されている状態のスクリーンショット。

  4. ここでトリガーの詳細を非表示にするには、シェイプのタイトル バー内をクリックしてシェイプを折りたたみます。

    折りたたまれたトリガー シェイプを示すスクリーンショット。

  5. ロジック アプリ ワークフローを保存します。 デザイナーのツール バーで、 [保存] を選択します。

ロジック アプリは現在稼働していますが、受信メールをチェックすること以外は何もしていません。 そこで、トリガーが起動したときに反応するアクションを追加します。

承認の電子メールを送信します

トリガーが完成したら、申請の承認/拒否を依頼するメールの送信アクションを追加します。

  1. ワークフロー デザイナーで、[新しいメールが届いたとき] トリガーの下にある [新しいステップ] を選択します。

  2. [操作を選択してください] の検索ボックスに「send approval」と入力し、 [承認のメールを送信します] というアクションを選択します。

    フィルター処理により [操作を選択してください] リストに

  3. ここで、次の画像と説明に従い、特定のプロパティの値を入力します。 その他はすべて既定値のままにしておきます。 これらのプロパティの詳細については、Office 365 Outlook のコネクタ リファレンスまたは Outlook.com のコネクタ リファレンスを参照してください。

    [承認のメールを送信します] のプロパティを示すスクリーンショット

    プロパティ 説明
    To <承認者のメールアドレス> 承認者のメール アドレス。 テスト目的のため、ご自身のアドレスを使ってください。 この例では、sophiaowen@fabrikam.com という架空のメール アドレスを使用しています。
    件名 Approve member request for test-members-ML わかりやすいメールの件名
    ユーザー オプション Approve, Reject このプロパティでは、承認者が選択できる応答の選択肢を指定します。既定値は [Approve][Reject] です。

    Note

    一部の編集ボックスは、その内部をクリックすると、動的コンテンツ リストが表示されますが、現時点では無視してかまいません。 このリストには以前のアクションの出力が表示され、ワークフローの後続のアクションに対する入力として選択できます。

  4. ロジック アプリ ワークフローを保存します。

次に、承認者によって選択された応答を確認する条件を追加します。

承認応答をチェックする

  1. [承認のメールを送信します] アクションの下で、 [新しいステップ] を選択します。

  2. [操作を選択してください][組み込み] を選択します。 検索ボックスに「condition」と入力し、「 [条件] 」という名前のアクションを選択します。

    [組み込み] が選択された状態で [操作を選択してください] の検索ボックスに検索語句「check」が入力され、かつ [条件] アクションが選択された状態のスクリーンショット。

  3. [条件] のタイトル バーにある省略記号 ( ... ) ボタンを押し、 [名前の変更] を選択します。 条件の名前をわかりやすく「If request approved」に変更します。

    省略記号ボタンが押され、[設定] リストが開き、[名前の変更] コマンドが選択された状態のスクリーンショット。

  4. 承認者によって [Approve] が選択されたかどうかをチェックする条件を作成します。

    1. 条件の左側にある [値の選択] ボックス内をクリックします。

    2. 表示される動的コンテンツ リストの [承認のメールを送信します] で、 [SelectedOption] プロパティを選択します。

      動的コンテンツ リストの [承認のメールを送信します] セクションで [SelectedOption] 出力が選択された状態のスクリーンショット。

    3. 中央の比較ボックスで、 [次の値に等しい] 演算子を選択します。

    4. 条件の右側にある [値の選択] ボックスには、テキスト「Approve」を入力します。

      完成した条件は次の例のようになります。

      申請が承認された場合の条件の完成例を示すスクリーンショット

  5. ロジック アプリ ワークフローを保存します。

次に、レビュー担当者が申請を承認したときにロジック アプリによって実行されるアクションを指定します。

MailChimp リストにメンバーを追加する

次は、承認済みのメンバーをメーリング リストに追加するアクションを追加します。

  1. 条件の [真] 分岐で、 [アクションの追加] を選択します。

  2. [操作を選択してください] の検索ボックスで、 [すべて] を選択します。 検索ボックスに「mailchimp」と入力し、 [メンバーをリストに追加する] という名前のアクションを選択します。

    [操作を選択してください] ボックスに検索語句「mailchimp」が入力され、[メンバーをリストに追加する] アクションが選択された状態のスクリーンショット。

  3. MailChimp アカウントにまだ接続していない場合には、サインインするように求められます。

  4. 次の画像と説明に従い、 [メンバーをリストに追加する] アクションに情報を指定します。

    [メンバーをリストに追加する] アクションの情報を示すスクリーンショット。

    プロパティ 必須 説明
    リスト ID はい <メーリングリスト名> ご自分の MailChimp メーリング リストの名前を選択します。 この例では、test-members-ML を使用します。
    メール アドレス はい <new-member-email-address> 表示される動的コンテンツ リストの [新しいメールが届いたとき] セクションで [差出人] を選択します。これはこのトリガーの出力であり、新しいメンバーのメール アドレスを指定します。
    状態 はい <メンバーの登録状態> 新しいメンバーに対して設定する登録状態を選択します。 この例では subscribed を選択します。

    詳細については、「Manage subscribers with the MailChimp API (MailChimp API を使った購読者管理)」を参照してください。

    [メンバーをリストに追加する] アクションのプロパティの詳細については、MailChimp のコネクタ リファレンスを参照してください。

  5. ロジック アプリ ワークフローを保存します。

次に、新しいメンバーがメーリング リストに正常に登録されたかどうかをチェックするための条件を追加します。 そうすることによって、ロジック アプリからこの操作の成否に関する通知を受け取ることができます。

成功か失敗かをチェックする

  1. [True] 分岐の [メンバーをリストに追加する] アクションの下にある [アクションの追加] を選択します。

  2. [操作を選択してください][組み込み] を選択します。 検索ボックスに「condition」と入力し、「 [条件] 」という名前のアクションを選択します。

  3. 条件の名前をわかりやすく「If add member succeeded」に変更します。

  4. 承認済みのメンバーが正常にメーリング リストに登録されているかどうかをチェックする条件を作成します。

    1. 条件の左側にある [値の選択] ボックス内をクリックします。 表示される動的コンテンツ リストの [メンバーをリストに追加する] セクションで、 [状態] プロパティを選択します。

      たとえば、条件はこの例のようになります。

      条件の左側の [値の選択] ボックスに [状態] を入力する手順を示したスクリーンショット。

    2. 中央の比較ボックスで、 [次の値に等しい] 演算子を選択します。

    3. 条件の右側にある [値の選択] ボックスには、テキスト「subscribed」を入力します。

      完成した条件は次の例のようになります。

      登録の成否を確認する条件の完成版を示すスクリーンショット。

次に、承認されたメンバーのメーリング リストへの登録に成功または失敗したときに送信されるメールを設定します。

メンバーが追加された場合にメールを送信する

  1. [If add member succeeded] 条件の下にある [True] 分岐で、 [アクションの追加] を選択します。

    [If add member succeeded] 条件の下にある [True] 分岐で [アクションの追加] を選択した状態のスクリーンショット。

  2. [操作を選択してください] の検索ボックスに「outlook send email」と入力し、 [メールの送信] というアクションを選択します。

    [操作を選択してください] の検索ボックスに「outlook send email」と入力され、通知用に [メールの送信] アクションが選択された状態のスクリーンショット。

  3. アクションの名前をわかりやすく「Send email on success」に変更します。

  4. 次の画面と説明に従い、 [Send email on success] アクションに情報を指定します。

    [Send email on success] アクションと、成功時のメールに指定する情報を示したスクリーンショット。

    プロパティ 必須 説明
    本文 はい <成功時のメール本文> 成功時に送信されるメールの本文の内容。 このチュートリアルでは、次の手順に従います。

    1.「New member has joined "test-members-ML":」というテキストを入力します。末尾にはスペースを 1 つ追加してください。

    2.表示される動的コンテンツ リストから、 [メール アドレス] プロパティを選択します。

    :このプロパティが表示されない場合には、 [メンバーをリストに追加する] セクション ヘッダーの隣にある [表示を増やす] を選択します。

    3.次の行には、「Member opt-in status: 」というテキストを入力します。末尾にはスペースを 1 つ追加してください。

    4.動的コンテンツ リストから、 [メンバーをリストに追加する][状態] プロパティを選択します。

    件名 はい <成功時のメールの件名> 成功時に送信されるメールの件名。 このチュートリアルでは、次の手順に従います。

    1.「Success! Member added to "test-members-ML": 」というテキストを入力します。末尾にはスペースを 1 つ追加してください。

    2.動的コンテンツ リストから、 [メンバーをリストに追加する][メール アドレス] プロパティを選択します。

    To はい <your-email-address> 成功時のメールの送信先アドレス。 テスト目的で自分の電子メール アドレスを使用できます。
  5. ロジック アプリ ワークフローを保存します。

メンバーが追加されなかった場合にメールを送信する

  1. [If add member succeeded] 条件の下にある [False] 分岐で、 [アクションの追加] を選択します。

    [If add member succeeded] 条件の [False] 分岐で [アクションの追加] が選択された状態のスクリーンショット。

  2. [操作を選択してください] の検索ボックスに「outlook send email」と入力し、 [メールの送信] というアクションを選択します。

    [操作を選択してください] の検索ボックスに「outlook send email」と入力され、[メールの送信] アクションが選択された状態のスクリーンショット。

  3. アクションの名前をわかりやすく「Send email on failure」に変更します。

  4. 次に示す説明に従って、このアクションの情報を指定します。

    [Send email on failure] アクションと、失敗時のメールに指定する情報を示したスクリーンショット。

    プロパティ 必須 説明
    本文 はい <body-for-failure-email> 失敗時に送信されるメールの本文の内容。 このチュートリアルでは、次のテキストを入力します。

    Member might already exist. Check your MailChimp account.

    件名 はい <subject-for-failure-email> 失敗時に送信されるメールの件名。 このチュートリアルでは、次の手順に従います。

    1.「Failed, member not added to "test-members-ML": 」というテキストを入力します。末尾にはスペースを 1 つ追加してください。

    2.動的コンテンツ リストから、 [メンバーをリストに追加する][メール アドレス] プロパティを選択します。

    To はい <your-email-address> 失敗時のメールの送信先アドレス。 テスト目的で自分の電子メール アドレスを使用できます。
  5. ロジック アプリ ワークフローを保存します。

次に、ワークフローをテストします。この時点で次のようになっています:

完成したロジック アプリ ワークフローの例を示したスクリーンショット。

ロジック アプリ ワークフローを実行する

  1. メーリング リストの登録申請メールを自分宛てに送信します。 申請が受信トレイに配信されるまで待ちます。

  2. ワークフローを手動で開始するには、デザイナーのツール バーの [トリガーの実行]>[実行] を選択します。

    メールの件名がトリガーの件名フィルターと一致した場合、ワークフローによって登録申請の承認依頼メールが送信されます。

  3. 受信した承認メールで [Approve] を選択します。

  4. 購読者のメール アドレスがメーリング リストに存在しない場合、ワークフローによってそのメール アドレスが追加され、次のようなメールが送信されます:

    登録に成功した場合のメールの例を示したスクリーンショット。

    ワークフローによって購読者を追加できなかった場合は、次のようなメールが届きます:

    登録に失敗した場合のメールの例を示したスクリーンショット。

ヒント

メールが届かない場合は、迷惑メール フォルダーを確認してください。 この種のメールは、迷惑メール フィルターによってリダイレクトされる場合があります。 また、ロジック アプリが正しく動作しているかどうかわからない場合は、ロジック アプリのトラブルシューティングに関するページを参照してください。

お疲れさまでした。Azure、Microsoft サービス、その他 SaaS アプリなどの垣根を越えて情報を統合するワークフローを作成し、実行することができました。

リソースをクリーンアップする

ロジック アプリは、ロジック アプリ リソースを無効にするか削除するまで実行され続けます。 このサンプル ロジック アプリが不要になったら、ロジック アプリと関連リソースが含まれるリソース グループを削除しましょう。

  1. Azure portal の検索ボックスに、作成したリソース グループの名前を入力します。 結果の [リソース グループ] で、そのリソース グループを選択します。

    この例では、LA-MailingList-RG という名前の新しいリソース グループを作成しました。

    Azure の検索ボックスに「la-mailinglist-rg」と入力され、[LA-MailingList-RG] が選択された状態のスクリーンショット。

    ヒント

    Azure のホーム ページの [最近のリソース] にリソース グループが表示されている場合は、ホーム ページからそのグループを選択できます。

  2. リソース グループのメニューで、 [概要] が選択されていることを確認します。 [概要] ペインのツール バーで、 [リソース グループの削除] を選択します。

    リソース グループの [概要] ペインと、ペインのツール バーの [リソース グループの削除] が選択されているスクリーンショット。

  3. 確認ペインが表示されたら、リソース グループ名を入力して、 [削除] を選択します。

次のステップ

このチュートリアルでは、メーリング リスト登録申請の承認を処理するロジック アプリ ワークフローを作成しました。 次回は、Azure Storage と Azure Functions などの各種 Azure サービスを統合することによって、メールの添付ファイルを処理して保存するロジック アプリ ワークフローの作成方法について説明します。