🤖

Power Automate Desktopでちょっと楽をする

2021/03/06に公開

今月の始めにPower Automate Desktopが無償で提供されることが発表され、賑わっていますね。

将来的にはWindows 10の標準機能となるようなので、これからの進化が楽しみです。
私も自分のPCに入れて、普段の業務に活用してみました。

お題:MACアドレスフィルタリングの機器登録で楽をする

社内LANに不審な端末(個人のスマホ・PC・NASその他)が接続された際、MACアドレスを検出して通信をブロックしてくれる機器があり、社内LAN保護のために設置しています。
未登録の端末をブロックし、ブロック結果の通知をメールで送ってきてくれて便利なのですが、許可MACアドレスリストへの登録方法がWebブラウザからのみとなっています。
登録するMACアドレスの形式もAA:BB:CC:DD:EE:FFで、ipconfigコマンドから取れるMACアドレスの形式AA-BB-CC-DD-EE-FFと異なるので毎回テキストを置換してやる必要があります。

というわけで、私が今まで行っていたMACアドレスフィルタリング機器への機器登録作業フローは以下の通りです。

機器への登録手順(手作業)

  1. ユーザからMACアドレス登録申請を受け取る。メールやTeamsのチャットにipconfigの結果が貼られたり、ユーザが手打ちしたり、スクリーンショット(!?)が貼られたりといろいろ。
  2. ユーザから送られてきたMACアドレスの行をクリップボードにコピーしてテキストエディタに貼り付ける。前後の空白があれば削除、「-」は「:」に置換。置換後の結果をクリップボードにコピー
  3. Webブラウザを起動
  4. 「お気に入り」からMACアドレスフィルタリング機器の管理URLにアクセス
  5. ユーザ名・パスワード入力(ブラウザに記憶してもらえないので毎回入力。。。)
  6. 「ログイン」ボタン押す。以下のような画面が出てくる
     
  7. 「登録済みPC一覧」をクリック
  8. 「新規登録」ボタンをクリック
  9. 機器名称、MACアドレスを入力
  10. 「登録」ボタン押す
  11. ユーザに登録完了通知

何も考えなくて良いものの、マウスのクリック操作数が多い作業です。
退屈な作業はPCに任せるのが一番なので、Power Automate Desktopにやってもらいましょう!

Power Automate Desktopにはメールを受信してテキスト解析して何かを行う、という機能もありますが、バンバン申請が来るわけではないのでクリップボードにはユーザから送られたMACアドレスを含むテキスト行がある、という前提で処理を作っていきます。

Power Automateにやってもらう作業

  1. クリップボード内のテキストを取得
  2. テキスト前後のスペースが有れば削除
  3. さらにテキスト内の「-」を「:」に置換
  4. 置換結果をクリップボードにコピー
  5. Webブラウザ起動
  6. ユーザ名とパスワードを入力、ログイン
  7. 新規登録画面まで行ってMACアドレス登録
  8. 完了メッセージを出す

こんなところでしょうか。
早速Power Automate Desktopで実装していきましょう。

作ったフローは下記の通り。画面の左側からパーツをマウスでドラグ&ドロップするだけなのでフローが簡単に組めます。

本当は登録まで自動化したかったのですが、リンクをクリックさせるところが安定して動かなかったので、MACアドレスの整形と管理画面にログインするところまでを自動化しました。

MACアドレスフィルタリング機器への新しい登録手順は以下の通りとなります。

機器への登録手順(手作業+Power Automate Desktop)

  1. ユーザからMACアドレス登録申請を受け取る。
  2. ユーザから送られてきたMACアドレスの行をクリップボードにコピーする。
  3. Power Automate Desktopの「MACアドレス機器登録」ボタン押す
  4. Power Automate Desktopが動き出す
  5. 「登録済みPC一覧」リンクをクリック
  6. 「新規登録」ボタンをクリック
  7. 機器名称、MACアドレスを入力
  8. 「登録」ボタン押す
  9. ユーザに登録完了通知

手作業のみだと1分近くかかっていた作業が、Power Automate Desktopと併用すると25秒程度まで短縮できました。作業時間が半分になったのと、Power Automate Desktopが動いている間は見守っておけば良いだけなので楽になりました。

いきなり全ての作業を自動化するのではなく、自動化できそうな&失敗したときの被害が少なそうなところから自動化していくのがよさそうです。Power Automate Desktopの練習にもなりますし。

それでは、皆さんもPower Automate Desktopを活用してみてください!

Discussion