Power Automateを利用してSharePoint Online上の祝日リストやExcelファイルから日付情報を取得するフローを作成したものの、「権限エラー」で動作しないというトラブルは珍しくありません。このエラーの背景には、リストやサイトの権限継承設定、あるいはテナント全体の条件付きアクセスポリシーやアプリ同意ポリシーが関係していることが多いです。本記事では、祝日リスト参照時に発生する権限エラーの原因を特定し、権限継承とポリシーのどちらに問題があるのかを切り分ける具体的な方法を解説します。権限エラーに直面した際に、何を確認し、どのように管理者へ報告すればよいかまでを網羅します。
【要点】この記事で確認すること
- 最初に見る場所: Power Automateの実行履歴に表示されるエラーメッセージの種類(アクセス拒否、認証失敗、許可不足など)。
- 切り分けの軸: フローを実行するアカウントとリストの権限継承状態、および条件付きアクセスポリシーやアプリ登録の同意設定。
- 注意点: 会社PCで勝手にリストの権限継承を解除したり、ポリシーを変更しないこと。必ず管理者に確認してから対処してください。
ADVERTISEMENT
目次
1. 権限エラーのよくある原因とメッセージの見方
Power Automateで祝日リストを参照しようとしたときに出るエラーは、大きく分けて「アクセス拒否」「認証失敗」「許可が不足しています」の3種類です。アクセス拒否は多くの場合、フローを実行するサービスアカウントがリストに対して読み取り権限を持っていないか、リストが親サイトとは別の権限継承をしていて許可されていない可能性があります。認証失敗は、条件付きアクセスポリシーがフローに使われているOAuthアプリ(Microsoft Flowなど)に対して多要素認証やデバイス準拠を要求しているときに発生します。許可が不足していますというエラーは、委任された権限(Delegated permissions)が足りずにGraph API経由の取得に失敗しているケースです。まずは実行履歴からエラーコードを確認し、その内容をメモしてください。
1.1 アクセス拒否エラーの解釈
「Access denied. You do not have permission to perform this action or access this resource.」というメッセージが出た場合、フローが利用しているアカウント(通常はフロー作成者のアカウント、または接続で指定したアカウント)が対象のリストやファイルに対して適切な権限を持っていない可能性が高いです。ただし、リストが多数のアイテムを持つ場合や、リストのバージョン設定が大量にある場合もアクセス拒否と誤認されることがあります。アクセス拒否の原因を特定するには、まずブラウザで直接そのリストにアクセスし、同じアカウントで閲覧できるか確認してください。もしブラウザでもアクセスできないなら、権限そのものが問題です。ブラウザでアクセスできるのにフローだけがエラーになる場合は、権限継承の状態やポリシーが関係しています。
1.2 認証失敗の解釈
「Authentication failed.」や「AADSTS」で始まるエラーは、Azure ADの認証プロセスで失敗していることを示します。この場合、条件付きアクセスポリシーが原因であることがほとんどです。特に、Power Automateに接続するときに使用するアカウントに多要素認証が必須となっているポリシーが適用されていると、フローからは対話的な認証ができないため失敗します。また、テナント全体でレガシー認証がブロックされている場合も同様のエラーが出ます。エラーコード(例: AADSTS50105、AADSTS53000)を控え、管理者に伝えることでポリシーの調整が可能になります。
2. 権限継承の確認手順
権限継承が原因かどうかを調べるには、SharePoint Onlineのサイト設定とリスト設定を確認します。以下の手順で進めてください。
- ブラウザで祝日リストが格納されているSharePointサイトにアクセスします。
- 右上の歯車アイコンから「サイトの設定」を開きます。
- 「サイトの権限」をクリックし、「アクセス許可の継承」の状態を確認します。「このサイトは親サイトから権限を継承しています」と表示されていれば継承中です。そうでなければ、個別に権限が設定されています。
- リストレベルでも権限継承が解除されていることがあります。該当のリストに移動し、リボンメニューの「リスト」タブ内にある「リストの設定」を開きます。
- 「アクセス許可と管理」セクションの「このリストの権限」をクリックすると、権限継承の状態が確認できます。
権限継承が解除されている場合、フローを実行するアカウントが明示的に追加されているか確認してください。もし追加されていない場合は、アカウントを「読み取り」権限で追加するか、管理者に依頼して継承を再開してもらう必要があります。継承を再開すると、サイト全体の権限設定が適用されるため、フロー作成者が必要な権限を持っていることを確認してください。
2.1 Excelファイルの場合の注意点
祝日リストをExcelファイルで管理している場合も、SharePoint上のドキュメントライブラリにおける権限継承が同様に影響します。ただし、Excelファイルの場合は、Power AutomateがOneDrive for Business経由かSharePoint経由かで接続の種類が異なります。Excelファイルを参照するフローでは、「Excel Online (Business)」コネクタを使うことが多く、このコネクタはアカウントの権限に加えて、ファイルが置かれている場所(SharePointサイト)の権限も継承します。ドキュメントライブラリの権限継承状態も確認する必要があります。
3. ポリシー関連の切り分け
権限継承に問題がなかった場合、次に疑うのはAzure ADの条件付きアクセスポリシー、アプリ同意ポリシー、または継続的アクセス評価(CAE)です。これらのポリシーはテナント全体に影響し、Power Automateの接続動作を阻害します。以下の観点で確認してください。
3.1 条件付きアクセスポリシー
条件付きアクセスポリシーがPower Automateのサービスプリンシパル(アプリ)に適用されている場合、多要素認証やデバイス準拠、場所の制限などが課せられます。フローは非対話型で動作するため、これらの要求を満たせず認証に失敗します。管理者は、Power Automate用のサービスアカウントを条件付きアクセスポリシーの対象から除外するか、フローが使うアプリ(「Microsoft Flow」「Microsoft Power Automate」など)に対してポリシーを調整する必要があります。なお、Azure portalの「条件付きアクセス」ブレードで「ユーザーとグループ」にフローアカウントが含まれていないか、「クラウドアプリ」にPower Automateが含まれていないかを確認できますが、これらは一般ユーザーが閲覧できない設定のため、管理者にエラーメッセージの詳細を伝えて依頼してください。
3.2 アプリ同意ポリシー
Power AutomateがGraph API経由で祝日リストを参照するには、事前にアプリの同意が行われている必要があります。テナントの「ユーザーはアプリに同意できる」設定が無効になっている場合、フロー作成時に必要な権限を付与できず、エラーになります。また、委任された権限(Delegated permissions)が不足していると「許可が不足しています」というエラーが出ます。この場合、管理者がアプリ登録画面で「Microsoft Flow」に対してSites.Read.Allなどの権限を許可(テナント全体の管理者同意)する必要があります。
4. 権限継承とポリシーの切り分けフロー
実際に問題が起きたときに、スムーズに原因を特定するための判断フローを以下にまとめました。発生したエラーメッセージに応じて、次に確認すべき事項が変わります。
| エラーの種類 | 優先確認項目 | 次のアクション |
|---|---|---|
| アクセス拒否 | リスト/サイトの権限継承状態 | ブラウザで直接アクセス→権限追加か継承再開を依頼 |
| 認証失敗 (AADSTS) | 条件付きアクセスポリシー | 管理者にエラーコードを伝え、ポリシー除外を依頼 |
| 許可が不足 | アプリ同意・委任権限 | 管理者にGraph API権限のテナント同意を依頼 |
| タイムアウト/アイテム数超過 | リストのサイズやビューの制限 | フィルターをかけるか、別のデータソースを検討 |
5. 失敗パターンと具体的な対策
実際によくある失敗パターンをいくつか挙げ、その対策を示します。いずれも権限継承とポリシーの両方の要素が絡んでいるケースです。
5.1 フロー作成者と異なるアカウントで実行している
Power Automateのフローは、既定ではフローを作成したユーザーのアカウントで動作しますが、接続で別のアカウントを指定することもできます。もし別のアカウント(例えば共有サービスアカウント)を使っている場合、そのアカウントがリストに対して権限を持っているか確認してください。また、そのアカウントに条件付きアクセスポリシーが適用されていないかも確認が必要です。よくあるのは、フロー作成者のアカウントは権限があるのに、実行時には別のアカウントが使われていてエラーになるパターンです。
5.2 リストに大量のアイテムがある場合のアクセス拒否
SharePointリストのアイテム数が5000を超えると、リストのビューしきい値(5000アイテム)に引っかかり、インデックスが設定されていないとアクセス拒否と似たエラーが発生することがあります。このエラーは「Access denied」と表示されますが、実際は権限の問題ではなく、クエリの制限です。この場合は、リストにインデックスを追加するか、フィルターを使って取得アイテムを絞ることで解決します。祝日リストは年間数百件程度が一般的ですが、複数年のデータを一つのリストに格納している場合は注意してください。
5.3 条件付きアクセスポリシーでPower Automateがブロックされている
テナント全体で「レガシー認証をブロック」するポリシーが有効になっていると、Power Automateは影響を受けます。Power Automateは最新の認証(OAuth 2.0)を使っていますが、一部のコネクタ(特に古いバージョン)はレガシー認証とみなされる場合があります。また、条件付きアクセスポリシーで「すべてのクラウドアプリ」に多要素認証を要求していると、Power Automateの接続がすべて失敗します。この場合、管理者はPower Automateのアプリをポリシーの対象から外すか、サービスアカウントをユーザー対象から除外する必要があります。
6. 管理者へ報告する情報と依頼内容
権限エラーの原因が権限継承なのかポリシーなのかを自分で判断できない場合、管理者に調査を依頼することになります。その際、以下の情報を伝えると解決がスムーズです。
- Power Automateの実行履歴からコピーしたエラーメッセージ全体(特にエラーコードとリソースURL)。
- フローの概要:どのようなトリガーで、どのリストやExcelファイルを参照しているか。
- フローに使用している接続アカウント(自分のアカウントか、共有アカウントか)。
- リストやサイトの権限継承状態を確認した結果(継承中か否か、自分に権限があるか)。
- 発生時刻と頻度(常時か、特定の時間だけか)。
管理者はこれらの情報をもとに、Azure ADのサインインログや条件付きアクセスポリシーの適用状況を確認し、適切な対処を行います。ユーザー側で勝手に権限を変更したり、ポリシーを変更しようとしないでください。
7. よくある質問
Q1. フローは自分で作成しましたが、管理者に連絡する前に試せることはありますか?
まず、ブラウザで対象の祝日リストにアクセスし、自分が閲覧できるか確認してください。閲覧できない場合は権限が不足しているため、サイト管理者にアクセス権を依頼します。閲覧できる場合は、フローの接続を一度削除して再接続してみてください。それでもエラーが続く場合は、条件付きアクセスポリシーが関与している可能性が高いため、管理者に連絡しましょう。
Q2. 権限継承を解除してリストに自分のアカウントを追加すれば解決しますか?
一時的な解決にはなりますが、継承を解除するとサイト全体の権限管理が複雑になり、後々のトラブル原因になります。理想的には、継承を維持したまま必要なアカウントを親サイトで権限付与するか、専用のグループを作成して権限を管理することをおすすめします。管理者と相談の上で実施してください。
Q3. 条件付きアクセスポリシーを自分でオフにできますか?
いいえ、条件付きアクセスポリシーはテナント全体のセキュリティ設定であり、一般ユーザーが変更することはできません。必ず管理者に依頼してください。また、ポリシーを無効にするとセキュリティリスクが生じる可能性があるため、影響範囲を考慮した上で対応する必要があります。
8. まとめ
Power Automateで祝日リストを参照する際の権限エラーは、権限継承の状態確認とポリシーの確認を順に行うことで原因を特定できます。まずはエラーメッセージの種類を把握し、リストへの直接アクセス可否で権限問題を切り分けてください。権限継承に問題がなければ、条件付きアクセスポリシーやアプリ同意ポリシーが原因である可能性が高いため、管理者に詳細なエラー情報を伝えて対処を依頼しましょう。適切な切り分けにより、無駄な設定変更を避け、迅速な解決につなげることができます。
超解決 第一編集部
疑問解決ポータル「超解決」の編集チーム。正確な検証と、現場視点での伝わりやすい解説を心がけています。
Office・仕事術の人気記事ランキング
- 【神技】保存せずに閉じたExcel・Wordファイルを復元する!消えたデータを復活させる4つの救出法
- 【Outlook】添付ファイルが「Winmail.dat」に化ける!受信側が困らない送信設定
- 【Excel】文字が入っているセルの「個数」を数える!COUNTA関数の簡単な使い方
- 【Word】差し込み印刷で数字の桁を整える!金額にカンマ(桁区切り)を入れる設定
- 【Teams】メッセージを「保存済み」にして後で読む!重要なチャットをブックマークして整理する技
- 【Outlook】予定表の「祝日」が表示されない!最新カレンダーの追加と二重表示の修正手順
- 【Copilot】「サービスに接続できません」エラーの原因切り分けと対処法
- 【PDF】PDFに入力した文字の「フォント・サイズ・色」を変更するプロパティ設定
- 【Word】校閲機能の基本!赤字(変更履歴)とコメントで修正を見える化する
- 【PDF】結合するPDFの「用紙サイズ」がバラバラな時、すべてを「A4サイズ」に強制リサイズしてから結合する
