当サイトの記事にはプロモーションが含まれています。

Googleドキュメントの共有リンクは期限切れになる?知らないと怖い仕様と設定手順を徹底解説

パソコンパソコン・スマホ教室
スポンサーリンク

「あのとき共有したGoogleドキュメント、まだ相手に見えてるんだっけ…?」ふとそう思ったことはありませんか。取引先に送った見積書、プロジェクトメンバーに渡した企画書、退職した元同僚と共有していた社内資料。共有した瞬間は必要だったファイルも、時間が経てば「見られたくない情報」に変わっていることがあります。

じつは、Googleドキュメントを含むGoogleドライブの共有リンクには、放っておくと永遠にアクセスできてしまうという仕様があります。つまり、あなたが意識して共有を解除しない限り、何年経っても相手はそのファイルを開けるのです。これは便利であると同時に、情報漏洩の火種にもなりかねません。

この記事では、Googleドキュメントの共有リンクが期限切れになる条件とならない条件、有効期限を設定して自動で共有を解除する具体的な手順、そして2025年11月の大型アップデートで変わった最新仕様までを、初心者にもわかるようにまるごと解説します。

ここがポイント!

  • Googleドキュメントの共有リンクは自動で期限切れにならず、手動で有効期限を設定する必要があること
  • 有効期限の設定にはGoogle Workspaceの有料プランが必要で、無料アカウントでは利用できないこと
  • 2025年11月のアップデートにより共有ドライブでもUIから直接有効期限を設定できるようになったこと
スポンサーリンク
  1. そもそもGoogleドキュメントの共有リンクは期限切れになるのか?
    1. 共有リンクを放置すると何が起きるのか
  2. 有効期限を設定するための条件と最新の対応状況
    1. 必須条件はGoogle Workspaceの有料プラン
    2. 2025年11月のアップデートで何が変わったのか
  3. 期限切れ後に何が起きるのか?見落としがちな「権限の巻き戻し」問題
  4. 有効期限を設定する具体的な手順
    1. 新規共有時に有効期限を付ける方法
    2. すでに共有済みの相手に後から有効期限を追加する方法
  5. 知っておくべき5つの制約事項
  6. 「リンクを知っている全員」への共有はどう管理すればいいのか
  7. Googleアカウントを持っていない相手への共有と有効期限
  8. 無料アカウントでも有効期限を実現する裏ワザ
  9. 編集者権限と有効期限の関係に要注意
  10. 企業で安全に運用するためのベストプラクティス
  11. 情シス歴10年超の現場視点で語る「共有管理」のリアルな落とし穴
    1. 管理コンソールのセキュリティ調査ツールを使い倒せ
  12. GASで実現する共有管理の自動化プログラム集
    1. 指定日に共有を自動解除するGAS
    2. 共有状況を一覧化してスプレッドシートに出力するGAS
    3. 特定ドメイン以外の外部共有を検出して通知するGAS
    4. スプレッドシートで「共有管理台帳」を作って一括制御するGAS
  13. 現場でよく起きるけど対処法がわからない問題と解決策
    1. 「アクセス権をリクエスト」が大量に来て業務にならない問題
    2. 退職者が「リンクを知っている全員」で共有していたファイルの処理
    3. 「編集権限を渡したら相手が有効期限を削除してしまった」問題
    4. 「ダウンロードされてしまったら有効期限の意味がないのでは?」への実務的な回答
  14. GASの実行制限とハマりやすいエラーへの対処法
    1. 実行時間6分制限に引っかかる場合
    2. 「承認が必要です」エラーの対処
    3. removeEditor / removeViewerが効かない場合
  15. 2025年9月のアクセス制御変更が共有管理に与えた影響
  16. ぶっちゃけこうした方がいい!
  17. Googleドキュメントの共有リンクと期限切れ仕様に関するよくある質問
    1. 共有リンクのURLは期限切れ後に無効になりますか?
    2. 有効期限が切れたことは相手に通知されますか?
    3. 有効期限を設定したファイルをダウンロードされたらどうなりますか?
    4. 無料のGoogleアカウントでも有効期限は設定できますか?
    5. 共有ドライブでも有効期限を設定できるようになったのはいつからですか?
  18. 今すぐパソコンやスマホの悩みを解決したい!どうしたらいい?
  19. まとめ

そもそもGoogleドキュメントの共有リンクは期限切れになるのか?

Googleドキュメントのイメージ

Googleドキュメントのイメージ

結論からお伝えすると、Googleドキュメントの共有リンクは、何も設定しなければ期限切れにはなりません。これはGoogleドライブ全体に共通する仕様で、Googleドキュメントだけでなくスプレッドシートやスライドも同じです。一度「リンクを知っている全員」に共有を設定したら、あなたが手動で解除するまで、そのURLは永遠に有効です。

ここで多くの人が混乱するポイントがあります。「共有リンク」と「メールアドレス指定の共有」は、まったく別の仕組みだということです。Googleドライブには大きく分けて2種類の共有方法が存在します。ひとつはメールアドレスを入力して特定の相手に共有する方法、もうひとつはリンクURLを発行して不特定多数にアクセスを許可する方法です。有効期限を設定できるのは前者の「メールアドレス指定の共有」だけであり、後者の「リンクを知っている全員」には期限という概念そのものが存在しません。

