2013-03-15 2 views
2

У меня есть длинный список пользователей для удаления. Я вошел в систему trac.db, но не нашел ничего похожего на таблицу user/password. где trac хранит пользователей и пароли в установке по умолчанию?Где trac хранит пользователей и пароли в установке по умолчанию?

+0

Убедитесь, что на самом деле нет такой Trac плагин как AccountManager не установлен в вашем случае. – hasienda

ответ

1

Прежде всего: нет четкой концепции ни учетной записи, ни пользователя в Trac до сих пор. То, что называется «имя пользователя», - это в основном идентификатор сеанса аутентификации или произвольная строка, сопоставленная с «анонимным» сеансом.

Посмотрите на окончательный reference on Trac's db schema:

сессия таблица содержит все допустимые идентификаторы сеансов. Обратите внимание, что ключ является флагом 'sid' + 'authenticated' (0 = unauthenticated, 1 = authenticated). Пользователям анонимных сеансов разрешено выбирать другой, более запоминающийся идентификатор сеанса с помощью настроек сеанса, если они им нравятся.

Это зависит от Trac дБ фонов, если первичный ключ для сессии обеспечиваются в качестве внешнего ключа в session_attribute тоже. Это другая соответствующая таблица, которая содержит дополнительные атрибуты, такие как имя/фамилия или адрес электронной почты для данного сеанса. Снова объединенный флаг 'sid' + 'authenticated' является первичным ключом.

Анонимные сеансы очиститься через некоторое время бездействия (следите за POSIX секунд/мкс метки времени в «LAST_VISIT» из сессии таблицы) по Trac автоматически, в то время как данные для аутентифицированных сессий остаться там навсегда. Вы, скорее всего, ищите их (SELECT sid, last_visit FROM session WHERE authenticated = 1).

Вы не найдете хеш-пароль в Trac db. Только плагины Trac, такие как SessionStore AccountManager, сохраняют свой хэш пароля (никогда не должны быть паролем в открытом тексте) в db (тогда в таблице «session_attribute»). В зависимости от вашей настройки аутентификации учетные данные пользователя управляются независимо, то есть в файле в формате Apache htpasswd/htdigest, который используется веб-сервером Trac, или tracd для автономной настройки Trac.

2

На будущее: вероятно, самый простой способ (since Trac 0.12) будет использовать

$ trac-admin <path-to-trac-env> session list 
$ trac-admin <path-to-trac-env> session delete username1 username2 ... 
Смежные вопросы