ims 設定の client_secret が設定解除されます
この記事では、AEMの再起動後に IMS 設定が失敗する問題の解決策を提供します。 IMS 設定に関連付けられたヘルスチェックが一貫して失敗し、設定された client_secret を使用して認証できないことを示します。 暗号キーをバンドルのファイルストレージに保存します。
説明 description
環境:
Adobe Experience Manager
問題/症状
ims 設定の client_secret が設定解除されます。
AEMを古いバージョン(6.2 以前)から新しいバージョン(6.3 以降)にアップグレードすると、暗号鍵の保存方法が JCR ストレージからファイルシステムストレージに変更されます。 この変更を行うには、再起動後にAEMが正しく機能するように、hmac キーとマスターキーを正しく再配置する必要があります。 そうしないと、機密情報の暗号化と復号化に使用されるキーが想定される場所に見つからないので、IMS などのサービスで認証に関する問題が発生する可能性があります。
次のエラーが表示されます。
{"error":"invalid_client","error_description":"invalid client_secret parameter"}
解決策 resolution
この問題を解決し、AEMを再起動しても IMS 設定が安定していることを確認するには、次の手順に従います。
-
crxde に移動し、/etc/key に移動します。 そのノードの内部には、master プロパティと hmac プロパティが必要です。 これらのファイルをダウンロードします。
-
プロパティの値をクリックして、プロパティをダウンロードします。
-
に移動
<hostname>/system/console/bundles
「Crypto」を検索します。 -
「Adobe Granite Crypto Bundle Key Provider com.adobe.granite.crypto.file」というラベルが付いたバンドルのバンドル ID をメモします。
-
「Adobe Granite Crypto Support com.adobe.granite.crypto」というラベルが付いたバンドル ID をメモします。
-
AEM を停止します。
-
AEM サーバーで、に移動します。次のように移動します。
crx-quickstart/launchpad/felix/< bundleID> /data
、ここで<
bundleId>
は手順 5 から -
データディレクトリに storage という名前のファイルがあります。これをダウンロードしてください ストレージファイル 現在サーバー上にあるサーバーを交換してください。 ファイルの末尾に改行の文字を含めることはできません。vi のような多くのエディターでは改行の文字を追加するので、値を JCR から Bundle に変更するのではなく、ファイルを置き換える必要があります。
-
ディレクトリに移動します
crx-quickstart/launchpad/felix/bundle${FILE_BUNDLE_ID}/data
、ここで${FILE_BUNDLE_ID} は、手順 4 の「バンドル ID」値(com.adobe.granite.crypto.file のバンドル ID)に置き換えられます。 -
手順 2 でダウンロードした hmac ファイルとマスターファイルをこの場所にコピーします。
-
hmac ファイルとマスターファイルがダウンロードしたものと同じであることを確認します。
-
コマンドは次のようになります。
md5sum hmac md5sum master
ダウンロードしたファイルと置き換えたファイルで出力が同じであることを確認します。
-
AEM を起動します。
-
/etc/key から hmac と master のプロパティを削除し、必ず保存してください。
-
これらの手順に従って、新しいAEM バージョンで期待されるストレージ方式に合わせて、暗号鍵を JCR からファイルシステムに再配置します。 これにより、AEMは、暗号化および復号化操作用のキーに一貫してアクセスできるので、再起動後も安定した IMS 設定を維持できます。 これらの変更は、実稼動システムに適用する前に、より低い環境でテストすることをお勧めします。