なぜリンク共有に期限を設定できないのかというと、有効期限はあくまで「特定の人物のアクセス権」に紐づく仕組みだからです。リンク共有は「誰でもアクセスできる」状態を作るものなので、特定の誰かに期限を付けるという発想自体が成り立たないわけです。

共有リンクを放置すると何が起きるのか

「別に見られても困らないし…」と思うかもしれませんが、時間の経過はファイルの取扱レベルを変えてしまうことがあります。たとえば協力会社と顧客情報を共有していたケースでは、契約終了後も共有が残っていたために新しい顧客情報まで筒抜けになっていた、という事故が現実に起きています。また、社内異動で経理から営業に変わった人が、いまだに全社員の給与明細にアクセスできていたという笑えない話もあります。

さらに厄介なのが、古い資料が共有されたままのケースです。価格改定や仕様変更で新しいパンフレットを作ったのに、古いバージョンがまだ社外に見える状態だと、過去の価格を引き合いに出されて交渉が難航することもあります。「共有は必要な時に、必要な相手にだけ行い、必要がなくなったら解除する」。この原則を守るためにも、有効期限の設定は非常に有効な手段です。

有効期限を設定するための条件と最新の対応状況

Googleドキュメントやスプレッドシートの共有に有効期限を付けるには、いくつかの前提条件を満たす必要があります。ここを理解していないと「設定メニューが出てこない」と困ることになるので、しっかり確認しておきましょう。

必須条件はGoogle Workspaceの有料プラン

有効期限の設定機能は、Google Workspaceの有料プラン専用です。無料の個人向けGoogleアカウントでは、この機能は利用できません。2026年3月現在も、Googleが無料アカウントにこの機能を開放する予定は発表されていません。対象となるのはBusiness Starter以上のプランで、Education系プランやNonprofit向けプランでも利用可能です。

2025年11月のアップデートで何が変わったのか

2025年11月にGoogleは共有の有効期限に関する大きなアップデートを実施しました。この変更を知っているかどうかで、運用の幅がまったく違ってきます。変更点は主に3つあります。

まず、共有ドライブのファイルにUIから直接有効期限を設定できるようになったこと。以前はGoogle Drive API経由でしか設定できず、一般ユーザーには事実上使えない機能でしたが、いまではWeb版とAndroidアプリの共有ダイアログから簡単に設定できます。

次に、共有ドライブ内のフォルダに対しても、閲覧者ロールに限り有効期限を設定できるようになったこと。編集者としてフォルダを共有する場合は依然として期限設定ができませんが、一時的な閲覧アクセスを管理するうえでは大きな進歩です。

そして3つ目が、マイドライブにおける期限切れ時の挙動が変更されたこと。これが実は最も重要な変更で、次のセクションで詳しく解説します。

期限切れ後に何が起きるのか?見落としがちな「権限の巻き戻し」問題

「有効期限を設定しておけば安心」と思いたいところですが、期限が切れた=完全にアクセスできなくなる、とは限りません。ここが最もトラブルになりやすいポイントです。

たとえば、親フォルダで「閲覧者」として共有しているユーザーに、特定のファイルだけ一時的に「編集者」権限を渡したとします。このファイルの編集者権限に有効期限を設定していた場合、期限切れ後にどうなるでしょうか。

2025年11月の仕様変更以降の新しい挙動では、そのユーザーの権限は親フォルダの「閲覧者」に戻ります。つまり、期限切れ後もファイル自体は見える状態が続くのです。これは以前の挙動(期限切れで完全にアクセスを失う)とは異なります。Googleはこの変更を「共有ドライブとマイドライブで挙動を統一し、予測しやすくするため」と説明していますが、完全にアクセスを遮断したかった場合には想定外の結果になりかねません。

逆に、親フォルダへの共有設定が一切ない状態で、ファイル単体に有効期限付きの共有を設定した場合は、期限切れでそのファイルへのアクセス自体が完全になくなります。つまり、有効期限の設定だけでなく、フォルダ構造と親子関係の共有設定を意識することが不可欠なのです。

有効期限を設定する具体的な手順

ここからは実際の設定手順を解説します。日頃からGoogleドライブで共有を行っている方なら、いつもの操作にほんの一手間加えるだけなので拍子抜けするほど簡単です。

新規共有時に有効期限を付ける方法

  1. Googleドライブまたはドキュメント上で共有したいファイルを開き、右上の「共有」ボタンをクリックします。
  2. 共有ダイアログが表示されたら、相手のメールアドレスを入力し、権限(閲覧者・コメント可・編集者)を選択します。
  3. 権限を選ぶドロップダウンメニューの中にある「有効期限を追加」をクリックします。
  4. カレンダーから希望の日付を選択し、「完了」をクリックします。
  5. 設定内容を確認し、「送信」をクリックすれば完了です。

この操作にかかる追加時間はわずか10秒程度です。後日「あの共有を解除しなきゃ」とスケジュールに入れるよりも、はるかに確実で手間がかかりません。

すでに共有済みの相手に後から有効期限を追加する方法

