オーサーを手動で切り替えた後に SSL 証明書が元に戻される

作成者を手動で切り替えた後に元に戻ってしまう SSL 証明書を修正する方法について説明します。

説明 description

環境

Adobe Experience Manager(AEM)オンプレミス 6.5.15

問題/症状

AEM環境は、2 人のオーサー、パブリッシャー、Dispatcher で設定されます。1 人のオーサーがアクティブ(プライマリ)、1 人のオーサーがスタンバイ(セカンダリ)となり、パブリッシャーと Dispatcher が高可用性になります。

セカンダリオーサーは SSL が有効になっていないので、SSL 証明書の読み込み中に切り替えるには、プライマリオーサーをシャットダウンする必要があります。

この操作の後、セカンダリオーサーにアクセスできるようになります。 これらの手順を実行した後で、作成者を初期状態に戻すことができます。 セカンダリ オーサーを切り替えて同じ手順をもう一度試みると、以前にインポートされた証明書が利用できないため、アクセスできません。

解決策 resolution

HMAC を同期するには、次の手順に従います。

プライマリオーサー上:

  1. OSGi > バンドルに移動し、バンドル < ID> を確認して "com.adobe.granite.crypto.file". ださい
  2. "/crx-quickstart/launchpad/felix/bundle<ID>/data" に移動します。ここで < バンドル ID> は手順 1 で確認した ID です。
  3. "/crx-quickstart/launchpad/felix/bundle<Id>/data". の下の「hmac」と「master」をコピーします。

セカンダリオーサーの場合:

  1. OSGi > バンドルに移動し、バンドル < ID> を確認して "com.adobe.granite.crypto.file" ださい
  2. "/crx-quickstart/launchpad/felix/bundle<ID>/data". のバックアップを作成
  3. author1 からコピーした 2 つのファイルを、author2 の同じパスに古いファイルと置き換えて貼り付けます。
  4. target com.adobe.granite.crypto バンドルまたはAEM インスタンス全体を再起動します。

2 人のオーサーの HMAC 鍵を同期すると、証明書が元に戻されなくなります。

メモ:
エラー [ 1] がセカンダリオーサーのエラーログに存在します。

[ 1]

