使用AEM 6配置LDAP configuring-ldap-with-aem
LDAP( L 八八 D 記錄 A 存取 P rotocol)用於訪問集中目錄服務。 這有助於減少管理多個應用程式可存取的使用者帳戶所需的工作量。 Active Directory是此類LDAP伺服器。 LDAP通常用於實現單一登錄,該登錄允許用戶在登錄後訪問多個應用程式。
可在LDAP伺服器和儲存庫之間同步用戶帳戶,並將LDAP帳戶詳細資訊保存在儲存庫中。 這可讓帳戶指派給存放庫群組,以分配所需的權限。
儲存庫使用LDAP驗證來驗證此類用戶,並將憑據傳遞到LDAP伺服器進行驗證,這是允許訪問儲存庫之前所需的。 為了改善效能,存放庫可快取成功驗證的憑證,並設定到期逾時,以確保在適當的期間後會進行重新驗證。
從LDAP伺服器中刪除帳戶時,不再授予驗證權,因此對儲存庫的訪問被拒絕。 也可清除儲存庫中儲存的LDAP帳戶的詳細資訊。
這些帳戶的使用對您的用戶是透明的,他們發現從LDAP建立的用戶和組帳戶與僅在儲存庫中建立的用戶和組帳戶之間沒有區別。
在AEM 6中,LDAP支援隨附新實作,其需要的組態類型與舊版不同。
所有LDAP設定現在都可作為OSGi設定使用。 可透過Web管理控制台進行設定:https://serveraddress:4502/system/console/configMgr
若要讓LDAP與AEM搭配使用,您需要建立三個OSGi設定:
- LDAP身分提供者(IDP)。
- 同步處理程式。
- 外部登入模組。
配置LDAP標識提供程式 configuring-the-ldap-identity-provider
LDAP標識提供程式用於定義如何從LDAP伺服器檢索用戶。
您可在管理主控台的 Apache Jackrabbit Oak LDAP身分提供程式 名稱。
LDAP標識提供程式可使用以下配置選項:
配置同步處理程式 configuring-the-synchronization-handler
同步處理程式將定義如何與儲存庫同步身份提供程式用戶和組。
位於 Apache Jackrabbit Oak Default同步處理常式 名稱。
以下配置選項適用於同步處理程式:
外部登入模組 the-external-login-module
外部登入模組位於 Apache Jackrabbit Oak External登入模組 下。
其工作是定義要使用的身份提供程式和同步處理程式,有效綁定這兩個模組。
可使用下列設定選項:
通過SSL配置LDAP configure-ldap-over-ssl
AEM 6可透過SSL設定以透過LDAP驗證,方法如下:
-
檢查 使用SSL 或 使用TLS 配置時的複選框 LDAP標識提供程式.
-
根據您的設定配置同步處理程式和外部登錄模組。
-
視需要在您的Java VM中安裝SSL憑證。 這可透過使用鍵具來完成:
keytool -import -alias localCA -file <certificate location> -keystore <keystore location>
-
測試與LDAP伺服器的連接。
建立SSL憑證 creating-ssl-certificates
在設定AEM以透過SSL透過LDAP驗證時,可使用自行簽署的憑證。 以下是產生要與AEM搭配使用之憑證的工作程式範例。
-
請確定您已安裝SSL程式庫且運作正常。 此程式將以OpenSSL為例。
-
建立自訂的OpenSSL設定(cnf)檔案。 複製預設的 openssl.cnf 設定檔案並自訂,即可完成此操作。 在UNIX系統上,它通常位於
/usr/lib/ssl/openssl.cnf
-
在終端中運行以下命令,繼續建立CA根密鑰:
code language-none openssl genpkey -algorithm [public key algorithm] -out certificatefile.key -pkeyopt [public key algorithm option]
-
接下來,建立新的自簽名證書:
openssl req -new -x509 -days [number of days for certification] -key certificatefile.key -out root-ca.crt -config CA/openssl.cnf
-
Inspect新產生的憑證,以確保一切都順序:
openssl x509 -noout -text -in root-ca.crt
-
請確定憑證設定(.cnf)檔案中指定的所有資料夾都存在。 否則,請建立。
-
例如,執行以建立隨機種子:
openssl rand -out private/.rand 8192
-
將建立的.pem檔案移至.cnf檔案中設定的位置。
-
最後,將憑證新增至Java金鑰存放區。
啟用偵錯記錄 enabling-debug-logging
可以為LDAP身分提供程式和外部登錄模組啟用調試日誌記錄,以便對連接問題進行故障排除。
若要啟用偵錯記錄,您必須:
- 前往Web管理控制台。
- 尋找「Apache Sling Logging Logger Configuration」並使用下列選項建立兩個記錄器:
-
記錄層級:除錯
-
記錄檔logs/ldap.log
-
消息模式:{0,date,dd.MM.yyyy HHss.SSS} *{4}*{2}
-
記錄器:org.apache.jackrabbit.oak.security.authentication.ldap
-
記錄層級:除錯
-
日誌檔案:logs/external.log
-
消息模式:{0,date,dd.MM.yyyy HHss.SSS} *{4}*{2}
-
記錄器:org.apache.jackrabbit.oak.spi.security.authentication.external
關於團體隸屬關係的一個詞 a-word-on-group-affiliation
透過LDAP同步的使用者可以是AEM中不同群組的一部分。 這些組可以是將作為同步過程的一部分添加到AEM的外部LDAP組,但也可以是單獨添加的組,而不是原始LDAP組關聯方案的一部分。
在大多數情況下,這些群組可以是由本機AEM管理員或任何其他身分提供者新增的群組。
如果從LDAP伺服器上的組中刪除了用戶,則同步時,該更改也將反映在AEM端。 但是,未由LDAP添加的用戶的所有其他組從屬關係將保持不變。
AEM會利用 rep:externalId
屬性。 此屬性將自動添加到由同步處理程式同步的任何用戶或組中,並包含有關原始身份提供程式的資訊。
如需詳細資訊,請參閱Apache Oak檔案,位於 用戶和組同步.
已知問題 known-issues
如果您打算使用LDAP over SSL,請確保您使用的證書建立時沒有Netscape注釋選項。 如果啟用此選項,驗證將會因SSL握手錯誤而失敗。