「もう共有してしまったけど、期限を付け忘れた」という場合も大丈夫です。ファイルの共有設定画面を開き、現在の共有相手一覧から該当ユーザーを見つけてください。ユーザー名の横にあるドロップダウン矢印をクリックすると「有効期限を追加」という項目が表示されます。ここから日付を指定して保存すれば、後付けでも問題なく有効期限を設定できます。

知っておくべき5つの制約事項

有効期限の機能はとても便利ですが、万能ではありません。運用を始める前に押さえておきたい制約事項を整理しておきましょう。

制約事項 詳細
無料アカウントでは使えない Google Workspaceの有料プラン(Business Starter以上)が必須。個人のGoogleアカウントには有効期限の設定メニュー自体が表示されません。
リンク共有には設定不可 「リンクを知っている全員」に対する共有には有効期限を付けられません。メールアドレスを指定した共有のみが対象です。
期限日は当日を指定できない 今すぐアクセスを止めたい場合は、有効期限ではなく共有解除(アクセス権の削除)を直接行う必要があります。
最長1年以内の日付のみ指定可能 現在日付から365日を超える期限は設定できません。長期プロジェクトでは定期的な再設定が必要です。
iOSアプリでは設定不可 有効期限の設定はWeb版とAndroidアプリのみ対応しています。iPhoneやiPadからはブラウザ版にアクセスして設定してください。

特に見落としがちなのが「iOSでは設定できない」という制約です。iPhoneしか手元にないときに急いで有効期限を設定しようとしても、アプリからは操作できません。Safariなどのブラウザでドライブのウェブ版にアクセスすれば対応可能ですが、事前に知っておかないと現場で慌てることになります。

「リンクを知っている全員」への共有はどう管理すればいいのか

有効期限を設定できないリンク共有は、手軽さの反面、セキュリティ面では最もリスクの高い共有方法です。URLがメールやチャットで転送されたり、ブックマークに残っていたりすると、まったく関係のない第三者がアクセスできてしまいます。

基本的な対策は、社外への共有は原則としてメールアドレス指定に限定し、リンク共有は禁止するか承認制にすることです。どうしてもリンク共有を使う必要がある場合は、「閲覧者とコメント権限者によるダウンロード・印刷・コピーを無効にする」設定を併用して、ファイルの二次利用を制限しましょう。

組織的に管理を徹底したい場合は、Google Workspaceの管理コンソールで共有ドライブごとの外部共有ポリシーを設定したり、サードパーティのセキュリティツールを導入して自動的に共有期限を制御する方法もあります。個人の注意力だけに頼る運用は、ヒューマンエラーを避けられません。

Googleアカウントを持っていない相手への共有と有効期限

意外と知られていませんが、Googleアカウントを持っていない相手にもファイルを共有する方法があります。「ビジター共有」という機能で、相手のメールアドレスにPINコード(確認コード)が送信され、そのコードを入力することで本人確認を行い、ファイルにアクセスする仕組みです。

ビジター共有における認証の有効期間は7日間です。7日が経過すると再認証が必要になるため、事実上のアクセス期限として機能します。ただし、相手がPINコードを入力すれば何度でもアクセスを更新できるため、「7日で完全にアクセスが断たれる」わけではありません。継続的にファイルをやり取りする相手には、Googleアカウントの作成をお願いするほうがスムーズです。

無料アカウントでも有効期限を実現する裏ワザ

Google Workspaceの有料プランに加入していない場合でも、工夫次第で擬似的な有効期限を実現することは可能です。

ひとつの方法は、Google Apps Scriptを活用することです。スクリプトで時限式のトリガーを設定し、指定した日時が来たら自動的に共有権限を削除するプログラムを組むことができます。プログラミングの知識が多少必要ですが、一度作ってしまえば繰り返し使えます。

もうひとつの現実的な方法は、Googleカレンダーにリマインダーを設定することです。共有を行ったタイミングで「○月○日に共有解除」というリマインダーを登録しておけば、少なくとも忘れ防止にはなります。自動化には及びませんが、何もしないよりはずっと安全です。

編集者権限と有効期限の関係に要注意

有効期限と権限レベルの関係は、アップデートのたびに仕様が変わってきた経緯があります。現在(2026年3月時点)の仕様では、閲覧者・コメント可・編集者のいずれの権限にも有効期限を設定できます

ただし、注意すべき点がひとつあります。編集者権限を持つユーザーは、自分自身のアクセス権の有効期限を変更できてしまう可能性があるということです。編集者にはファイルの共有設定を変更する権限が含まれる場合があるため、有効期限を設定しても相手が自分で延長してしまうリスクがゼロではありません。セキュリティを重視する場面では、編集者権限の付与自体を慎重に判断し、短い期限で運用するのが賢明です。

なお、共有ドライブ内のフォルダに関しては、有効期限を設定できるのは閲覧者ロールのみです。フォルダに対して編集者として共有する場合は有効期限を付けられないため、ファイル単位で管理するか、運用ルールでカバーする必要があります。

企業で安全に運用するためのベストプラクティス

有効期限の機能を知っていても、個人の判断で「付けたり付けなかったり」では効果が半減します。組織として統一的なルールを設けることが、セキュリティ事故を防ぐ最も確実な方法です。

