らくがきちょう

なんとなく

Mongo DB を直接操作して Wekan のユーザを削除する

残念ながら、現状の Wekan では管理者パネルからユーザの削除を実施することが出来ず、直接 Mongo DB を操作する必要があります… 今回は Wekan でユーザを削除する手順をメモしておきます。

結論

USERNAME ユーザを削除するには以下のように実行します。 Mongo DB はローカルで動作しており、ユーザ認証は無効化されている前提です。 ユーザ認証を有効化している場合は、ユーザ名を指定して Mongo DB に接続します。

mongo
use wekan;
db.users.remove({"username": "USERNAME"});
db.users.find({"username": "USERNAME"});

Mongo DB に接続する

ユーザ名を指定してローカルホストに接続する場合、以下のように実行します。

mongo DATABASE -u USERNAME -p

但し、ユーザ認証を有効化していない場合は以下のように実行します(ユーザ名の指定を省略します)。

# mongo
MongoDB shell version: 2.6.12
connecting to: test

データベースの一覧を表示する

データベースの一覧を表示するには show dbs を実行します。

show dbs; admin (empty) local 0.078GB wekan 0.078GB

データベースの切り替え

データベースを切り替えるには use DATABSE を実行します。 存在しないデータベースを指定すると新規作成になります。

> use wekan;
switched to db wekan

コレクション一覧を表示する

指定したデータベースに含まれるコレクションの一覧を表示するには show collections を実行します。

> show collections;
accountSettings
activities
announcements
boards
card_comments
cards
cfs._tempstore.chunks
cfs.avatars.filerecord
cfs_gridfs._tempstore.chunks
cfs_gridfs._tempstore.files
cfs_gridfs.avatars.chunks
cfs_gridfs.avatars.files
checklists
esCounts
invitation_codes
lists
meteor-migrations
meteor_accounts_loginServiceConfiguration
presences
settings
system.indexes
unsaved-edits
users

Wekan のユーザ一覧を表示する

Wekan のユーザ一覧を表示するには users コレクションで find() を実行します。 具体的には以下のように実行します。

> db.users.find();

Wekan で特定のユーザが存在するか、確認する

「特定のユーザが存在するか?」を確認するには以下を実行します。

db.users.find({"username": "USERNAME"});

ユーザが存在しない場合は以下のように何も表示されません。

> db.users.find({"username": "USERNAME"});
>

Wekan のユーザを削除する

Wekan のユーザを削除するには users コレクションで remove() を実行します。 具体的には以下のように実行します。

> db.users.remove({"username": "USERNAME"});