---
title: 20250129_個人アプリを共有する際にセキュリティ面をあれこれ考えてみた
tags: 
author: [Kazuma Kondo](https://www.docswell.com/user/senkkk)
site: [Docswell](https://www.docswell.com/)
thumbnail: https://bcdn.docswell.com/page/LE13D3D4JG.jpg?width=480
description: 20250129_個人アプリを共有する際にセキュリティ面をあれこれ考えてみた by Kazuma Kondo
published: January 30, 25
canonical: https://www.docswell.com/s/senkkk/5WWLJY-2025-01-30-072054
---
# Page. 1

![Page Image](https://bcdn.docswell.com/page/LE13D3D4JG.jpg)

個人アプリを共有する際に
セキュリティ面をあれこれ考えてみた


# Page. 2

![Page Image](https://bcdn.docswell.com/page/GEWPYPYZJ2.jpg)

自己紹介
某製造業 情報システム統括部所属
2020年2月のMicrosoft Ignite Tour Osakaに参加して
Power Apps/Automateの魅力を感じ
個人でいろいろ勉強していたらいつの間にか仕事でも必
要になるように...
近藤 千真
（こんどう かずま）
今は事業部門のDXを支援する中で活用したり、個人的に
も業務効率化のアプリを開発したりしています


# Page. 3

![Page Image](https://bcdn.docswell.com/page/47ZKXKXL73.jpg)

アプリ作ってみた！


# Page. 4

![Page Image](https://bcdn.docswell.com/page/YJ6Q4Q4MJV.jpg)

せっかくなら他の人にも共有してみよう！


# Page. 5

![Page Image](https://bcdn.docswell.com/page/GJ5RQRQQ74.jpg)

いざ共有しようとすると課題が…
• API経由でデータを取得する際には、個人単位の「APIアクセストークン」が必要。自
分が使う分には、アプリ/フロー内にベタ書きで良かったが、他ユーザーにも共有する
場合にこの情報をどこでどう管理しようか...？
• アプリで取り扱うデータには、アプリ開発者が見てしまうのが適切ではないデータが
含まれるかもしれないが、このままでよいのだろうか...？


# Page. 6

![Page Image](https://bcdn.docswell.com/page/LE3PVPVZJ5.jpg)

①Power Automateでセキュア入力・出力を設定
何らかの不具合発生時に調査が難しくなるため、使いどころは考える必要がある。
環境変数を使用して、検証環境は設定OFF、本番環境は設定ONにできると良かったが、
現状では固定設定しかできなそう。


# Page. 7

![Page Image](https://bcdn.docswell.com/page/8EDL8L84JG.jpg)

②データ保存先に”ローカル”を使用
• APIのアクセストークン情報の管理を、Excel/SharePoint Listでやるのはしんどい。。
• Dataverseならやれなくはないが、お手軽にはできなそう。
• SaveData、LoadData関数を使用して、ローカルに保存してみよう！
SaveData、LoadData、ClearData 関数 - Power Platform | Microsoft Learn
Chrome/Edgeなどで、F12キーで開発者ツールを開いてみると、「IndexDB」という部分にデータが保存されていることが分かる


# Page. 8

![Page Image](https://bcdn.docswell.com/page/V7P2828V78.jpg)

SaveData/LoadData関数について
• Microsoft Learnには、今も以下の記載がありますが、すでに「試験的な機能」には表示されな
くなっているので、正式リリースされているのでは…？
• Power Apps Studioでのデバッグモードでは、以下のエラーが表示され動作しない
• データがブラウザに「アプリ」単位で保存されるため、共用端末の場合には注意が必要


# Page. 9

![Page Image](https://bcdn.docswell.com/page/2JVDNDNRJQ.jpg)

③APIのアクセストークン情報を暗号化してみる
• Power Automateの「カスタムコネクタ」の機能を使うと、独自の機能をプログラム
言語で実装することができる（開発・利用には有償ライセンスが必要）
• プログラム言語：C#では、AESと呼ばれる暗号化方式を使用することができ、事前に
定義しておいた共通鍵を使って、機密情報の暗号化や、復号化（暗号化された文字列
を元に戻す）を行うことができる
• このやり方を実践している人が、既にYoutubeで動画公開していた。。
• Unleashing the Magic of Encryption in Power Automate - YouTube


# Page. 10

![Page Image](https://bcdn.docswell.com/page/5EGYKYK6EL.jpg)

暗号化・復号化を行うカスタムコネクタの作成


# Page. 11

![Page Image](https://bcdn.docswell.com/page/4JQMNMN27P.jpg)

暗号化・復号化を行うカスタムコネクタの作成
Power AppsからAPIアクセス
トークン情報が渡される
LoadData関数で暗号化済
みのトークンを取得して
渡される
暗号化のカスタムコネクタを呼び出し、
ApiAccessToken20250125が変換される
復号化のカスタムコネクタ
を呼び出し、
元のトークンに戻される
Power Appsに値が戻され
SaveData関数でブラウザに
保存する


# Page. 12

![Page Image](https://bcdn.docswell.com/page/K74VGVGPJ1.jpg)

まとめ
• 1つの事例の中で、様々なPower Apps/Automateの標準機能、カスタマイズでの実現
方法を学ぶことができた！
• 今回は、あえて「Power Platformでセキュリティ面を考慮した実装をどこまで実現で
きるのか？」を突き進んだ感があるので、これが正解とは思っていないです！
• 社内利用であったとしても、IT基盤に対する評判(?)を落とさないためにも、アプリの
利便性、開発効率性、セキュリティでバランスを取りながら今後も開発を進めて行け
ればなと思います