まず、外部への共有は原則として「メールアドレス指定+有効期限設定」をセットにしましょう。リンク共有は禁止するか、管理者の承認を必須にするのが望ましいです。次に、共有設定を行う際はフォルダの親子関係を必ず確認してください。前述の通り、期限切れ後に権限が親フォルダの設定に「戻る」ケースがあるため、親フォルダ側に残っている権限を把握しておくことが大切です。

さらに、定期的な共有状況の棚卸しも効果的です。Google Workspaceの管理コンソールやセキュリティダッシュボードを使えば、外部共有されているファイルの一覧を確認できます。四半期に一度など、定期的にチェックする習慣をつけることで、放置された共有を発見・解除できます。

情シス歴10年超の現場視点で語る「共有管理」のリアルな落とし穴

Googleドキュメントのイメージ

Googleドキュメントのイメージ

ここからは、企業の情報システム部門で10年以上にわたりGoogle Workspaceの管理と運用に携わってきた経験をもとに、教科書には載っていない「現場で本当に起きること」をお伝えします。正直なところ、有効期限の設定方法を知っているだけでは、共有管理の問題の半分も解決しません。なぜなら、本当の問題は「設定方法がわからない」ことではなく「設定する文化が社内に根付かない」ことだからです。

たとえば、情シスとしてよくある相談が「共有ドライブの棚卸しをしたいんですけど、どこから手を付けたらいいかわかりません」というものです。ファイル数が数万を超えている組織では、ひとつひとつの共有状況を目視で確認するのは物理的に不可能です。かといって、全社員に「自分の共有を見直してください」とメールを送っても、返事が返ってくるのはせいぜい2割。残りの8割は「あとでやろう」で永遠に放置されます。

もうひとつ、現場でよく遭遇するのが「退職者のファイルが社外に共有されたまま残っている」問題です。退職手続きでアカウントを停止しても、そのアカウントがオーナーだったファイルのリンク共有設定はそのまま残ることがあります。つまり、退職者が過去に「リンクを知っている全員」で共有した資料は、アカウント削除後もURLが生きている限り外部からアクセス可能なのです。これは多くの管理者が見落としがちなポイントで、退職処理のチェックリストに「オーナー権限の移行」と「共有設定の棚卸し」を必ず組み込むべきです。

管理コンソールのセキュリティ調査ツールを使い倒せ

Google Workspaceの管理コンソールには「セキュリティ調査ツール」というあまり知られていない機能があります。Enterprise以上のプランで利用可能ですが、このツールを使うと「組織内で外部共有されているすべてのファイル」を一括で検索できます。フィルタ条件に「公開設定ウェブ上で公開」や「公開設定リンクを知っている全員」を指定すれば、リスクの高い共有状態のファイルだけを抽出できるのです。

情シス担当者は、最低でも月に1回はこの調査を実行し、不要な外部共有が残っていないかを確認することを強くおすすめします。調査結果はCSVでエクスポートできるため、スプレッドシートに取り込んで部署ごとの共有状況レポートを作成することも可能です。この「見える化」の習慣だけでも、セキュリティインシデントの発生率は体感で半分以下に減ります。

GASで実現する共有管理の自動化プログラム集

ここからは、Googleドキュメントやドライブの共有管理を自動化するための実用的なGoogle Apps Script(GAS)のコードを紹介します。どれもコピペで使えるように設計していますが、必ずテスト環境で動作確認をしてから本番に適用してください。GASはGoogleスプレッドシートのメニューから「拡張機能」→「Apps Script」を選択するだけで開発環境が開きます。特別なソフトのインストールは不要です。

指定日に共有を自動解除するGAS

最も需要が高いのがこのスクリプトです。ファイルIDと解除日を指定しておくと、時限トリガーで指定日時に自動的に全共有ユーザーのアクセス権を削除し、リンク共有も無効にします。無料のGoogleアカウントでも動作するため、有料プランの有効期限機能が使えない場合の代替手段として非常に有効です。


function setAutoExpire() {
  // ===== ここを編集してください =====
  var FILE_ID = 'ここにファイルIDを入力';
  var EXPIRE_DATE = '2026-04-30 18:00'; // 解除日時(YYYY-MM-DD HH:mm)
  // ===================================
  
  var expireAt = new Date(
    EXPIRE_DATE.substr(0,4),
    EXPIRE_DATE.substr(5,2) - 1,
    EXPIRE_DATE.substr(8,2),
    EXPIRE_DATE.substr(11,2),
    EXPIRE_DATE.substr(14,2)
  );
  
  // 既存トリガーをクリア
  ScriptApp.getProjectTriggers().forEach(function(trigger) {
    ScriptApp.deleteTrigger(trigger);
  });
  
  // 時限トリガーを設定
  ScriptApp.newTrigger('revokeAccess')
    .timeBased()
    .at(expireAt)
    .create();
  
  Logger.log('共有解除を ' + expireAt + ' に予約しました');
}

function revokeAccess() {
  var FILE_ID = 'ここにファイルIDを入力';
  var file = DriveApp.getFileById(FILE_ID);
  
  // リンク共有を無効化
  file.setSharing(DriveApp.Access.ANYONE, DriveApp.Permission.NONE);
  file.setSharing(DriveApp.Access.ANYONE_WITH_LINK, DriveApp.Permission.NONE);
  
  // 編集者を全員削除
  file.getEditors().forEach(function(user) {
    if (user.getEmail() !== '') {
      file.removeEditor(user.getEmail());
    }
  });
  
  // 閲覧者を全員削除
  file.getViewers().forEach(function(user) {
    if (user.getEmail() !== '') {
      file.removeViewer(user.getEmail());
    }
  });
  
  Logger.log(file.getName() + ' の共有を全て解除しました');
}

