AppSheetでアプリのオーナーを変更する
AppSheetのアプリを作っていたけれど、退職や担当代わり、内部異動で引き継ぎたい。けれどユーザの共有画面からオーナー移転が出来ない。そんな事があります。そしてヘルプを探してRequest Transferしてみたらアプリが動かなくなったという事がまま発生します。
このようなトラブルの解消法についてまとめてみました。
目次
今回利用するツール等
今回特に特別なツール等は使いませんが、作成者である自分のアカウントとオーナー移転先の相手のアカウントの2つが登場し、双方で操作が発生します。故に一つずつ丁寧に手順を追って移転をしましょう。
今回は特に「AppSheet DBを使ってアプリを構築していた場合」になります。
トラブルの事例
AppSheet DBを元にアプリを構築していた場合には、実は落とし穴があります。
- アプリ自身のオーナー移転はRequest Transfterで移転できますがAppSheet DBのオーナー権限は別に存在するため、こちらもChange Ownerしないとアプリが停止します。
- オーナー移転すると移転元アカウントはアプリアクセス権限はEdit Difinitionに降格し、移転先アカウントはOwnerとなります。
- 新オーナーは、共有画面を見た時にOwnerとしての自分のアカウント以外に旧来のEdit Difinitionの権限のままの自分のアカウントの2つが重複して存在していたりします。OwnerではないほうはDeleteしてしまって問題ありません。
- アプリもDBも移転後はDB接続は切れたままなので、Regenerateを実行する必要があります。
- RefがなぜかText型になっていてリレーションが切れてる可能性もあるのでチェックしましょう。
アプリ移転後に移転元の人がDBを開こうとしたらNot Found画面が出たり、移転先の人も開いてみたらUnable to fetchというエラーが出ますが、慎重に対処することでクリア可能です。
図:DB編集画面に入れなくなった時の画面
図:データソースとの接続が切れた時の画面
オーナー移転手順
DBのオーナーを変更する
オーナー移転の落とし穴がこのDBオーナー変更。アプリのオーナー移転だけではアプリが停止したままで、尚且つ新オーナーはDBに入ろうとして入れないというトラップが存在します。よって、移転元アカウントはアプリのオーナー移転だけではなくDBのオーナー変更も行う必要があります。
- 移転元アカウントで左サイドバーからDataを開く
- データベースをクリックして、View data sourceをクリックする
- DB編集画面に入るので、右上の歯車クリック→Change Ownerをクリックする
- ダイアログの欄に移転先オーナーのメールアドレスを入れてChangeをクリックする
- この作業を必要なDBに対して全て行う
図:Change Ownerを実行する
図:オーナー変更ダイアログ
アプリのオーナーを変更する
移転先アカウントでの作業
アプリのオーナー権限をまず変更しましょう。この手順は移転元ではなく移転先のアカウントの人が行う必要があります。当然移転先の人は対象アプリに対して移転前の時点でEdit Difinition権限などを持って共有されてる必要があります。
- 移転先アカウントの人が対象のアプリに入る
- 左サイドバーからManage→Collaborate & Publishを開く
- Transferをクリックする
- Request Transferをクリックする
48時間以内に移転元アカウントがこのリクエストに応じる必要があります。応じるまで待機します。
図:オーナー移転リクエスト
移転元アカウントでの作業
オーナー移転のリクエストがきたらメールで通知が来るので移転元アカウントで作業を行います。
- 移転先アカウントの人が対象のアプリに入る
- 左サイドバーからManage→Collaborate & Publishを開く
- Transferをクリックする
- Transfer Appをクリックするとその時点でアプリのオーナーが変更されます。
図:オーナー移転承認
Regenerateの実行
新オーナーになった移転先アカウントで再び作業をします。移転直後ではまだアプリとDBの接続が切れたままなのでアプリは停止中のままです。
- 左サイドバーからDataに入る
- 対象のデータベースをクリックして、上部にあるRegenerateを実行する
- この作業を必要なDBの数だけ実行します
- 場合によっては再デプロイ作業を行います。
関連リンク