ADVERTISEMENT

【Google Drive】AppSheetからDriveフォルダにアクセスできない時の確認ポイント

【Google Drive】AppSheetからDriveフォルダにアクセスできない時の確認ポイント
🛡️ 超解決

AppSheetでノーコードアプリケーションを開発する際、データソースとしてGoogle Driveのフォルダを指定することはよくあります。しかし、「アクセス権限がありません」や「フォルダが見つかりません」といったエラーに直面して作業が止まってしまうケースも少なくありません。この記事では、会社のGoogle Workspace環境においてAppSheetからDriveフォルダにアクセスできない原因を、段階的に切り分けて特定するための確認ポイントを解説します。エラーメッセージの読み解き方から、管理者に依頼すべき設定までを網羅しているので、トラブルシューティングの際にお役立てください。

【要点】この記事で確認すること

  • 最初に見る場所: AppSheetのデータ設定画面とGoogle Driveの共有設定画面です。エラーメッセージの内容も重要な手がかりになります。
  • 切り分けの軸: 権限エラー、認証エラー、フォルダ指定ミスの3つに分けて確認すると効率的です。エラーの種類によって対処が異なります。
  • 注意点: 会社のGoogle Workspaceでは管理者による制限がかかっていることがあります。特に外部共有ポリシーやAPIアクセス制限は自分で変更できないため、管理者への確認が必要です。

ADVERTISEMENT

1. AppSheetからGoogle Driveフォルダにアクセスできない原因を整理する

まず、考えられる原因を大きく3つに分類します。権限の問題、認証の問題、フォルダ指定の問題です。それぞれに対して典型的なエラーメッセージを次にまとめます。

エラーメッセージ例 主な原因 対処の方向性
“No permission to access this folder” フォルダの共有設定が不足している、またはAppSheetのサービスアカウントに権限がない フォルダを共有するか、サービスアカウントに権限を付与
“Invalid Credentials” OAuth認証トークンの期限切れ、またはログインアカウントの不一致 AppSheetのアカウント設定で再認証
“Folder not found” 指定したフォルダIDまたはURLが間違っている、フォルダが削除された 正しいフォルダパスを確認して再設定
“AppSheet cannot access Google Drive API” Google Cloud ConsoleでDrive APIが無効、またはAPIアクセスが制限されている 管理者にAPI有効化を依頼

上記の表を参考に、自分の環境でどのエラーが表示されているかを確認してください。次項から具体的な確認手順を説明します。

2. まずはAppSheet側のデータソース設定を確認する

データソースの形式を再チェック

AppSheetでは、データソースとしてGoogle Driveのフォルダ全体を指定する場合と、特定のスプレッドシートやファイルを指定する場合があります。フォルダ全体をデータソースにするには、フォルダのURLではなく「Folder ID」を使用する必要があります。よくある間違いとして、フォルダのWebページのURLをそのまま貼り付けてしまうことがあります。正しいFolder IDは、フォルダを開いたときのURL末尾の英数字列です。

認証設定の確認手順

  1. AppSheetのエディタで該当アプリを開き、「Data」タブをクリックします。
  2. 問題のデータソースを選択し、「Source」欄に表示されているパスが正しいフォルダIDを指しているか確認します。
  3. 「Authentication」で使用しているGoogleアカウントを確認します。会社のアカウントでログインしているかどうかが重要です。
  4. 「Reconnect」または「Refresh」ボタンをクリックして、認証トークンを更新します。
  5. データプレビューが正常に表示されるか確認します。エラーメッセージが表示される場合は、その内容をメモしておきます。

この手順でエラーが解決しない場合は、次のステップに進みましょう。

3. Google Drive側の権限と共有設定を確認する

個人アカウントとサービスアカウントの違い

AppSheetがデータにアクセスする際、実際にGoogle Driveにアクセスするアカウントは「AppSheetサービスアカウント」です。このアカウントは通常 appsheet@system.gserviceaccount.com というメールアドレスで識別されます。ただし、ユーザーがAppSheetにログインしているアカウントとは別物です。フォルダの共有設定では、このサービスアカウントに対して権限を付与する必要があります。

また、Google Workspaceの共有ドライブ(旧Team Drive)では、メンバーに「編集者」以上の権限がないとAppSheetからのアクセスが許可されない場合があります。マイドライブのフォルダであれば、サービスアカウントに直接権限を追加するか、フォルダを「リンクを知っている全員」に公開することでアクセスできるようになりますが、会社のポリシーによっては外部共有が制限されているため注意が必要です。

権限付与の具体的な手順

  1. Google Driveで該当フォルダを開き、右クリックして「共有」を選択します。
  2. 「ユーザーまたはグループを追加」にサービスアカウントのメールアドレス(appsheet@system.gserviceaccount.com)を入力します。
  3. 権限レベルを「編集者」に設定し、「送信」をクリックします。
  4. または、「リンクを知っている全員」に設定することで、認証された全ユーザーにアクセスを許可することも可能ですが、セキュリティポリシーによっては推奨されません。
  5. 設定後、再度AppSheetでデータソースをテストし、アクセスできるか確認します。

サービスアカウントの権限付与は、フォルダのオーナーか管理者しか行えないため、必要な場合は該当者に依頼してください。

4. 認証とアカウントの問題を確認する

AppSheet内のアカウント管理

AppSheetでは、各データソースごとに使用する認証アカウントを設定できます。異なるアプリやデータソースで別々のGoogleアカウントを使用していると、認証が混ざってエラーになることがあります。特に、個人用アカウントと会社用アカウントを両方使っている場合、意図しないアカウントでアクセスしようとしている可能性があります。AppSheetの「Account」画面で現在ログインしているアカウントを確認し、必要に応じてログアウト・再ログインを行ってください。

