У меня активная установка Trac с несколькими проектами. Я использую AccountManagerPlugin для управления учетными записями пользователей и предоставления пользователям возможности управлять своими учетными записями.
Моя текущая конфигурация AccountManagerPlugin выглядит следующим образом:
[account-manager]
account_changes_notify_addresses =
authentication_url =
force_passwd_change = true
generated_password_length = 8
hash_method = HtDigestHashMethod
htdigest_realm = TracRealm
notify_actions = []
password_file = /home/sms/trac_sites/trac.htdigest
password_store = HtDigestStore
persistent_sessions = true
user_lock_max_time = 0
verify_email = false
Это прекрасно работает, за исключением: Каждый проект Trac в настоящее время требует отдельной аутентификации. Проекты не могут поделиться своими файлами cookie аутентификации.
Настройка auth_cookie_path = /trac
не работает, поскольку данные сеанса хранятся в собственной базе данных каждого проекта; поэтому один проект не может проверить cookie другого. Хуже того, это приводит к тому, что проекты перезаписывают файлы cookie друг друга.
Использование недокументированного двухлетнего патча обезьяны ( SharedCookieAuthPlugin ) кажется плохой идеей.
Есть ли решение?