1. Apache Sling散發代理程式 — 同步代理程式處理站

啟用使用者同步

  • 作者​ 上的

Apache Sling散發代理程式

2.建立授權使用者

設定許可權

在步驟3中使用授權使用者來設定Author上的Sling發佈。

CAUTION
必須建立新使用者。
  • 指派的預設使用者為​**admin**。
  • 不要使用communities-user-admin user.

如何新增ACL

  • 存取CRXDE Lite

  • 選取/home節點

  • 在右窗格中,選取Access Control索引標籤

  • 若要新增ACL專案,請選取+按鈕

    • 主體搜尋為使用者同步處理建立的使用者
    • 類型Allow
    • 許可權jcr:all
    • 限制 rep:glob*/activities/*
    • 選取​ 確定
  • 選取​ 全部儲存

新增ACL視窗

另請參閱

3.AdobeGranite散發 — 加密的密碼傳輸機密提供者

設定許可權

在所有Publish執行個體上建立授權使用者(administrators ​使用者群組的成員)後,必須在Author上將該授權使用者識別為具有將使用者資料從Author同步到Publish的許可權。

  • 作者​ 上的

    • 以系統管理員許可權登入

    • 存取網頁主控台

    • 尋找com.adobe.granite.distribution.core.impl.CryptoDistributionTransportSecretProvider.name

    • 若要開啟以進行編輯,請選取現有組態(鉛筆圖示)
      驗證property namesocialpubsync-publishUser

    • 在步驟2中,將使用者名稱和密碼設定為在Publish上建立的授權使用者

      • 例如,usersync-admin

加密的密碼傳輸機密提供者

4. Apache Sling散發代理程式 — 佇列代理程式處理站

啟用使用者同步

  • 每個Publish執行個體​ 上的

    • 以系統管理員許可權登入

    • 存取網頁主控台

    • 尋找Apache Sling Distribution Agent - Queue Agents Factory

      • 若要開啟以進行編輯,請選取現有組態(鉛筆圖示)
        驗證Namesocialpubsync-reverse

      • 選取Enabled核取方塊

      • 選取Save

    • 針對每個Publish執行個體重複​ 重複

佇列代理程式Factory

5. Adobe Social同步 — 觀察者工廠差異

啟用群組同步

  • 每個Publish執行個體​ 上的

    • 以系統管理員許可權登入

    • 存取網頁主控台

    • 尋找​ Adobe Social Sync - Diff Observer Factory

      • 若要開啟以進行編輯,請選取現有組態(鉛筆圖示)

        驗證agent namesocialpubsync-reverse

      • 選取Enabled核取方塊

      • 選取Save

比較觀察者處理站

6. Apache Sling Distribution Trigger — 排程觸發程式Factory

(選擇性)修改輪詢間隔

依預設,作者每30秒輪詢一次變更。 變更此間隔:

  • 作者​ 上的

    • 以系統管理員許可權登入

    • 存取網頁主控台

    • 尋找Apache Sling Distribution Trigger - Scheduled Triggers Factory

      • 若要開啟以進行編輯,請選取現有組態(鉛筆圖示)

        • 驗證Namesocialpubsync-scheduled-trigger
      • Interval in Seconds設定為所需的間隔

      • 選取Save

排定的觸發程式Factory

為多個Publish執行個體進行配置

預設設定適用於單一Publish執行個體。 由於啟用使用者同步的原因是同步多個Publish例項,例如發佈伺服器陣列,因此必須將額外的Publish例項新增至同步代理程式處理站。

7. Apache Sling散發代理程式 — 同步代理程式工廠

新增Publish執行個體:

同步代理程式處理站

  • 匯出工具端點
    每個Publish執行個體都應該有一個匯出工具端點。 例如,如果有2個Publish執行個體localhost:4503和4504,則應該有兩個專案:

    • https://localhost:4503/libs/sling/distribution/services/exporters/socialpubsync-reverse
    • https://localhost:4504/libs/sling/distribution/services/exporters/socialpubsync-reverse
  • 匯入工具端點
    每個Publish例項都應該有匯入工具端點。 例如,如果有2個Publish執行個體localhost:4503和4504,則應該有兩個專案:

    • https://localhost:4503/libs/sling/distribution/services/importers/socialpubsync
    • https://localhost:4504/libs/sling/distribution/services/importers/socialpubsync
  • 選取Save

8. AEM Communities使用者同步監聽器

(選擇性)同步處理其他JCR節點

如果有要在多個Publish執行個體之間同步的自訂資料,則:

  • 每個Publish執行個體​ 上的

    • 以系統管理員許可權登入

    • 存取網頁主控台

      • 例如,https://localhost:4503/system/console/configMgr
    • 尋找AEM Communities User Sync Listener

    • 若要開啟以進行編輯,請選取現有組態(鉛筆圖示)
      驗證Namesocialpubsync-scheduled-trigger

AEM Communities使用者同步接聽程式

  • 節點型別
    這是已同步的節點型別清單。 必須在此處列出sling:Folder以外的任何節點型別(sling:folder單獨處理)。
    要同步之節點型別的預設清單:

    • rep:User
    • nt:unstructured
    • nt:resource
  • 可忽略的屬性
    這是偵測到任何變更時忽略的屬性清單。 對這些屬性的變更可能會因為其他變更的副作用而同步化(因為同步化一律在節點層級),但是對這些屬性的變更本身不會觸發同步化。
    要忽略的預設屬性:

    • cq:lastModified
  • 可忽略的節點
    同步期間被忽略的子路徑。 這些子路徑下的任何專案都不會隨時同步。
    要忽略的預設節點:

    • .tokens
    • 系統
  • 分散式資料夾
    大多數sling:Folders都會被忽略,因為不需要同步。 這裡列出一些例外情況。
    要同步的預設資料夾

    • 區段/分數
    • 社交/關係
    • 活動

9.唯一Sling ID

CAUTION
如果Sling ID在兩個或多個Publish執行個體之間相符,則使用者群組同步會失敗。

如果發佈伺服器陣列中多個Publish執行個體的Sling ID相同,則使用者群組不會同步。

若要驗證所有Sling ID值是否不同,請在每個Publish執行個體上:

  1. 瀏覽至http://<host>:<port>/system/console/status-slingsettings
  2. 檢查​ Sling ID ​的值

檢查Sling ID 的值

如果Publish例項的Sling ID符合任何其他Publish例項的Sling ID,則:

  1. 停止其中一個具有相符Sling ID的Publish執行個體

  2. 在crx-quickstart/launchpad/felix目錄中

    • 搜尋並刪除名為​ sling.id.file ​的檔案

      • 例如,在Linux®系統上:

        rm -i $(find . -type f -name sling.id.file)

      • 例如,在Windows系統上:

        use windows explorer and search for *sling.id.file*

  3. 啟動Publish執行個體

    • 在啟動時,它會被指派一個新的Sling ID
  4. 驗證​ Sling ID ​現在是否是唯一的

重複這些步驟,直到所有Publish例項都有唯一的Sling ID為止。

Vault Package Builder工廠

若要正確同步更新,必須修改用於使用者同步的Vault封裝產生器:

  • 在每個AEM Publish例項上

  • 存取網頁主控台

  • 找到Apache Sling Distribution Packaging - Vault Package Builder Factory

    • Builder name: socialpubsync-vlt
  • 選取編輯圖示

  • 新增兩個Package Node Filters

    • /home/users|-.*/.tokens
    • /home/users|-.*/rep:cache
  • 原則處理:

    • 若要以新節點覆寫現有的rep:policy節點,請新增第三個封裝篩選器:

      • /home/users|+.*/rep:policy
    • 若要防止發佈原則,請設定

      • Acl Handling: IGNORE