OAuthトークンの更新

OAuth認証トークンは一定期間で期限切れになります。AppSheetは自動的に更新を試みますが、何らかの理由で更新に失敗すると「Invalid Credentials」などのエラーが発生します。その場合は、データソースの設定画面で「Reconnect」ボタンをクリックして明示的に再認証してみてください。これで解決するケースは少なくありません。

また、会社のGoogle Workspaceで2段階認証が有効になっている場合、アプリパスワードの生成が必要になることがあります。この点も念のため管理者に確認しておきましょう。

5. フォルダのパスや命名規則によるトラブルを確認する

フォルダ名の文字制限

Google Driveのフォルダ名自体は多くの文字をサポートしていますが、AppSheet内部での処理に問題が生じるケースがあります。特に、フォルダ名に全角文字や特殊記号(例:#, &, %, スペース)が含まれていると、URLエンコードの関係でアクセスできないことがあります。可能であれば、フォルダ名を英数字とアンダースコアのみに変更してみてください。

フォルダ階層の深さとパス長

AppSheetはフォルダを再帰的にスキャンしますが、あまりに深い階層(例えば10階層以上)や長いフルパスは処理に失敗する原因となります。データソースとして参照するフォルダは、なるべく浅い階層に配置し、パス全体の文字数も200文字以内に収めることを推奨します。必要に応じて、フォルダ構成を見直してみてください。

削除されたフォルダや移動されたファイル

ある日突然アクセスできなくなった場合は、フォルダ自体が削除されたか、別の場所に移動された可能性があります。Google Driveのゴミ箱を確認するか、フォルダのオーナーに問い合わせて所在を確認してください。

6. 会社のセキュリティポリシーによる制限を確認する

Google Workspace管理者による制限

会社のGoogle Workspace環境では、管理者がさまざまな制限をかけていることがあります。たとえば、外部共有を禁止するポリシーが設定されていると、サービスアカウントへの権限付与がブロックされます。また、AppSheetで使用するGoogle Drive APIそのものが許可されていない可能性もあります。これらの制限はユーザー側で変更できないため、管理者に連絡して以下の点を確認・依頼する必要があります。

管理者に伝えるべき情報

  • エラーメッセージのスクリーンショット(特にエラーコードや詳細情報)
  • 使用しているAppSheetのアカウント情報(メールアドレス)
  • アクセス対象のGoogle DriveフォルダのID
  • AppSheet側で設定している認証アカウント
  • 以下のGoogle Workspace設定の確認依頼:外部共有の許可、Drive APIの有効化、許可リストへの登録の有無

管理者はGoogle Adminコンソールから「アプリ」→「Google Workspace」→「ドライブとドキュメント」→「共有設定」で外部共有ポリシーを確認できます。また、「API 制御」から「信頼できるアプリ」としてAppSheetを追加することで問題が解決する場合もあります。

7. それでも解決しない場合の切り分けとよくある質問

よくある質問(FAQ)

  1. Q: エラーメッセージに「Access Denied」と表示されます。何が原因ですか?
    A: 最も多い原因は、AppSheetのサービスアカウントにフォルダの権限が付与されていないことです。フォルダの共有設定でサービスアカウント(appsheet@system.gserviceaccount.com)を編集者として追加してください。会社のポリシーで外部共有が制限されている場合は管理者に相談が必要です。
  2. Q: 共有ドライブのフォルダにアクセスできません。
    A: 共有ドライブでは、サービスアカウントに対して「編集者」以上の権限が必要です。また、共有ドライブ自体が外部ユーザーに対して閉じている場合、アクセスが拒否されます。管理者に共有ドライブのアクセス設定を確認してもらい、必要であればサービスアカウントをメンバーとして追加してもらってください。
  3. Q: AppSheetのデータプレビューは表示されるのに、実運用でエラーが出ます。
    A: データプレビューはキャッシュされたデータを表示している可能性があります。実際にアプリを実行した際に認証が通らないことがあります。AppSheetのアプリ設定で「認証の強制」がオンになっているか確認し、必要に応じてオフにしてみてください。また、アプリの共有設定で「テストユーザー」と「全員」の違いにも注意してください。

それでも解決しない場合の次の一手

上記のすべてを試しても問題が解決しない場合は、AppSheetのコミュニティフォーラムやGoogle Workspaceのサポートに問い合わせることを検討してください。その際、本記事で確認した内容を整理して伝えるとスムーズです。具体的には、以下の情報を用意しておきましょう。

  • エラーの全文(スクリーンショット)
  • 使用しているAppSheetのアカウント名
  • アクセス対象のフォルダパスとID
  • Google Workspace管理者による制限の有無(確認済みの範囲)
  • 試した対処法のリスト

まとめ

AppSheetからGoogle Driveフォルダにアクセスできない問題は、権限、認証、フォルダ指定、そして管理者設定の4つの観点から切り分けることで、ほとんどの原因を特定できます。まずはAppSheetのデータソース設定を再確認し、次にサービスアカウントへの権限付与を検討してください。それでも解決しない場合は会社のGoogle Workspaceポリシーを疑い、管理者と連携して設定を見直すことが重要です。本記事のチェックポイントを順に実行すれば、トラブルシューティングが効率的に進められるはずです。


ADVERTISEMENT

この記事の監修者
✍️

超解決 第一編集部

疑問解決ポータル「超解決」の編集チーム。正確な検証と、現場視点での伝わりやすい解説を心がけています。

ADVERTISEMENT