WFFMの「Assess Security Risk」アクションがエンコードされていないデータをチェック する


解説

WFFMフォームに入力されたデータは、送信時にエンコードされません。その結果、WFFMの「Assess Security Risk」の検証アクションが「<」、「>」、および「」記号をブロックし、以下の警告をスローします:

The field contains content that may present a security risk. Please enter appropriate information.

解決策1

以下のパッチを適用して、フォームの送信時に安全でない記号をエンコードさせます:

  1. インストールされているWFFMバージョンに対応するアセンブリを/binフォルダーに保存します:
  2. masterデータベースの/sitecore/system/Modules/Web Forms for Marketers/Settings/Actions/Form Verification/Assess Security Riskアイテムに以下のフィールド値を設定します:
    • アセンブリ:Sitecore.Support.363265
    • クラス:Sitecore.Support.Form.Submit.AssessSecurityRisk
    • パラメーター:<UnsafeChars>&amp;|&gt;|&lt;</UnsafeChars><EnableEncodeUnsafeChars>true</EnableEncodeUnsafeChars>
  3. このアイテムをパブリッシュします。

注意:「UnsafeChars」パラメーターには、パイプで区切られた安全でない文字のリストが含まれています。「EnableEncodeUnsafeChars」パラメーター値を「false」に設定すると、エンコーディングを無効にできます。

解決策2

該当するフォームの検証アクションのリストから「Assess Security Risk」アクションを削除します:

  1. コンテンツ エディターでフォームのアイテムを開きます。
  2. [表示]タブのリボンで[Raw値]を選択します。
  3. ID番号{2D5B5061-747A-4477-BD41-E746EAFEB231}の<li>ノードを[チェック アクション]フィールドから削除します。