IMS配置中的client_secret即将取消设置

本文为AEM重新启动后IMS配置失败的问题提供了解决方案。 与IMS配置关联的运行状况检查始终失败,表明无法使用配置的client_secret进行身份验证。 将加密密钥保存在捆绑包的文件存储中。

描述 description

环境:

Experience Manager

问题/症状

IMS配置中的client_secret将被取消设置。
将AEM从较旧版本(例如6.2或更低版本)升级到较新版本(6.3或更高版本)后,用于存储加密密钥的方法将从JCR存储更改为文件系统存储。 此更改需要手动干预,以确保正确重新定位hmac和主密钥,以便AEM在重新启动后正常运行。 否则,可能会导致IMS等服务的身份验证问题,因为在预期位置中找不到用于加密和解密敏感信息的密钥。

出现以下错误:

{"error":"invalid_client","error_description":"invalid client_secret parameter"}

解决方法 resolution

要解决此问题并确保IMS配置在AEM重新启动期间保持稳定,请执行以下步骤:

  1. 转到crxde并导航到/etc/key。 在该节点内,应该有一个主属性和hmac属性。 下载这些文件。

  2. 通过单击这些属性的值下载资产。

  3. 转到 <hostname>/system/console/bundles并搜索“Crypto”

  4. 请注意标记为“AdobeGranite加密包密钥提供程序com.adobe.granite.crypto.file”的包的包ID。

  5. 请注意标记为“AdobeGranite加密支持com.adobe.granite.crypto”的包的包ID。

  6. 停止 AEM。

  7. 在AEM服务器上,导航到 crx-quickstart/launchpad/felix/< bundleID> /data,其中< bundleID>来自步骤5

  8. 数据目录中存在名为storage的文件,请下载此存储文件并替换当前服务器上的文件。 必须替换文件,而不是仅仅将值从JCR更改为Bundle,因为文件末尾不能有换行符,大多数编辑器(如vi)会添加换行符。

  9. 转到目录crx-quickstart/launchpad/felix/bundle${FILE_BUNDLE_ID}/data,其中${FILE_BUNDLE_ID}被步骤4中的“捆绑ID”值(com.adobe.granite.crypto.file捆绑ID)替换。

  10. 将您在步骤2中下载的hmac和主文件复制到此位置。

  11. 验证hmac和主文件是否与下载的文件相同。

  12. 命令应为: md5sum hmac md5sum master

    确保下载的文件和替换的文件输出相同。

  13. 启动 AEM。

  14. 从/etc/key中删除hmac和主属性,并确保保存。

  15. 按照这些步骤,您将加密密钥从JCR重新定位到文件系统,与较新AEM版本中预期的存储方法保持一致。 这可确保AEM一致地访问用于加密和解密操作的密钥,从而保持跨重新启动的稳定IMS配置。 建议在将更改应用到生产系统之前,在较低的环境中测试这些更改。

recommendation-more-help
3d58f420-19b5-47a0-a122-5c9dab55ec7f