[僅限PaaS]{class="badge informative" title="僅適用於雲端專案(Adobe管理的PaaS基礎結構)和內部部署專案的Adobe Commerce 。"}
安裝Adobe Commerce套件
適用於Commerce的AEM Assets整合擴充功能(aem-assets-integration
)可啟用Adobe Commerce與Adobe Experience Manager Assets之間的資產同步。 擴充功能提供一套工具和服務,用於管理兩個平台上的資產,包括產品影像、影片和其他媒體資產。
安裝aem-assets-integration
PHP擴充功能,將此擴充功能新增至Commerce環境。 您也需要啟用適用於Commerce的Adobe I/O Events,並產生Adobe Commerce和Adobe Experience Manager Assets之間通訊和工作流程所需的認證。
系統需求
適用於Commerce的AEM Assets整合擴充功能具有下列系統和設定需求。
軟體需求
- Adobe Commerce 2.4.5+
- PHP版本與已安裝的Adobe Commerce版本8.1、8.2、8.3或8.4相容)
- Composer: 2.x
存取需求
您需要下列角色和許可權才能設定整合。
-
Commerce cloud專案管理員 — 安裝必要的擴充功能,並從管理員或命令列設定Commerce應用程式伺服器。
-
存取repo.magento.com以安裝擴充功能。
如需金鑰產生與取得必要許可權,請參閱取得您的驗證金鑰。 如需雲端安裝,請參閱雲端基礎結構上的Commerce指南
-
-
Commerce管理員 — 更新存放區設定並管理Commerce使用者帳戶。
安裝和設定工作流程
安裝Adobe Commerce套件,並完成下列作業準備Commerce環境:
- 安裝Commerce擴充功能的AEM Assets整合(
aem-assets-integration
)。 - 設定Commerce Services聯結器,以連線您的Adobe Commerce執行個體,並使用可在Adobe Commerce和AEM Assets之間傳輸資料的服務。
- 設定適用於Commerce的Adobe I/O Events
- 取得API存取的驗證認證
安裝aem-assets-integration
擴充功能
在具有AEM Assets 2.4.5+版本的Adobe Commerce執行個體上安裝最新版本的Adobe Commerce整合擴充功能(aem-assets-integration
)。 AEM資產整合是以Composer中繼資料的形式從repo.magento.com存放庫提供。
使用此方法來安裝Commerce Cloud執行個體的AEM Assets Integration延伸模組。
-
在本機工作站上,變更至雲端基礎結構專案上Adobe Commerce的專案目錄。
note note NOTE 如需有關在本機管理Commerce專案環境的資訊,請參閱《雲端基礎結構使用手冊》中_Adobe Commerce的使用CLI管理分支_。 -
檢視環境分支,以使用Adobe Commerce Cloud CLI進行更新。
code language-shell magento-cloud environment:checkout <environment-id>
-
新增Commerce擴充功能的AEM Assets整合。
code language-shell composer require "magento/aem-assets-integration" "<version-tbd>" --no-update
-
更新套件相依性。
code language-shell composer update "magento/aem-assets-integration"
-
認可並推播對
composer.json
和composer.lock
檔案的程式碼變更。 -
新增、認可並將
composer.json
和composer.lock
檔案的程式碼變更推播到雲端環境。code language-shell git add -A git commit -m "Install AEM Assets Integration extension for Adobe Commerce" git push origin <branch-name>
推送更新會啟動Commerce雲端部署程式以套用變更。 從部署記錄檢查部署狀態。
使用此方法來安裝內部部署執行個體的AEM Assets Integration延伸模組。
-
使用Composer將適用於Commerce的AEM Assets整合擴充功能新增至您的專案:
code language-shell composer require "magento/aem-assets-integration" --no-update
-
更新相依性並安裝擴充功能:
code language-shell composer update "magento/aem-assets-integration"
-
升級Adobe Commerce:
code language-shell bin/magento setup:upgrade
-
清除快取:
code language-shell bin/magento cache:clean
note tip |
---|
TIP |
部署到生產環境時,請考慮不清除已編譯的程式碼以節省時間。 進行變更前,請務必備份您的系統。 |
設定Commerce服務聯結器
若要在您的Adobe Commerce執行個體與啟用AEM Assets整合的服務之間傳輸資料,請從管理員(System > Services > Commerce Services Connector)設定Commerce服務聯結器。
在設定中提供下列值
- 用於驗證的生產和沙箱API金鑰
- 安全雲端儲存空間的資料空間名稱(SaaS識別碼)
- 布建Commerce和AEM Assets環境的IMS組織ID
如需詳細指示,請觀看Commerce Services Connector設定影片,請參閱Commerce Services Connector檔案。
儲存組態時,系統會為您的環境產生SaaS專案和資料庫ID。 若要在Adobe Commerce和AEM Assets之間啟用資產同步,需使用這些值。
設定適用於Commerce的Adobe I/O Events
AEM Assets整合使用Adobe I/O Events服務在Commerce執行個體和Experience Cloud之間傳送自訂事件資料。 事件資料可用來協調AEM Assets整合的工作流程。
設定Adobe I/O Events之前,請先確認Commerce專案的RabbitMQ和cron工作設定:
-
確保RabbitMQ已啟用且正在監聽事件。
- 內部部署Adobe Commerce的RabbitMQ設定
- 雲端基礎結構上Adobe Commerce的RabbitMQ設定
- 確認cron工作已啟用。 AEM Assets整合的通訊和工作流程需要Cron工作。
啟用Commerce事件架構
從Commerce管理員啟用事件架構。
-
從Admin移至 Stores > Settings > Configuration > Adobe Services > Adobe I/O Events。
-
展開 Commerce events。
-
將 Enabled 設為
Yes
。 -
在 Merchant ID 中輸入商家公司名稱,並在 Environment ID 欄位中輸入環境名稱。 設定這些值時,只能使用英數字元和底線。
設定自訂VCL以封鎖要求
如果您使用自訂VCL程式碼片段來封鎖未知的傳入要求,您可能需要包含HTTP標頭X-Ims-Org-Idheader
,以允許來自Commerce服務的AEM Assets整合的傳入連線。
下列自訂VCL程式碼片段程式碼(JSON格式)顯示X-Ims-Org-Id
要求標頭的範例。
{
"name": "blockbyuseragent",
"dynamic": "0",
"type": "recv",
"priority": "5",
"content": "if ( req.http.X-ims-org ~ \"<YOUR-IMS-ORG>\" ) {error 405 \"Not allowed\";}"
}
根據此範例建立程式碼片段之前,請檢閱值以判斷是否需要進行任何變更:
-
name
: VCL程式碼片段的名稱。 此範例使用名稱blockbyuseragent
。 -
dynamic
:設定程式碼片段版本。 此範例使用0
。 如需詳細的資料模型資訊,請參閱Fastly VCL程式碼片段。 -
type
:指定VCL程式碼片段的型別,這會決定程式碼片段在產生的VCL程式碼中的位置。 此範例使用recv
。 如需程式碼片段型別的清單,請參閱Fastly VCL程式碼片段參考。 -
priority
:決定VCL程式碼片段何時執行。 此範例使用優先順序5
立即執行,並檢查管理員要求是否來自允許的IP位址。 -
content
:要執行的VCL程式碼片段,會檢查使用者端IP位址。 如果IP位在Edge ACL中,則會封鎖整個網站的存取權,並產生405 Not allowed
錯誤。 允許存取所有其他使用者端IP位址。
如需使用VCL片段封鎖傳入要求的詳細資訊,請參閱 雲端基礎結構上的Commerce 中的封鎖要求的自訂VCL。
取得API存取的驗證認證
Commerce的AEM Assets整合需要OAuth驗證認證,才能允許API存取Commerce執行個體。 使用AEM Assets整合管理資產時,需要這些憑證才能驗證API請求。
您可以將整合新增至Commerce執行個體並加以啟用,以產生憑證。
將整合新增至Commerce環境
-
從Admin,移至 系統 >擴充功能> 整合,然後按一下 新增整合。
-
輸入整合的相關資訊。
在 一般 區段中,僅指定整合 名稱 和 電子郵件。 Adobe IMS帳戶使用此電子郵件,其可存取部署Commerce和Experience Manager Assets的組織。
適用於Commerce管理員設定的
-
按一下 確認身分 以驗證您的身分。
系統會使用您的Adobe ID向Experience Cloud進行驗證,以驗證您的身分。
-
設定API資源。
-
從左側面板,按一下 API。
-
選取外部媒體資源 Catalog > Inventory > Products > External Media。
API資源的
-
-
按一下 Save。
產生OAuth認證
在整合頁面上,按一下Assets整合的 啟動 以產生OAuth驗證認證。 您需要這些憑證才能透過Assets規則引擎服務註冊Commerce專案,以及提交API請求來管理Adobe Commerce與AEM Assets之間的資產。
-
在整合頁面中,按一下 Activate 產生認證。
-
如果您打算使用API,請儲存消費者金鑰的認證和存取Token ,以在API使用者端中設定驗證。
-
按一下 Done。