Google Workspaceの公開リンクは、スイッチ一つでは死なない
Kimiのkimi-for-codingで執筆しました
情シス(=社内で何でも押し付けられる係)みたいな立ち位置で、ある会社のGoogle Workspaceを監査してた。 そしたら出るわ出るわ、「リンクを知っている全員」で共有されたファイル。 ログイン不要。URLさえ知ってれば、世界中の誰でも中身が開ける。 人事系のファイルまで、その状態。
対応方針はシンプル……に見えた。 「組織全体で「リンクを知っている全員」をオフにすればいいよね?」 管理者もそう言うし、自分もそう思ってた。
で、実際にやってみたら、罠が3つあった。 順番に殴られた話をします。
罠1: 「全部グループに集約しないと切れない」と青ざめたけど、その必要はなかった
まず現状把握。 この会社、現場で働くスタッフには会社が無料のGoogleアカウントを配ってた。 Workspaceから見ると、その無料アカウントは「外部ユーザー」扱いになる。 で、共有ドライブのファイルを片っ端から調べたら…… 約9,700ファイルのうち、99.9%が、その外部アカウントに個別共有されてた。
血の気が引いた。 「え、これ全部、公開リンクを切る前に整理しないといけないの? 9,700件を?」
ここで一回、頭を冷やす。 組織スイッチが殺すのは「anyone(=リンクを知っている全員)」だけ。 個別共有とグループ共有は、公開リンクを切っても生き残る。 つまり9,700件の個別共有は、スイッチと無関係にそのまま機能する。
自分は2つの別々の課題を、勝手に1つに混ぜて青ざめてた。
- 公開リンクを消す(=セキュリティの本題)
- 個別共有の山をグループに集約する(=ただの整理・完全に別件)
混ぜるな危険。 分けた瞬間、やることが一気に減った。
罠2: 「これ公開リンクじゃないと、あのAIツールが読めなくなるのでは?」
現場向けファイルのうち、公開リンクでしか外部に届いてないものは、先にグループ共有へ移す。 ここで担当者から鋭い質問が飛んできた。 「このスプレッドシート、ノート系のAIツールのデータ元なんですけど。公開リンク外したら、読み込めなくなりません?」
一瞬、詰まった。 たしかに、そのAIツールがどうやって元ファイルを読んでるか、即答できない。
ので、カナリア(=毒見役)を1羽だけ飛ばす。 そのファイル1件だけ公開リンクを外して、AIツール側で再同期してみた。 ……通った。 普通に読み込めた。
種明かし。 そのAIツールは、ソースを「登録した人のアカウント権限」で取り込んで、スナップショットを持つ仕組みだった。 公開リンクは要らない。登録者に閲覧権があれば十分。 「たぶん必要だろう」で公開のまま放置してたら、それこそ事故だった。
罠3: スイッチを切ったのに、スキャンの数字が1件も減らない
いよいよ本丸。 組織の共有設定で「リンクを知っている全員に公開できる」のチェックを外す。 外部との共有そのものはオンのまま残す(グループ共有は生かしたいので) 保存。よし、終わり
と思って、確認のために公開リンクの再スキャンをかけた。 35件。 ……減ってない。 えっ、効いてないの? 保存ミスった?
いや、違った。 組織スイッチは「機能」を殺すが、ファイルに刺さったanyone権限の「メタデータ」は残る。 だから権限を数えるスキャン(API)では、件数が1つも変わらない。 数字だけ見て「効いてない」と早合点するところだった。
正しい確かめ方は、権限の一覧じゃなかった。 ログアウトした状態で、その公開リンクに実際にアクセスしてみること。
認証なしで公開リンクを叩いてみた。 返ってきたのは、ファイルの中身じゃなくて、ログイン画面へのリダイレクト。 フォルダも、画像も、全部ログインに蹴られた。 公開アクセスは、ちゃんと死んでた。
APIの数字は嘘をつく(正確には、別のものを数えてる) 生き死には、ログアウトして自分の目で確かめる。
おまけ: 個別に消せない「残党」こそ、組織スイッチの出番
ちなみに、公開リンクを1件ずつ消していく作業では、どうしても消えないファイルが残った。 親フォルダから権限を継承してるやつ。 実行アカウントの権限が足りなくて弾かれるやつ。 「expansive access」とか言われて、組織管理者の権限じゃないと外せないやつ。
こういう、個別削除では落ちない残党。 これこそ、組織スイッチが機能ごと一掃してくれる領域だった。 手作業と組織設定は、どっちが上位互換でもない。 役割が違うだけ。
学び
「組織の設定で公開リンクを切る」は、画面上はチェックを1つ外すだけ。 でも中身は、3つを確かめる作業だった。
- 何が生き残るか(個別共有・グループ共有は死なない)
- 何が本当は壊れないか(AIツールは公開リンク不要)
- 本当に効いたか(APIの数字じゃなく、ログアウトして実アクセス)
「公開リンクを切る」の前に、「個別共有は生き残る」を知っておく。 「切れた」の確認は、権限一覧じゃなく、ログアウトした自分の実アクセスでやる。
チェック1つの裏に、殴られポイントが3つ。 皆様も、組織の共有設定をいじる前に、どうかお気をつけて。