使い方は簡単で、

FILE_ID

にはGoogleドキュメントやスプレッドシートのURLの

/d/

/edit

の間にある文字列を、

EXPIRE_DATE

には解除したい日時を入力するだけです。

setAutoExpire

関数を一度実行すれば、あとは指定日時に自動で

revokeAccess

が動きます。

共有状況を一覧化してスプレッドシートに出力するGAS

「いま自分のドライブで外部に共有しているファイルがどれくらいあるのか把握したい」という場面はとても多いです。次のスクリプトは、マイドライブ内のすべてのファイルを走査して、共有相手の情報をスプレッドシートに一覧出力します。棚卸しの第一歩として非常に役立ちます。


function listSharedFiles() {
  var sheet = SpreadsheetApp.getActiveSpreadsheet().getActiveSheet();
  sheet.clear();
  sheet.appendRow);
  
  var files = DriveApp.getFiles();
  while (files.hasNext()) {
    var file = files.next();
    var editors = file.getEditors();
    var viewers = file.getViewers();
    
    editors.forEach(function(user) {
      sheet.appendRow[
        file.getName(),
        file.getId(),
        user.getEmail(),
        '編集者',
        file.getUrl()
      ]);
    });
    
    viewers.forEach(function(user) {
      sheet.appendRow[
        file.getName(),
        file.getId(),
        user.getEmail(),
        '閲覧者',
        file.getUrl()
      ]);
    });
  }
  
  Logger.log('共有ファイル一覧の出力が完了しました');
}

このスクリプトの注意点として、マイドライブのファイル数が多い場合はGASの実行時間制限(6分)に引っかかる可能性があります。ファイル数が数千以上ある場合は、特定のフォルダに絞って走査するか、

ContinuationToken

を使って複数回に分けて実行する工夫が必要です。

特定ドメイン以外の外部共有を検出して通知するGAS

社内のファイルが自社ドメイン以外のメールアドレスに共有されていないか自動チェックし、発見した場合にメールで管理者に通知するスクリプトです。情シス担当者が日次や週次で実行するトリガーを設定しておけば、意図しない外部共有を早期に発見できます。


function checkExternalSharing() {
  var MY_DOMAIN = 'example.com'; // 自社ドメインに変更してください
  var ADMIN_EMAIL = 'admin@example.com'; // 通知先メールアドレス
  var FOLDER_ID = 'ここにフォルダIDを入力'; // 監視対象フォルダ
  
  var folder = DriveApp.getFolderById(FOLDER_ID);
  var files = folder.getFiles();
  var alerts = ;
  
  while (files.hasNext()) {
    var file = files.next();
    var allUsers = file.getEditors().concat(file.getViewers());
    
    allUsers.forEach(function(user) {
      var email = user.getEmail();
      if (email && email.indexOf('@' + MY_DOMAIN) === -1) {
        alerts.push({
          fileName: file.getName(),
          externalUser: email,
          url: file.getUrl()
        });
      }
    });
  }
  
  if (alerts.length > 0) {
    var body = '以下のファイルが外部ユーザーに共有されています\n\n';
    alerts.forEach(function(a) {
      body += '■ ' + a.fileName + '\n';
      body += '  共有先: ' + a.externalUser + '\n';
      body += '  URL: ' + a.url + '\n\n';
    });
    
    GmailApp.sendEmail(ADMIN_EMAIL, '【要確認】外部共有検出レポート', body);
    Logger.log(alerts.length + '件の外部共有を検出し通知しました');
  } else {
    Logger.log('外部共有は検出されませんでした');
  }
}

このスクリプトは、毎日早朝に自動実行されるよう時間ベースのトリガーを設定しておくのがおすすめです。Apps Scriptのエディタ画面の左メニューにある時計アイコン(トリガー)から、「時間主導型」→「日タイマー」→「午前6時〜7時」のように設定すれば、毎朝自動で監視が走ります。

スプレッドシートで「共有管理台帳」を作って一括制御するGAS

複数のファイルの共有設定を一元管理したい場合、スプレッドシートに「共有管理台帳」を作り、そこからGASで一括操作するのが最も実用的です。スプレッドシートのA列にファイルID、B列に共有先メール、C列に権限(view / edit)、D列に解除予定日を入力しておき、以下のスクリプトで一括処理します。


function processShareLedger() {
  var sheet = SpreadsheetApp.getActiveSpreadsheet().getSheetByName('共有管理');
  var data = sheet.getDataRange().getValues();
  var today = new Date();
  today.setHours(0, 0, 0, 0);
  
  for (var i = 1; i < data.length; i++) {
    var fileId = data;
    var email = data;
    var permission = data;
    var expireDate = new Date(data);
    var status = data;
    
    if (status === '解除済') continue;
    
    expireDate.setHours(0, 0, 0, 0);
    
    if (today >= expireDate) {
      try {
        var file = DriveApp.getFileById(fileId);
        file.removeEditor(email);
        file.removeViewer(email);
        sheet.getRange(i + 1, 5).setValue('解除済');
        sheet.getRange(i + 1, 6).setValue(new Date());
        Logger.log(file.getName() + ' から ' + email + ' の共有を解除');
      } catch (e) {
        sheet.getRange(i + 1, 5).setValue('エラー: ' + e.message);
      }
    }
  }
}

