管理者アカウントが2つあります。行った手順は以下の通りです。まず、1つ目の管理者アカウントでログインし、2つ目の管理者アカウントの管理者権限を剥奪しました。ステータスは「管理者?いいえ」に変更されました。その後、2つ目のアカウントでシークレットモードにログインすると、管理者ステータスが再び自身に付与されました。これの原因は何でしょうか?よろしくお願いいたします!
設定ファイル(app.yml)に管理者のメールアドレスが記載されています。
その設定名は
DISCOURSE_DEVELOPER_EMAILS:
です。
この特定のメールアドレスを持つ管理者は、他の人が権限を剥奪しようとしても、常に管理者権限を保持します。
DISCOURSE_DEVELOPER_EMAILS から自分自身を削除したところ、UIで自分自身の「管理者権限の剥奪」オプションが表示されなくなりました。管理者が管理者権限を降りることができないのは問題だと思います。
そのため、コンソールに移動し、Railsコンソールで以下を実行しました:
u = User.find(1)
u.admin = false
u.save
これは正しいですか?
はい、自分で降格することはできません。コンソールから行うか、他のサイト管理者にお願いして通常通りUI経由で行う必要があります。 DISCOURSE_DEVELOPER_EMAILS にもう含まれていない限り、ログアウト/ログイン時に再昇格されることはないはずです。