Experience Manager Assetsと連携するようにImageMagickをインストールして設定します。

ImageMagickは、ビットマップ画像の作成、編集、作成、変換を行うソフトウェアプラグインです。 PNG、JPEG、JPEG-2000、GIF、TIFF、DPX、EXR、WebP、Postscript、PDF、SVGなど、様々な形式(200以上)の画像の読み取りと書き込みが可能です。 ImageMagick は、画像のサイズ変更、反転、ミラー、回転、変形、剪断および変換をおこなう場合に使用します。ImageMagick を使用して、画像の色を調整したり、各種特殊効果を適用したりすることもできます。また、テキスト、直線、多角形、楕円および曲線を描画することもできます。

ImageMagickを使用して画像を処理するには、コマンドラインのAdobe Experience Managerメディアハンドラーを使用します。 ImageMagick を使用して様々なファイル形式を取り扱うには、Assets のファイル形式に関するベストプラクティスを参照してください。すべてのサポートされるファイル形式については、Assets でサポートされるファイル形式を参照してください。

ImageMagick を使用して大きなファイルを処理する場合は、必要なメモリが通常より多くなること、IM ポリシーの変更が必要になる可能性があること、パフォーマンスへの全体的な影響を考慮してください。メモリ要件は、解像度、ビット深度、カラープロファイル、ファイル形式などの様々な要因によって異なります。ImageMagickを使用して非常に大きなファイルを処理する場合は、Experience Managerサーバーを適切にベンチマークします。 いくつかの有用なリソースを最後に紹介します。

メモ

Adobe Managed Services (AMS)でExperience Managerを使用している場合、多数の高解像度PSDまたはPSBファイルを処理する予定がある場合は、Adobeカスタマーケアにお問い合わせください。 Experience Manager は、30000 x 23000ピクセルを超える高解像度のPSBファイルを処理しない場合があります。

ImageMagick のインストール

各種オペレーティングシステム向けに、様々なバージョンの ImageMagick インストールファイルが用意されています。オペレーティングシステムに適したバージョンを使用してください。

  1. お使いのオペレーティングシステムに適したImageMagickインストールファイルをダウンロードします。

  2. Experience ManagerサーバーをホストするディスクにImageMagickをインストールするには、インストールファイルを起動します。

  3. path 環境変数を ImageMagick のインストールディレクトリに設定します。

  4. インストールが成功したかどうかを確認するには、identify -version コマンドを実行します。

コマンドラインプロセスのステップの設定

特定の使用例に応じてコマンドラインプロセスのステップを設定できます。Experience Managerサーバー上の/content/damにJPEG画像ファイルを追加するたびに、反転画像とサムネール(140 x 100、48 x 48、319 x 319、1280 x 1280)を生成するには、次の手順を実行します。

  1. Experience Managerサーバーで、ワークフローコンソール(https://[aem_server]:[port]/workflow)に移動し、DAMアセットの更新​ワークフローモデルを開きます。

  2. DAMアセットの更新​ワークフローモデルから、EPSサムネール(ImageMagickを使用)​ステップを開きます。

  3. 「引数」タブ​で、image/jpegを​MIMEタイプ​リストに追加します。

    mime_types_jpeg

  4. コマンド」ボックスに、次のコマンドを入力します。

    convert ./${filename} -flip ./${basename}.flipped.jpg

  5. 生成されたレンディションを削除​フラグと​Webレンディションを生成​フラグを選択します。

    select_flags

  6. Web に対応した画像」タブで、1280 x 1280 ピクセルというサイズでレンディションの詳細を指定します。さらに、「MIMEタイプ」ボックスにimage/jpegを指定します。

    web_enabled_image

  7. OK」をクリックして、変更を保存します。

    メモ

    convertコマンドは、Windowsのインストールに含まれるネイティブのconvertユーティリティと競合するので、特定のWindowsバージョン(Windows SEなど)では実行できません。 このような場合は、ImageMagick ユーティリティの完全パスを指定します。例えば、以下のように指定します。

    "C:\Program Files\ImageMagick-6.8.9-Q16\convert.exe" -define jpeg:size=319x319 ./${filename} -thumbnail 319x319 cq5dam.thumbnail.319.319.png

  8. サムネールを処理​の手順を開き、「MIMEタイプをスキップ」にMIMEタイプimage/jpegを追加します。

    skip_mime_types

  9. Webに対応した画像」タブで、「リストをスキップ」の下にMIMEタイプimage/jpegを追加します。 「OK」をクリックして、変更を保存します。

    web_enabled

  10. ワークフローを保存します。

  11. 適切な処理を検証するには、AssetsにJPG画像をアップロードします。 処理が完了したら、反転画像とレンディションが生成されているかどうかを確認します。

セキュリティの脆弱性の緩和

ImageMagick を使用した画像の処理に関連して、セキュリティの脆弱性が複数存在します。例えば、ユーザーが送信した画像の処理は、リモートコード実行(RCE)のリスクを伴います。

さらに、PHP の imagick、Ruby の rmagick と paperclip、nodejs の imagemagick など様々な画像処理プラグインが、ImageMagick ライブラリに依存しています。

ImageMagick または影響を受けるライブラリを使用する場合は、以下のタスクのどちらか(できれば両方)を実行して、既知の脆弱性を緩和することをお勧めします。

  1. ImageMagickに処理を送信する前に、すべての画像ファイルが、サポートする画像ファイルタイプに対応する予期された「magic bytes」で始まっていることを確認します。
  2. ポリシーファイルを使用して、脆弱なImageMagickコーダーを無効にします。 ImageMagickのグローバルポリシーは/etc/ImageMagickにあります。

このページ