「共有管理」という名前のシートを作成し、1行目にヘッダー(ファイルID / メールアドレス / 権限 / 解除予定日 / ステータス / 解除実行日)を入れてください。2行目以降にデータを記入し、毎日トリガーで

processShareLedger

を実行すれば、解除予定日を過ぎたものから自動的に共有が解除され、E列に「解除済」、F列に実行日が記録されます。これだけで、手作業ゼロの共有管理台帳が完成します。

現場でよく起きるけど対処法がわからない問題と解決策

ここでは、Google Workspaceを運用する中で実際によく発生するけれど、ヘルプページを読んでもいまいちピンとこない問題と、その具体的な解決方法を紹介します。どれも筆者が現場で何度も遭遇し、試行錯誤の末にたどり着いた対処法です。

「アクセス権をリクエスト」が大量に来て業務にならない問題

有効期限の設定を始めると、ほぼ確実に遭遇するのがこの問題です。期限が切れたファイルにアクセスしようとした相手が「アクセス権をリクエスト」ボタンを押すたびに、オーナーにメール通知が飛んできます。プロジェクト終了後に期限切れになったファイルが10個あって、相手が全部アクセスしようとすると、一度に10通のリクエストメールが届くわけです。

対処法は2つあります。ひとつは、期限切れの前に相手に通知メールを送ること。「○月○日でアクセスが終了します。必要なデータは事前にダウンロードしてください」と一報入れるだけで、リクエストの嵐を9割は防げます。もうひとつは、Gmailのフィルタ機能を使って「アクセスのリクエスト」を含むメールに自動でラベルを付け、受信トレイをバイパスさせる方法です。緊急性の高いリクエストだけ対応し、それ以外はまとめて週1回確認するフローにすると精神的にもかなり楽になります。

退職者が「リンクを知っている全員」で共有していたファイルの処理

退職者のアカウントを停止した後に、そのユーザーがオーナーだったファイルのリンク共有が残り続ける問題は、情シスにとって最も厄介な案件のひとつです。管理コンソールで「データの移行(オーナー権限の移行)」を実施しても、リンク共有の設定は元のまま引き継がれます。

具体的な対処手順はこうです。まず、管理コンソールから退職者のファイルのオーナー権限を後任者または管理者に移行します。次に、移行先のアカウントでGoogleドライブにログインし、移行されたファイルをフォルダごと確認します。リンク共有が「リンクを知っている全員」になっているファイルを特定したら、「制限付き」(追加されたユーザーのみ)に変更するか、不要であれば共有自体を解除します。ファイル数が多い場合は、前述のGASスクリプト(共有状況一覧化)を応用して一括で検出するのが効率的です。

「編集権限を渡したら相手が有効期限を削除してしまった」問題

有効期限を設定して編集者権限で共有したところ、相手が自分で有効期限を解除してしまった、というケースは実際に起こり得ます。これは仕様上の問題で、編集者はファイルの共有設定を変更する権限を持っている場合があるため、自分に設定された有効期限を自分で削除できてしまうのです。

この問題を根本的に防ぐには、ファイルの「共有設定の詳細」で「編集者による権限の変更や共有を禁止する」オプションをオンにする必要があります。具体的にはファイルの共有ダイアログで歯車アイコンをクリックし、「編集者によるアクセス権の変更や新しいユーザーの追加を禁止する」にチェックを入れます。この設定により、編集者はファイルの内容を編集できますが、共有設定(有効期限を含む)を変更することはできなくなります。

ただし、2025年9月のGoogle Workspaceアップデート以降、この「編集者による共有変更禁止」の設定はフォルダレベルの制限付きアクセスと連動する仕様に変わっています。フォルダ単位でのアクセス管理と組み合わせて運用する必要がある点は覚えておいてください。

「ダウンロードされてしまったら有効期限の意味がないのでは?」への実務的な回答

これは共有管理の話をするとほぼ必ず出る質問です。結論から言うと、有効期限とダウンロード制限は別の仕組みであり、セットで設定しなければ片手落ちです。有効期限はGoogleドライブ上のアクセス権のみを制御するものであり、期限切れ前にダウンロードされたファイルのコピーには一切影響しません。

実務的な対策としては、共有時に「閲覧者とコメント権限者のダウンロード、印刷、コピーを無効にする」オプションを常にオンにするルールを社内で徹底してください。この設定はファイルの共有ダイアログの歯車アイコンから設定できます。ただし注意点として、この制限は編集者権限には適用されません。編集者はどうやっても内容をコピー・ダウンロードできます。そのため、外部ユーザーには原則として閲覧者権限のみを渡し、どうしても編集が必要な場合は期間を最短にする、というルールが現実的です。

完全にコピーを防ぐ方法は、残念ながらGoogleドライブ単体では存在しません。スクリーンショットを撮られたらそれまでです。本当に機密性の高い情報は、ドライブで共有するのではなく、対面やビデオ会議で画面共有して見せるだけにとどめる、という判断も情シスとしては選択肢に持っておくべきです。

