こんにちは。
最近、社内のプロジェクトの一環として、Redashを導入したのですが、その際に「そういえば、ユーザーの削除ってどうやってやるんやろ」って思って調べて見ました。
結論
今のところGUI上ではバージョン5でないとできないので(びっくらこいた)、postgresかCLIで対応する必要があります。
対処方法
バージョン5
Admin権限を持っているユーザーであれば、Disableボタンをクリックすることで、アカウントをDisableにできるようになりました。
バージョン5以前における削除の方向性
操作履歴があると削除ができないです。すなわち、ユーザーがログインしているなどの条件があると、消すことができません(めんどくさい)。
なので、削除の流れとしては、
- 削除したいユーザー情報を取得する(メールアドレスやuserIDなど)
- そのユーザーのイベントを全て削除する
- ユーザーのアカウントを削除する
という感じになります。
削除するためには、Redash CLIかRedashのpostgresから直接削除する、の2つのパターンがあるのでそれぞれ紹介します。
Redashのpostgresから削除
postgresから削除する方法も載せておきます。以下の流れで削除できます。
# redashのpostgresへログインする # redash上の削除したいユーザーIDの確認 $ select * from users; # redash上におけるそのユーザーのイベントの削除 $ delete from events where user_id = <user_id>; # ユーザーの削除 $ delete from users where user_id = <user_id>;
感想
割とユーザーの削除って管理者権限を持つ人用に最初に作られてもいいような気もするけど、バージョン5まで引っ張ったのには理由があるのかな笑。
リリースされたらバージョン上げまする。