2
2

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

Power Platform から PowerShell スクリプトを実行したい

Posted at

Power Platform にはたくさんのコネクタが揃えられておりますが、呼び出されるサービス側が API として対応していないので代わりに PowerShell で対応する必要があるケースってないでしょうか?

例えば、Exchange Online の 配布グループ は 既成のコネクタ (Office 365 Groups) や Graph API を通して作成することはできませんが、Exchange Online Management モジュールを使った PowerShell を使えば作成できます。

image.png

Power Platform から PowerShell を実行したいときは、Azure Automation を使う方法を一つの選択肢として考えると良いかと思います。Power Platform では、Azure Automation のコネクタが提供されていますので活用しましょう。

では、以下の流れで配布グループを作成してみたいと思います。
image.png

① Azure Automation アカウントの作成

image.png

② PowerShell Runbook の作成

image.png

ランタイムバージョンは 5.1 を選択してください。

Exchange Online Management モジュールのインストール

image.png
image.png
image.png

ランタイムバージョンは 5.1 を選択してください。

③ Runbook の内容の作成

image.png
image.png

PowerShell スクリプト例
Param
(
    [Parameter(Mandatory=$true)]
    [String] $Name,
    [Parameter(Mandatory=$true)]
    [String] $Alias
)
$credential = Get-AutomationPSCredential -Name "XXX"
Connect-ExchangeOnline -Credential $credential
New-DistributionGroup -Name $Name -Alias $Alias -MemberJoinRestriction open

認証(Connect-ExchangeOnline)はユーザー認証にしていますが、多要素認証が有効になっていると実行時にエラーになるので、ほかに 証明書を使った認証 なども検討すると良いかと思います。

④ Runbook の実行テストと確認

image.png
image.png

⑤ Power Automate で③で作成した Runbook を起動する

コネクタ: Azure Automation
アクション: ジョブの作成

image.png

実行
image.png

問題なく作成されたことを確認
image.png

以上、ご参考になれば幸いです。

2
2
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
2
2

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?