GASの実行制限とハマりやすいエラーへの対処法

GASを使った自動化は非常に強力ですが、知っておかないとハマる落とし穴がいくつかあります。現場で何度もデバッグした経験から、代表的な問題と対処法をまとめます。

実行時間6分制限に引っかかる場合

GASの1回の実行は最長6分(Google Workspaceアカウントの場合)です。ドライブ内のファイル数が多いと、共有状況の走査だけで制限時間を超えてしまいます。この場合は

ContinuationToken

を使って処理を分割します。具体的には、

DriveApp.continueFileIterator(continuationToken)

で前回の続きから処理を再開できるようにし、ScriptProperties に中断地点を保存して、5分経過したら次回のトリガーに引き継ぐという方式です。

「承認が必要です」エラーの対処

GASを初めて実行する際に「このアプリはGoogleで確認されていません」という警告が出ることがあります。自分で書いたスクリプトなら「詳細」→「(安全でないページに移動)」をクリックして承認すれば動きますが、組織のセキュリティポリシーで外部アプリの実行が制限されている場合は管理コンソールでApps Scriptの実行許可を確認する必要があります。

removeEditor / removeViewerが効かない場合

GASの

removeEditor()

removeViewer()

は、メールアドレスを指定して個別に追加されたユーザーにのみ有効です。「リンクを知っている全員」で共有されている場合、これらのメソッドでは解除できません。リンク共有を解除するには

file.setSharing(DriveApp.Access.ANYONE_WITH_LINK, DriveApp.Permission.NONE)

を使ってください。この違いを理解していないと「スクリプトを実行したのに共有が解除されない」と延々と悩むことになります。

2025年9月のアクセス制御変更が共有管理に与えた影響

有効期限の話題からは少し外れますが、2025年9月にGoogleが実施した「ドライブのアクセス制御変更」は共有管理に大きな影響を与えているので、ここで触れておきます。

従来は、共有フォルダ内の特定のファイルだけ別の人にアクセスを「制限」することができました。たとえば、フォルダは部署全員に共有しているけれど、その中の人事評価シートだけは管理職にしか見せたくない、という設定です。しかし2025年9月以降、ファイル単位でのアクセス制限は廃止され、フォルダ単位の「制限付きアクセス」設定に一本化されました。

これが共有管理にどう影響するかというと、有効期限の設計にも「フォルダ単位」の考え方が求められるようになったということです。たとえば、外部パートナーに一時的にアクセスを渡す場合、専用のフォルダを作ってそのフォルダに有効期限付きの共有を設定し、そこに必要なファイルを入れる、という運用が推奨されます。ファイルを既存のフォルダに入れたまま有効期限だけ設定すると、前述の「親フォルダの権限に巻き戻る」問題に直面する可能性があるからです。

ぶっちゃけこうした方がいい!

ここまで有効期限の仕様やGASによる自動化、現場で起きるトラブルの対処法を詳しく解説してきましたが、個人的な見解として「ぶっちゃけこうした方がいい」という結論をお伝えします。

まず、有効期限の設定を個人の善意に任せるのは、仕組みとして破綻します。どんなに優秀な社員でも、100件の共有すべてに有効期限を付け忘れなく設定するのは不可能です。だから、GASで強制的に全社ルールとして「共有から90日後に自動解除」のような仕組みを入れてしまうのが最も確実です。先に紹介した「共有管理台帳」のスクリプトをベースにして、共有の申請→承認→自動登録→自動解除の一連のフローをスプレッドシートで完結させるのが、コストパフォーマンスとしては一番高い。

次に、「リンクを知っている全員」への共有は、どんな理由があっても社外向けには使わない方がいいです。社内の一時的な情報共有ならまだしも、社外にリンクを渡すのは「鍵をかけずに家のドアを開けっ放しにしている」のと同じです。たとえ面倒でも、メールアドレスを指定して共有し、有効期限を付ける。この10秒の手間を惜しんだ結果、情報漏洩が起きたときの対応コストは何百時間にもなります。

そして、正直なところ一番大事なのは「共有したら終わり」ではなく「共有した瞬間に解除の予定を入れる」という意識の切り替えです。共有の設定画面を閉じる前に、必ず有効期限を設定する。有効期限の機能が使えない環境なら、その場でGoogleカレンダーに「○月○日このファイルの共有を解除する」とリマインダーを入れる。たったこれだけのことが、3ヶ月後、半年後、1年後のあなたを確実に救います。

共有管理は地味で面倒な作業です。誰も褒めてくれません。でも、事故が起きなかったということは、誰かが地道に管理していたということです。ツールと自動化をフル活用して、できるだけ手間をかけずに、でも確実に守る。それが情シス10年やってきた人間としての、嘘偽りない本音です。

Googleドキュメントの共有リンクと期限切れ仕様に関するよくある質問

共有リンクのURLは期限切れ後に無効になりますか?

「リンクを知っている全員」に設定した共有リンクのURL自体には有効期限がありません。リンク共有を解除しない限り、URLは永続的に有効です。一方、メールアドレスを指定して有効期限を設定した場合は、期限切れ後にその特定のユーザーだけがアクセスできなくなります。URLが無効になるのではなく、そのユーザーの権限が失効するという点を正確に理解しておきましょう。