03.09.2023 12:30:29.212 *WARN* [ FelixStartLevel]  com.adobe.granite.crypto.config.internal.GraniteCryptoConfigurationPlugin Exception while decrypting the configuration mapcom.adobe.granite.crypto.CryptoException: Cannot convert byte dataat com.adobe.granite.crypto.internal.CryptoSupportImpl.unprotect(CryptoSupportImpl.java:130) [ com.adobe.granite.crypto:3.4.16] at com.adobe.granite.crypto.config.internal.GraniteCryptoConfigurationPlugin.modifyConfiguration(GraniteCryptoConfigurationPlugin.java:57) [ com.adobe.granite.crypto.config:0.0.4] at org.apache.felix.cm.impl.ConfigurationManager.callPlugins(ConfigurationManager.java:912) [ org.apache.felix.configadmin:1.9.12] at org.apache.felix.cm.impl.ConfigurationAdapter.getProcessedProperties(ConfigurationAdapter.java:292) [ org.apache.felix.configadmin:1.9.12] at org.apache.felix.scr.impl.manager.RegionConfigurationSupport.configureComponentHolder(RegionConfigurationSupport.java:228) [ org.apache.felix.scr:2.1.20] at org.apache.felix.scr.impl.BundleComponentActivator.setRegionConfigurationSupport(BundleComponentActivator.java:785) [ org.apache.felix.scr:2.1.20] at org.apache.felix.scr.impl.helper.ConfigAdminTracker$1.addingService(ConfigAdminTracker.java:69) [ org.apache.felix.scr:2.1.20] at org.apache.felix.scr.impl.helper.ConfigAdminTracker$1.addingService(ConfigAdminTracker.java:41) [ org.apache.felix.scr:2.1.20] at org.osgi.util.tracker.ServiceTracker$Tracked.customizerAdding(ServiceTracker.java:943)at org.osgi.util.tracker.ServiceTracker$Tracked.customizerAdding(ServiceTracker.java:871)at org.osgi.util.tracker.AbstractTracked.trackAdding(AbstractTracked.java:256)at org.osgi.util.tracker.AbstractTracked.trackInitial(AbstractTracked.java:183)at org.osgi.util.tracker.ServiceTracker.open(ServiceTracker.java:321)at org.osgi.util.tracker.ServiceTracker.open(ServiceTracker.java:264)at org.apache.felix.scr.impl.helper.ConfigAdminTracker.<init>(ConfigAdminTracker.java:86) [ org.apache.felix.scr:2.1.20] at org.apache.felix.scr.impl.BundleComponentActivator.<init>(BundleComponentActivator.java:269) [ org.apache.felix.scr:2.1.20] at org.apache.felix.scr.impl.Activator.loadComponents(Activator.java:551) [ org.apache.felix.scr:2.1.20] at org.apache.felix.scr.impl.Activator.access$200(Activator.java:69) [ org.apache.felix.scr:2.1.20] at org.apache.felix.scr.impl.Activator$ScrExtension.start(Activator.java:424) [ org.apache.felix.scr:2.1.20] at org.apache.felix.scr.impl.AbstractExtender.createExtension(AbstractExtender.java:196) [ org.apache.felix.scr:2.1.20] at org.apache.felix.scr.impl.AbstractExtender.modifiedBundle(AbstractExtender.java:169) [ org.apache.felix.scr:2.1.20] at org.apache.felix.scr.impl.AbstractExtender.modifiedBundle(AbstractExtender.java:49) [ org.apache.felix.scr:2.1.20] at org.osgi.util.tracker.BundleTracker$Tracked.customizerModified(BundleTracker.java:488)at org.osgi.util.tracker.BundleTracker$Tracked.customizerModified(BundleTracker.java:420)at org.osgi.util.tracker.AbstractTracked.track(AbstractTracked.java:232)at org.osgi.util.tracker.BundleTracker$Tracked.bundleChanged(BundleTracker.java:450)at org.apache.felix.framework.EventDispatcher.invokeBundleListenerCallback(EventDispatcher.java:915)at org.apache.felix.framework.EventDispatcher.fireEventImmediately(EventDispatcher.java:834)at org.apache.felix.framework.EventDispatcher.fireBundleEvent(EventDispatcher.java:516)at org.apache.felix.framework.Felix.fireBundleEvent(Felix.java:4817)at org.apache.felix.framework.Felix.startBundle(Felix.java:2336)at org.apache.felix.framework.Felix.setActiveStartLevel(Felix.java:1539)at org.apache.felix.framework.FrameworkStartLevelImpl.run(FrameworkStartLevelImpl.java:308)at java.lang.Thread.run(Thread.java:750)Caused by: com.adobe.granite.crypto.CryptoException: Failed decrypting cipher textat com.adobe.granite.crypto.internal.CryptoSupportImpl.decrypt(CryptoSupportImpl.java:66) [ com.adobe.granite.crypto:3.4.16] at com.adobe.granite.crypto.internal.CryptoSupportImpl.unprotect(CryptoSupportImpl.java:127) [ com.adobe.granite.crypto:3.4.16] ... 33 common frames omittedCaused by: com.rsa.jsafe.JSAFE_PaddingException: Invalid padding.at com.rsa.jsafe.JSAFE_SymmetricCipher.decryptFinal(Unknown Source)at com.adobe.granite.crypto.internal.jsafe.JSafeCryptoSupport.getPlainText(JSafeCryptoSupport.java:267)at com.adobe.granite.crypto.internal.jsafe.JSafeCryptoSupport.getPlainText(JSafeCryptoSupport.java:249)at com.adobe.granite.crypto.internal.CryptoSupportImpl.decrypt(CryptoSupportImpl.java:64) [ com.adobe.granite.crypto:3.4.16] ... 34 common frames omitted

原因

このエラーは、通常、インスタンスで暗号化機能が壊れている場合に発生します。この場合、証明書が読み込まれたインスタンスから HMAC キーを同期する必要があります。

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