GoogleAppsScriptでの、ちょっと危ないスクリプト

佐野

佐野 2013年5月31日

GoogleAppsScriptの関数の中には、「UserManager」という関数があり、
これにより、スクリプトでユーザーの管理も可能となります。

じつは、この関数によって、ユーザーの増減も行えたりします。

20130531105725

画像はコード保管で、使える関数を出してみました。
ユーザーの取得のほか、ユーザーの追加が行える関数があるのがわかります。
たぶん、ライセンスの範囲内までだとは思いますが。

20130531104618

こちらは、ユーザー単体で行える操作。
よりにもよって、ユーザー削除の関数が、いちばん上にありますが、
間違って入力しても、スクリプトを起動しなければ問題はないでしょうが、
注意する事に越した事はないでしょう。

もちろん「UserManager」も含めて、
特権管理者のアカウントでなければ、これを動作させる事はできません。

これを利用すれば、一度に多くのユーザーを作成・削除が行えるかもしれませんが、
個人的には、あまり使いたくない機能でもあります。

GoogleAppsを導入し、そこにユーザーが作成されるという事は、
それだけ手に職を就けた人たちがいるという事でもありますし、
それを簡単に増減してしまうというのも、
最近問題にもなっている短期雇用による人の使い捨てを思わせるようで、
気が引ける部分でもあります。

私はアカウント作成も担当していますが、
個人的には、アカウント作成も1つ1つの項目を慎重に設定し、
それに重みを持って作業を行いたいと思っています。
GoogleAppsのアカウントは、人の重みでもあると思います。

また、パスワードの再設定もスクリプト上で可能です。
これもうまく使えば、定期的なパスワードの変更に利用できたり、
セキュリティの向上にも役立ちますが、
これも注意して使わないと、不正ログインに利用される原因にもなり得ます。

たとえばパスワードの再設定を簡易化したインターフェースを作成し、
もしそれが見知らぬユーザーに発見されでもしたら、
パスワードを自身で作成し、それでログインするという、
不正ログインで情報漏えいの危険性もあります。
パスワード紛失対策だからと言って、パスワード再設定インターフェースを
安易に導入するといった行為も、かなり危険です。
それを使用するのが、ログインを行っていない人が対象であるならば、
赤の他人でも利用できるという事でもありますからね。

使い方によっては、危険性の伴う機能でもあるので、
そういった機能を使用する場合は、あえてインターフェース面の便利さを考えず、
特権管理者のみが使用できる環境に留めておくほうがよいでしょう。
何でもかんでも便利にするというのも、考え物かもしれないですね。

ちなみに以上の操作が行えるのは、自分のドメイン内のみで、
別のドメインに対して行う事はできません。
また、これが行えるのも、
特権管理者のアカウントでスクリプトを動作させた場合のみです。
そういった制約はあれど、これらの機能を本格的に使っていくとなると、
より慎重さが要求されるかもしれませんね。