Microsoft Forms+Power Automateでアカウント払い出し申請を自動化!アダプティブカード承認付きフローの作り方

新入社員の入社や人事異動、プロジェクト参加などのタイミングで、「アカウント払い出し」は頻繁に発生します。現在も次のような運用を採用しているケースがあります。

  • 申請者がExcelやWordの申請書を作成してメール送信
  • 上長がメールで承認コメントをつけて転送
  • 情シスや管理者が内容を読み取り、各システムに手作業でアカウント作成

このような運用ケースでは、「どこに誰の申請・承認履歴があるのか分かりづらい」といった課題が発生しがちです。

そこで本記事では、Microsoft Forms+Power Automate+ Microsoft Teams(以下、Teams)を組み合わせて、以下のようなフローを実装する方法を紹介します。

  1. 利用者が Forms からアカウント払い出しを申請
  2. 上長(承認者)が Teams のアダプティブカードから承認/却下
  3. 承認結果に応じて、アカウント払い出し

Power Automateとは

Power Automate は、Microsoft が提供するクラウドベースのワークフロー/自動化サービスです。ドラッグ&ドロップのGUIで、「トリガー(きっかけ)」と「アクション(処理)」を組み合わせて、さまざまな自動化フローを作成できます。

主な特徴は次の通りです。

  • Microsoft 365(Forms, SharePoint, Teams, Outlook, Entra ID など)と高い親和性
  • コードを書かなくても、画面操作ベースでフロー作成が可能
  • 承認フローやアダプティブカード連携など、業務プロセス向けのテンプレートが豊富

今回のシナリオでは、以下のような一連の流れを Power Automate のフローとして実装します。

  • トリガー:Microsoft Forms に新しい回答が送信されたとき
  • 処理:
    • 回答内容の取得
    • Teams のアダプティブカードで上長に承認依頼
    • 承認結果に応じて、アカウント作成

前提条件

本記事の手順を実施するための前提条件は次の通りです。

  1. ライセンス / 環境
    • Microsoft 365 環境(Forms, Teams, Power Automate, Entra ID)
    • Power Automate を作成できるライセンス(Microsoft 365 E3/E5 など)
  2. 権限
    • ユーザー管理者またはグローバル管理者等の権限
  3. 利用サービス
    • Microsoft Forms:申請フォーム用
    • Microsoft Teams:アダプティブカードによる承認通知用
    • Power Automate:自動処理フローの作成
    • Entra IDコネクタ:ユーザーの払い出し
  4. 事前準備
    • 承認者として指定するユーザー/チームが決まっている
    • 申請用のFormsが作成済み

構成

今回実装する構成は次の通りです。

手順

手順は以下の通りです。

Power Automateでフローを新規作成

  1. Power Automate ポータル(https://make.powerautomate.com)を開きます。
  2. 「+ 作成」> 「自動化したクラウド フロー」を選択します。
  3. フロー名を「ユーザー作成申請フロー」、トリガーに「Microsoft Forms – 新しい応答が送信されたとき」 を選択します。
  4. 「作成」をクリックします。

  5. 「接続」を作成します。その後、トリガーの「 新しい応答が送信されたとき」を選択し、トリガーにしたい「申請フォーム」を選択します。



    ※トリガーにしたい「申請フォーム」が表示されない場合は以下サイトを参照し、「フォームID」を設定してください。
    Power AutomateでFormsを利用する際にフォームIDを手動で入力する - JBS Tech Blog

  6. 「+」を選択し、「Forms」で検索します。その後、「応答の詳細を取得」(Forms)アクションを追加します。

  7. フォームIDに「同じフォーム」指定し、応答 IDは「fx」を選択後、トリガーの「応答 ID」を指定します。

アダプティブカードで承認依頼を送信

  1. 「+」を選択し、「アダプティブ」で検索します。その後、「アダプティブカードを投稿し、応答を待機する」アクションを追加します。

  2. サインインし、以下パラメータを入力します。
    投稿者 フローボット
    投稿先 承認依頼の投稿先
    メッセージ {
      "type": "AdaptiveCard",
      "$schema": "http://adaptivecards.io/schemas/adaptive-card.json",
      "version": "1.5",
      "body": [
        {
          "type": "TextBlock",
          "text": "承認依頼",
          "wrap": true,
          "size": "ExtraLarge",
          "isSubtle": true
        },
        {
          "type": "TextBlock",
          "text": "ユーザー作成を承認しますか",
          "wrap": true
        },
        {
          "type": "Input.ChoiceSet",
          "id": "action",
          "choices": [
            {
              "title": "承認する",
              "value": "approve"
            },
            {
              "title": "承認しない",
              "value": "reject"
            }
          ],
          "label": "承認可否について選択してください。",
          "value": "値を選択"
        }
      ],
      "actions": [
        {
          "type": "Action.Submit",
          "title": "送信",
          "style": "positive"
        }
      ]
    }
    Recipient 承認者のアドレス

承認結果に応じたアカウント払い出し

  1. 「+」を選択し、「条件」で検索します。その後、「条件」アクションを追加します。

  2. 左の値は「fx」を選択後、「アダプティブカードを投稿して応答を待機する」アクションの「body/data/action」を指定します。

  3. 中央の値は「等しい」を入力、右の値は「承認する」を入力します。

  4. 条件分岐の「True」側の「+」を選択し、「ユーザーの作成」で検索します。その後、「ユーザーの作成」アクションを追加します。

  5.  以下必須項目のパラメータを入力します。

    アカウントが有効*

    はい

    表示名*

    「fx」を選択後、「応答の詳細を取得する」アクションの「表示名を入力してください」

    メール ニックネーム*

    「fx」を選択後、「応答の詳細を取得する」アクションの「ユーザープリンシパル名を入力してください」

    パスワード*

    初期パスワード(任意)

    ユーザー プリンシパル名*

    「fx」を選択後、「応答の詳細を取得する」アクションの「ユーザープリンシパル名を入力してください」

テストの実施

  1. Formsを投稿し、Power Automateの実行履歴から結果を確認します。

最後に

本記事では、Microsoft Forms と Power Automate、Teams のアダプティブカードを組み合わせて、アカウント払い出し申請フローの自動化 を実現する方法を紹介しました。

  • アカウント払い出し申請を Forms で受付
  • 上長(承認者)へ Teams アダプティブカードで承認依頼
  • 承認結果に応じて、自動アカウント発行

将来的には、各システムのAPIやEntra IDコネクタを組み合わせて、承認後のロール付与まで自動化することも可能です。現場の運用とセキュリティポリシーのバランスを見ながら、段階的な自動化に取り組んでみてください。

執筆担当者プロフィール
和田 剣斗

和田 剣斗(日本ビジネスシステムズ株式会社)

業務では主にAzureに携わっています。趣味はサウナや資産運用です。最近はテントサウナにはまっています。

担当記事一覧