Imap

使用 IMAP 的部落 Kronolith 身份驗證

  • September 10, 2017

我已經設置了一個部落群件網路郵件版伺服器,主要用於使用網路郵件(由託管服務提供商提供)和日曆(由我們提供)。通過 IMP(網路郵件)組件使用 IMAP 身份驗證設置身份驗證:

主要部落config/conf.php

$conf['auth']['params']['app'] = 'imp';
$conf['auth']['driver'] = 'application';

小鬼config/backends.local.php

$servers['imap']['hostspec'] = 'sub5.mail.dreamhost.com';
$servers['imap']['hordeauth'] = 'full';
// ... (port, secure, etc.)

這成功地根據 DreamHost 的 IMAP 伺服器對使用者進行身份驗證,以便他們可以登錄 Horde。通過 IMP 登錄後,他們還可以訪問 Kronolith(日曆組件)。

我現在正在嘗試為日曆設置 CalDAV 支持,但我無法使身份驗證正常工作。作為一個簡單的測試,我從 Horde 獲取如下所示的日曆https://horde.example.com/rpc.php/calendars/myusername@example.com/calendar~CALENDAR_ID/URL——我嘗試使用 CURL(帶有 option -u username:password)來檢索日曆。Horde 返回以下響應:

<?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>

有沒有辦法讓 Horde 使用 IMAP 登錄 CalDAV 中的日曆,就像它適用於 Web 界面一樣?

最後,我不得不將主要的部落身份驗證切換為也直接使用 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';

我不知道最後一行是否真的需要,但使用者正在等待,所以我沒有嘗試嘗試。

引用自:https://serverfault.com/questions/872578