誤って管理者ユーザーを削除してしまった場合の対処方法
knowledge-article-header-disclaimer-how-to
knowledge-article-header-disclaimer
legacy-article
learn-legacy-article-disclaimer-text
問題
- カスタマイズが原因で、誤って管理者ユーザーを削除してしまいました。
- どのように対処すれば良いですか。
環境
解決
-
初回起動時のセットアップウィザードを再表示して、管理者ユーザーを再登録する方法。
ローカル環境の場合:
- Liferayをシャットダウンします
-
LIFERAY_HOME/portal-setup-wizard.properties
を開き、「setup.wizard.enabled=true」と設定します
- Liferayを再起動します
- セットアップウィザードが表示されるので、ユーザー名・パスワードを再設定します
- Liferayをシャットダウンします
-
LIFERAY_HOME/portal-setup-wizard.properties
を開き、「setup.wizard.enabled=false」と設定します
- Liferayを再起動します
DXPC環境の場合
- Service>Liferay>Environment Valiables を開きます
-
Keys: LIFERAY_SETUP_PERIOD_WIZARD_PERIOD_ENABLED
Values: true
を登録します
- Liferayサービスを再起動します
- セットアップウィザードが表示されるので、ユーザー名・パスワードを再設定します
- 手順2で登録した環境変数を削除します
- Liferayサービスを再起動します
-
一般ユーザーが存在する場合、データベース上のユーザーに対し、直接Administrator権限を付与する方法。
※Liferayは、データベースの直接編集を推奨しません。
また、直接編集によって発生した問題つきましては、サポートの対象外となります。
以下に記載する内容は、トラブルシューティングとしてご案内しますが、本来は推奨されない方法です。
よくご検討の上、お客様の裁量で実施してください。
当該インスタンスのCompanyIdを取得します。
CompanyIdは、Companyテーブル上で確認できます。
User_テーブルから、インスタンス上に存在するユーザーを確認します。
select * from user_ where companyId=XXXXX;
Role_テーブルから、インスタンス上のAdministrator権限のIDを取得します。
companyId
は、取得したIDに置き換えます。
select * from role_ where companyId=XXXXX and name ='Administrator';
Users_Rolesテーブルに、レコードを挿入します。
CompanyId
,RoleId
,UserId
は、それぞれ実際に取得した値に置き換えます。
insert into Users_Roles values (CompanyId, RoleId, UserId, 0, NULL);
did-this-article-resolve-your-issue