Vault Package Builder Factory

當……發生什麼情況?

在Publish上自行註冊或編輯設定檔的使用者

依設計,在發佈環境(自我註冊)中建立的使用者和設定檔不會出現在作者環境中。

當拓撲是發佈伺服器陣列且已正確設定使用者同步處理時,使用者 ​和​ 使用者設定檔 ​會使用Sling散發跨發佈伺服器陣列進行同步處理。

使用者或使用者群組是使用「安全性主控台」建立的

依設計,在發佈環境中建立的使用者資料不會出現在製作環境中,反之亦然。

當使用使用者管理與安全性主控台在發佈環境中新增使用者時,使用者同步會將新使用者及其群組成員資格同步到其他Publish執行個體(如有必要)。 使用者同步也會同步透過安全性主控台建立的使用者群組。

疑難排解

如何讓使用者同步處理離線

若要讓使用者同步處理離線,或要移除Publish執行個體手動同步處理資料,發佈佇列必須為空白且無訊息。

檢查發佈佇列的狀態:

  • 對作者:

    • 使用CRXDE Lite

      • 尋找/var/sling/distribution/packages中的專案

        • 以模式distrpackage_*命名的資料夾節點
    • 使用封裝管理員

      • 尋找擱置中的套件(尚未安裝)

        • 以模式socialpubsync-vlt*命名
        • communities-user-admin建立

當發佈佇列為空時,停用使用者同步:

  • 作者

    • 取消勾選 1}Apache Sling散發代理程式 — 同步代理程式處理站🔗Enabled核取方塊

工作完成時,若要重新啟用使用者同步:

使用者同步診斷

使用者同步診斷工具會檢查組態並嘗試找出任何問題。

在作者上,只要從主控台瀏覽​ 工具、操作、診斷、使用者同步診斷。

只要進入User Sync Diagnostics控制檯即可顯示結果。

這是尚未啟用使用者同步時所顯示的內容:

未啟用使用者同步診斷的警告

如何對Publish執行個體執行診斷

從製作環境執行診斷時,通過/失敗結果包含[資訊]區段,顯示已設定的Publish執行個體清單以進行確認。

清單中包含每個Publish執行個體的URL,這些執行個體會針對該執行個體執行診斷。 URL引數syncUser已附加至診斷URL,其值設定為在步驟2中建立的​ 授權同步使用者

注意:在啟動URL之前,授權的同步使用者 ​必須已登入該Publish執行個體。

Publish執行個體的 診斷