概要

数日前より、既にアクセス承認してるはずにも関わらず、とある作成済みのスプレッドシートのスクリプトの実行や、ウェブアプリケーションとして公開してるページにアクセスすると、「承認要求」されるようになりました。おかしな挙動だなと思いつつも、もう一度承認をしてとりあえず、動かせてはいます。

【追記】どうやら、既存のウェブアプリケーションを公開後に、コードを修正⇒プロジェクトバージョンを新規作成⇒アプリケーションにアクセスできるユーザを全てにして、そのまま更新をすると、なぜか自分だけしかアクセスが出来なくなるようです。これまではこれで問題がありませんでした。

また、この状態だと権限を変更しようが他人がアクセスできないという状態になるので、一度アプリケーションを停止し、再度公開し直しという方法を取らないといけないというバグです。また、スクリプトトリガーも勝手に削除されてる現象を確認しています。

  1. 元々は実行権限はウェブアプリケーション毎の権限で動かす設定になっていた。
  2. それを自分の権限のみにで動かすように設定変更を行った。
  3. ウェブアプリケーションの版としては、新しく作成をし直した。

対処法

その結果、アクセスできるユーザが全員であるにも関わらずページにはアクセス出来ないという現象が起きました。この状態でウェブに表示されてるアクセス要求のボタンをユーザが押すと、スプレッドシートではなくスクリプト側に対してアクセス要求がオーナーに届きます。

screenshot_524

図:ウェブアプリケーションとして公開してた時の状態。

仕方なく以下の処置をしました。

  1. 一度アプリケーションを停止させました。
  2. 再度、アプリケーションを新しい版で、自分の権限で実行/全員アクセス可で再度公開

これをやってしまうと、アプリケーションのURLが変わってしまうので再度、Google Sitesに貼り付け直しました。すると無事に他の人もアクセスが出来るようになりました。何故このような事が起きてるのかは不明ですが、ウェブアプリケーションとして公開する場合、また、その設定を変更する場合には、一度アプリケーションを止めてから行ったほうが懸命のようです。

URLが変わってしまうのでそこも告知上注意が必要ですね。

※どうやら、GoogleガジェットからVisualization APIを使ったスプレッドシートへのアクセスも出来なくなったようです。エラーが出ています。

関連リンク

Pocket
このエントリーをはてなブックマークに追加
Bookmark this on Yahoo Bookmark
Pocket