2016-04-30 3 views

ответ

1

Оказывается, это было довольно просто. Все, что мне нужно было сделать, это остановить OpsCenter, переименовать (или удалить) passwd.db и снова перезапустить OpsCenter. Демон автоматически создает новый пароль db-файла и устанавливает пароль администратора для «admin».

+0

Хорошее решение! Я рад, что вы это поняли. – Aaron

1

Я не знаю официального способа просто сбросить пароль администратора в OpsCenter. Тем не менее, я знаю о «хакерском» способе сделать это, если вы за это (и если у вас есть физический или ssh-доступ к серверу).

Аутентификация пользователя OpsCenter поддерживается в файле базы данных SQLite с именем passwd.db, расположенном в корне вашего каталога OpsCenter. Файл создается после активации аутентификации пользователя в OpsCenter. Используя sqlite3, вы можете открыть и управлять этого файла:

$ sqlite3 passwd.db 
SQLite version 3.8.5 2014-08-15 22:37:57 
Enter ".help" for usage hints. 
sqlite> PRAGMA table_info(users); 
0|id|INTEGER|0||1 
1|username|TEXT|0||0 
2|password|TEXT|0||0 
3|groupid|INTEGER|0||0 

sqlite> SELECT * FROM users; 
1|admin|8c6976e5b5410415bde908bd4dee15dfb167a9c873fc4bb8a81f6f2ab448a918|1 

Глядя выше, вы можете увидеть строку для «администратора» пользователя новенькой установку OpsCenter 5.2.1 является хэш:

8c6976e5b5410415bde908bd4dee15dfb167a9c873fc4bb8a81f6f2ab448a918

Если обновить поле пароля на таблице пользователей к этому значению, то следует сбросить его обратно на оригинал:

UPDATE users 
SET password='8c6976e5b5410415bde908bd4dee15dfb167a9c873fc4bb8a81f6f2ab448a918' 
WHERE username='admin'; 

Я не знаю, используют ли пароли в разных версиях OpsCenter один и тот же хэш или нет, но это должно работать, если вы используете OpsCenter 5.2.1. В противном случае, если у вас есть пользователь, который у вас есть do знаю пароль, вы можете (поискать и установить) пароль администратора до , что хэш, а затем, по крайней мере, вы будете знать пароль и сможете войдите в систему.

+0

BTW- Я почти уверен, что поддержка DataStax не одобрит этот метод, поэтому используйте на свой страх и риск. – Aaron

+1

Это умная идея, и я почти пошла с ней, но так как нам не нужно было оставлять какие-либо другие идентификаторы пользователей в системе, все, что мне нужно было сделать, чтобы сбросить имя пользователя admin, было удалено файл passwd.db. –