業務の隙間を埋める技術メモ。

「それ、作れるか?」より 「それ、作って大丈夫か?」を考えたい。 業務で“ちゃんと使える”かどうかを、 実際に手を動かして確かめたログを残しています。

Power Automateで外部共有リンクを自動発行しようとしてちょいハマした話(NetSuite開発現場)

 

こんにちは。
今回は、NetSuiteの開発案件で「外部ユーザーとのファイル共有どうする問題」にちょっとぶつかった話です。

結論だけ知りたい人向けに先に言うと、
SharePointのURLをそのまま渡しても外部ユーザーは見れないので、「共有リンク」をちゃんと発行する必要がある、これに尽きます。

ただ、そこに至るまで普通にハマりました。


■ 前提:もともと作っていた仕組み

まず前提から。

うちのチームでは、こんな運用をしていました。

  • Backlog で課題を発行

  • Power Automate でイベントをトリガー

  • 課題ごとに専用のフォルダを自動作成

  • そのフォルダのURLを課題のトップページに貼り付け

フォルダ自体は
Microsoft Teams のファイル領域(=実体は SharePoint)に作っています。

イメージとしてはこんな感じです。

👉 課題を開けば、そのまま関連ファイルに飛べる

これ、運用としてはかなり便利で、

  • 設計書

  • エビデンス

  • やりとり資料

全部そこに集約できます。


■ なぜ今まで問題なかったのか

この仕組み、しばらくは全く問題なく回っていました。

理由はシンプルで、

👉 プロジェクトメンバーが全員「社内ユーザー」だったから

です。

社内ユーザーであれば:

  • Teamsのメンバーに入っている

  • SharePointの権限も暗黙的に持っている

つまり

👉 URLをそのまま貼るだけで普通にアクセスできる

なので、

  • わざわざ共有リンクを発行する必要もない

  • 権限を意識する場面もほぼない

正直、この時点では

👉 「ファイル共有まわりってこんなもんでしょ」

くらいの認識でした。


■ 状況が変わったきっかけ

転機になったのが今回の案件です。

👉 外注パートナーさんが複数名プロジェクトに参加

ここで初めて「外部ユーザー」という存在をちゃんと意識することになります。

やりたいこと自体は変わらず:

  • 課題ごとにフォルダを作る

  • URLを貼る

  • そこにアクセスしてもらう

ただし前提が変わりました。

👉 そのURLを踏むのが社外の人になる


■ ここで問題発生

実際に運用を回し始めるとこうなりました。

  • 社内メンバー → 問題なし

  • 外部ユーザー → Teamsからは見れる

  • でも課題に貼ったURLからは見れない

「同じファイルなのに?」ってなります。


■ 原因(ここがハマりどころ)

整理するとこうです。

  • Teamsのファイル → 実体はSharePoint

  • Teams → チームメンバーとしての権限で見れている

  • 課題に貼ったURL → ただのSharePointのパス

つまり

👉 Teams経由のアクセスと、URL直アクセスは別物

さらに言うと

👉 URLと権限は紐づいていない

ここが完全に盲点でした。


■ 最初にやっていたこと(ダメパターン)

Power Automateではこんな処理をしていました。

  • フォルダ作成

  • そのパスを取得

  • URLを組み立ててBacklogに貼り付け

社内だけのときはこれで成立してたんですが、

👉 外部ユーザーが入った瞬間に破綻

結果:

👉 外部ユーザー「開けません」


■ 解決策(ちゃんとやる)

ここでやっと気づきます。

👉 必要なのは「URL」ではなく「共有リンク」

やったことはシンプルで、

① 共有リンクを作る

Power Automateの
「共有リンクの作成」

  • スコープ:特定のユーザー


② アクセス権を付与

「アクセス権の付与(Grant access)」で
外部ユーザーのメールを指定


③ そのリンクを使う

Backlogには「生成した共有リンク」を貼る


■ やってみての気づき

今回の件で一番の学びはこれです。

👉 「社内でうまくいってる仕組み」は外部が入ると簡単に壊れる

特に

  • Teams

  • SharePoint

  • Power Automate

この組み合わせは

👉 権限とリンクの扱いを意識しないと事故る