有効期限が切れたことは相手に通知されますか?

有効期限が切れてアクセス権が失効しても、相手に自動的な通知メールが送られるわけではありません。相手がファイルを開こうとしたときに「アクセス権をリクエスト」する画面が表示されて、初めて期限切れに気づくという形になります。業務上重要な共有先に対しては、事前に「○日まで閲覧可能です」と伝えておくと親切です。

有効期限を設定したファイルをダウンロードされたらどうなりますか?

有効期限はあくまでGoogleドライブ上のアクセス権を制御するものです。期限切れ前にダウンロードされたファイルは、相手のローカル環境に残り続けます。これは有効期限では防げません。ダウンロード自体を防ぎたい場合は、共有設定で「閲覧者とコメント権限者によるダウンロード・印刷・コピーを無効にする」オプションを有効にしてください。ただし、この設定は編集者権限には適用されない点に注意が必要です。

無料のGoogleアカウントでも有効期限は設定できますか?

いいえ、できません。有効期限の設定はGoogle Workspaceの有料プラン専用機能です。無料アカウントの場合は、手動での共有解除やGoogle Apps Scriptによる自動化、カレンダーリマインダーの活用など、代替手段で対応する必要があります。

共有ドライブでも有効期限を設定できるようになったのはいつからですか?

UIから直接設定できるようになったのは2025年11月のアップデートからです。それ以前は、2023年5月にGoogle Drive API経由での設定が可能になっていましたが、APIを使える開発者でなければ実質的に利用できませんでした。現在はWeb版とAndroidアプリの共有ダイアログから、マイドライブと同じ感覚で有効期限を設定できます。

今すぐパソコンやスマホの悩みを解決したい!どうしたらいい?

LINE公式

いま、あなたを悩ませているITの問題を解決します!
「エラーメッセージ、フリーズ、接続不良…もうイライラしない!」

あなたはこんな経験はありませんか?

✅ ExcelやWordの使い方がわからない💦
✅ 仕事の締め切り直前にパソコンがフリーズ💦
✅ 家族との大切な写真が突然見られなくなった💦
✅ オンライン会議に参加できずに焦った💦
✅ スマホの重くて重要な連絡ができなかった💦

平均的な人は、こうしたパソコンやスマホ関連の問題で年間73時間(約9日分の働く時間!)を無駄にしています。あなたの大切な時間が今この悩んでいる瞬間も失われています。

LINEでメッセージを送れば即時解決!

すでに多くの方が私の公式LINEからお悩みを解決しています。

最新のAIを使った自動応答機能を活用していますので、24時間いつでも即返信いたします。

誰でも無料で使えますので、安心して使えます。

問題は先のばしにするほど深刻化します。

小さなエラーがデータ消失重大なシステム障害につながることも。解決できずに大切な機会を逃すリスクは、あなたが思う以上に高いのです。

あなたが今困っていて、すぐにでも解決したいのであれば下のボタンをクリックして、LINEからあなたのお困りごとを送って下さい。

相談しに行く

ぜひ、あなたの悩みを私に解決させてください。

まとめ

Googleドキュメントの共有リンクは、何も設定しなければ期限切れにならず永遠に有効であるという仕様を、まず頭に入れておいてください。有効期限を自動で失効させたい場合は、メールアドレスを指定した共有に切り替え、共有ダイアログから有効期限を追加する必要があります。「リンクを知っている全員」への共有には期限を付けられないため、セキュリティを重視するなら個別のメールアドレス指定に徹するのが基本です。

2025年11月のアップデートにより、共有ドライブでもUIから有効期限を設定できるようになり、利便性は大きく向上しました。一方で、期限切れ後に親フォルダの権限に「巻き戻る」新しい挙動には十分な注意が必要です。期限を設定しただけで安心せず、フォルダ構造と権限の親子関係を含めた全体設計を意識してください。

共有のセキュリティは、一人ひとりの「10秒の手間」の積み重ねで守られるものです。この記事で紹介した知識と手順を、ぜひ今日から実践してみてください。

この記事を書いた人
この記事を書いた人

企業の情報システム部門で10年以上、PC・アカウント・社内ネットワーク・Microsoft 365/Google Workspace運用を担当。年間数百件の問い合わせ対応(PC不調、メール送受信、Excel/Word資料、Teams会議、スマホ連携など)を通じて、初心者がつまずくポイントを「再現→原因切り分け→最短解決」の手順に落とし込んできました

現場や身近で実際に起きたトラブルをベースに、手順だけでなく「なぜそうなるか」「失敗しやすい落とし穴」「安全な設定(セキュリティ)」まで含めて解説します。

相談窓口(問い合わせ/LINE等)を設け、記事で解決しないケースも個別にサポートしていますので「パソコンが急に動かなくなった」「スマホの設定がわからない」などの悩みは一人で抱え込まず、お気軽にご相談ください。

【お問い合わせは下記URLから】
https://m32006400n.xsrv.jp/inquiry-form/

【公式LINEは下記URLから】
https://lin.ee/t8TDjcj

uri uriをフォローする
スポンサーリンク
よかったらシェアしてね! /
uri uriをフォローする

コメント

タイトルとURLをコピーしました