$30 off During Our Annual Pro Sale. View Details »

PowerAutomateでGraphAPIが無償かも

MiyakeMito
May 28, 2022
3.1k

 PowerAutomateでGraphAPIが無償かも

MiyakeMito

May 28, 2022
Tweet

Transcript

  1. Power Automateで
    Graph API 実行が
    無料?!
    気ままに勉強会 #17

    View Slide

  2. Miyake Mito @MiTo60448639
    https://qiita.com/MiyakeMito
    株式会社アイシーソフト
    Technical Manager
    www.icsoft.jp
    https://speakerdeck.com/
    miyakemito

    View Slide

  3. Power Automate と
    Power Virtual Agents で
    ゲームを作ってます
    ⚫ オセロ
    ⚫ 神経衰弱
    ⚫ どうぶつしょうぎ
    ⚫ WORDL

    View Slide

  4. 本日の参考サイト
    ■ Power Automate でプレミアムアクションを使わずに Teams のチャネルや
    チームにメンションを送る(Hiroさん)
    https://mofumofupower.hatenablog.com/entry/mention_teams_channel
    ■ How to easily export from Power Automate to an Excel file without
    premium actions or apply to each. (Paulieさん)
    https://youtu.be/AA-D4lgjR3o
    ■ Microsoft Graph ドキュメント
    https://docs.microsoft.com/ja-jp/graph/?view=graph-rest-1.0

    View Slide

  5. 本日の内容
    ■ Power Automate でプレミアムコネクタなしで
    Graph APIを利用する
    https://qiita.com/MiyakeMito/items/7aa6d52f0c3dfc5d2823
    https://qiita.com/MiyakeMito

    View Slide

  6. 無料… 追加費用なし…
    みなさん、
    「無料」とか、
    「追加費用なし」っていう言葉、好きですか??
    私は好きです!
    大好きです!!

    View Slide

  7. 注意
    プレミアムコネクタを利用します。有料ライセンスが必要です。
    運用環境での使用は許可されていませんが、開発向けプランや開発
    者テナントであれば無償でお試しいただけます。
    ■ 開発者向けプラン
    https://powerapps.microsoft.com/ja-jp/developerplan/
    ■ Microsoft 365 開発者テナント
    https://developer.microsoft.com/ja-jp/microsoft-365/dev-program
    Graph API 利用に
    プレミアムコネクタが
    不要かも!!

    View Slide

  8. 本当の注意。
    紹介するアクションはプレビュー段階です。
    今後、利用できなくなる可能性があります。

    View Slide

  9. Graph API について
    おさらい

    View Slide

  10. Graph APIとは ①
    ◼ M365、AAD、EMSなどの情報を取得、更新できる
    RESTful Web API
    ◼ エンドポイントはhttps://graph.microsoft.com
    Graph
    API
    アプリ

    View Slide

  11. Graph APIとは ②
    Microsoft 365
    User, Groups, Organizations
    Outlook / Exchange
    SharePoint, OneDrive
    Teams
    Planner
    To Do
    Excel
    OneNote
    Delve
    Microsoft Search
    アクセス可能なソリューション
    Windows 10,11
    Activities
    Device Relay
    Commands
    通知
    Enterprise Mobility + Security
    Azure AD
    Intune
    Advanced Threat Analytics
    Advanced Threat Protection
    Identity Manager
    Dynamics 365 Business Central
    などなど

    View Slide

  12. Powe Automateで利用する手順
    アプリの登録
    アプリにアクセス許可を付与
    アプリケーションの
    許可でAPI実行 委任されたアクセス許可でAPI実行












    Graph API 実行
    Graph API 実行
    アクセストークン
    発行
    Graph API 実行
    パターン1 パターン2 パターン3
    これが
    一番手軽

    View Slide

  13. 委任されたアクセス許可
    ◼ HTTP with Azure ADコネクタ > HTTP要求を呼び出します
    ◼ HTTP with Azure AD コネクタはある程度の権限を保持している
    ➢ 実行できる権限スコープの一覧は公開されていない
    ➢ フローを実行した際に権限エラーが発生する場合、アプリケー
    ションの許可を利用する、またはトークンを取得する必要がある
    私の権限で実行して
    どうぞ
    プレミアム

    View Slide

  14. 無償でGraphを
    利用できちゃうかも
    な手順

    View Slide

  15. Powe Automateで利用する手順
    アプリの登録
    アプリにアクセス許可を付与
    アプリケーションの
    許可でAPI実行 委任されたアクセス許可でAPI実行












    Graph API 実行
    Graph API 実行
    アクセストークン
    発行
    Graph API 実行
    パターン1 パターン2 パターン3
    ここが無償で
    イケるかも!

    View Slide

  16. Power AutomateでGraph API
    「委任されたアクセス許可」が可能?
    NO
    Power Automateで Graph API を呼びたい
    権限エラーなど
    YES
    実行可能
    パターン1
    パターン2
    パターン3
    強力な権限が必要な
    要求は難しい
    「HTTP with Azure AD」>
    「HTTP要求を呼び出します」
    アクションで実行
    「Office 365 Groups」>
    「HTTP 要求を送信します」
    アクションで実行

    View Slide

  17. 必要なアクセス許可を調べる
    https://docs.microsoft.com/ja-jp/graph/
    で使いたいAPI情報を調べると書いてある
    委任されたアクセス許可が
    可能であること

    View Slide

  18. ノンプレミアムなAPIの呼び出し
    Office 365 Groups
    > HTTP 要求を送信します(プレビュー)
    HTTPメソッド
    URI
    要求本文
    Defaultでコンテンツタイプの
    指定がされていてイカしてる!
    ヘッダー

    View Slide

  19. 403… Office 365 Groups コネクタは
    ある程度の権限を保持しているが、
    権限エラーが発生する場合は・・・
    ➢ アプリケーションの許可でアク
    セス権限を付与できるなら
    ➢ できない場合は
    アクセストークンを発行する
    私に任せて下さい!

    View Slide

  20. 可能な操作 ①
    リソース URI 操作 me Users
    ユーザー users ユーザー情報取得 〇 〇
    ユーザー情報更新 × ×
    パスワード変更 × ×
    差分を取得する 〇 〇
    組織 directory ライセンス割り当て × ×
    削除済みオブジェクトの取得 × ×
    ゴミ箱から削除 × ×
    ゴミ箱から復元 × ×
    グループ groups
    ユーザーがダイレクト メンバーになっているグループ、ディレクトリ ロール、管理
    単位を取得 〇 〇
    追加・更新・削除 〇 -
    メンバーの追加・削除 〇 -
    Office Graph分析情報 insights ユーザーと共有されるドキュメントの一覧を含む計算された分析情報 〇 ×
    人気上昇中 〇 〇
    ユーザーが表示または変更したドキュメント 〇 〇
    メッセージ message メールボックス内のメッセージを取得 〇 〇
    メールの送信 〇 〇
    ユーザーの受信トレイに定義されているすべての messageRule オブジェクト 〇 ×
    カレンダー calendar 予定の取得 〇 〇
    event イベントの作成 × ×
    Outlookの設定 mailboxSettings メールボックスの設定を取得 〇 ×
    メールボックスの設定を更新 × ×
    Todo todo To-doタスクリスト取得 〇 ×
    To-doタスクリスト作成 〇 ×
    標準コネクタも、あり〼

    View Slide

  21. 可能な操作 ②
    リソース URI 操作 me Users
    連絡先 contacts 連絡先の取得 〇 ×
    連絡先の作成 〇 ×
    委任された権限の付与 oauth2PermissionGrants oauth2PermissionGrants を一覧表示する × ×
    Onenote onenote 作成 × ×
    取得 × ×
    OneDrive drive OneDriveを取得する 〇 ×
    SharaPoint sites サイトを取得する 〇 -
    リストの情報を取得 〇 -
    リストの作成・更新・削除 × -
    Teams teams チームの作成/編集 〇 -
    チームの削除(グループ削除) 〇 -
    所属チームの一覧取得 〇 〇
    チームをアーカイブ 〇 -
    メンバーの操作 〇 -
    チャネルの一覧取得 〇 -
    チャネルの作成・削除 〇 -
    chats メッセージの取得 × ×
    セキュリティ security アラートの取得 × -
    security セキュリティスコア取得 × -
    informationProtection 脅威評価取得 × -
    標準コネクタも、あり〼

    View Slide

  22. DEMOします
    ■ チームを作成する
    https://docs.microsoft.com/ja-jp/graph/api/team-post?view=graph-rest-
    1.0&tabs=http
    「チームの作成」アクションと比べて・・・
    ✓ M365グループからチームを作成可能
    ✓ 同時にチャネルを作成可能
    ✓ チームの設定をカスタム可
    ✓ アプリのインストール可

    View Slide

  23. まとめ
    Graph API が
    for 365 のライセンス範囲で
    実行できる!
    だからもう、やるしかない!!

    View Slide

  24. ありがとうございました

    View Slide