Орда Кронолит Аутентификация с использованием IMAP
Я настроил сервер Horde Groupware Webmail Edition, в основном для использования веб-почты (предоставляемой хостинг-провайдером) и календаря (предоставляемых нами). Аутентификация настраивается с использованием IMAP-аутентификации через компонент IMP (веб-почта):
Главная Орда config/conf.php
:
$conf['auth']['params']['app'] = 'imp';
$conf['auth']['driver'] = 'application';
IMP config/backends.local.php
:
$servers['imap']['hostspec'] = 'sub5.mail.dreamhost.com';
$servers['imap']['hordeauth'] = 'full';
// ... (port, secure, etc.)
Это успешно аутентифицирует пользователей на сервере IMAP DreamHost, чтобы они могли войти в Horde. После входа в систему через IMP они также могут получить доступ к Kronolith (компонент календаря).
Сейчас я пытаюсь настроить поддержку CalDAV для календаря, но не могу заставить аутентификацию работать. В качестве простого теста я беру URL календаря от Орды, который выглядит так: https://horde.example.com/rpc.php/calendars/myusername@example.com/calendar~CALENDAR_ID/
- и я пытаюсь использовать CURL (с опцией -u username:password
) чтобы получить календарь. Орда возвращает следующий ответ:
<?xml version="1.0" encoding="utf-8"?>
<d:error xmlns:d="DAV:" xmlns:s="http://sabredav.org/ns">
<s:exception>Sabre\DAV\Exception\NotAuthenticated</s:exception>
<s:message>Username or password does not match</s:message>
<s:sabredav-version>1.8.12</s:sabredav-version>
</d:error>
Есть ли способ заставить Орду использовать логин IMAP для календаря в CalDAV так, как он работает для веб-интерфейса?
1 ответ
В конце концов, мне пришлось переключить основную аутентификацию Horde, чтобы использовать IMAP напрямую, а не передавать его обратно в IMP.
Вот что я добавил в conf.local.php
:
$conf['auth']['driver'] = 'imap';
$conf['auth']['params']['hostspec'] = 'sub5.mail.dreamhost.com';
$conf['auth']['params']['port'] = 143;
$conf['auth']['params']['secure'] = 'tls';
$conf['auth']['params']['hordeauth'] = 'full';
Я понятия не имею, нужна ли последняя строка или нет, но пользователи ждали, поэтому я не пытался экспериментировать.