Salesforceは2018年2月11日から、HTTPリクエストのURIエンコードを厳格にUTF-8のみ対応する変更を実施しています。これにより、適切にエンコードされていないリクエストはセキュリティリスクとみなされ無効となります。お客様の環境で影響がないかご確認いただき、必要に応じて対応を行ってください。詳細は下記をご参照ください。
Salesforce では、Salesforce サービスへの HTTP リクエスト(URL、フォームのデータ等)に、不適切な文字が含まれていた際の処理を見直し、適切な UTF-8 のみ処理するように改善します。これにより、「UTF-8 を適切に % エンコードした文字」以外の文字が含まれるリクエストはセキュリティリスクとみなされ、無効と判定されます。(例: Illegal Request のエラーが返る等)。
Salesforce は UTF-8 の文字コードを利用しています。これまでは、Salesforce への HTTP リクエストのチェックが不十分だったため、リクエストに含まれる「UTF-8 を適切に % エンコードした文字」以外の文字は「�」または UTF-8 として偶然一致した文字に置き換えられ、その HTTP リクエストがエラーになることは基本的にありませんでした。しかし、セキュリティ(インジェクション防止等)の観点、およびインターネット標準規格への準拠(RFCへの準拠および、ミドルウェアの独自変換「�」の排除)の観点から、厳密な判定が必要であると判断し、今回の変更実施に至りました。
*例えば URL パラメータ で Visualforce ページや、Lightning Experience 上でのレポートに文字を渡す場合には、 % エンコードした UTF-8 を利用しています。
上記の「変更の理由」にてご案内の通り、Salesforce への HTTP リクエストには UTF-8 のみが利用可能ですが、お客様環境において何らかの理由で「�」(Salesforce のミドルウェアによって解釈出来なかった文字の変換結果)が Salesforce に渡されるデータとして期待されている処理や、JavaScript 非標準の escape() 関数で生成された字が Salesforce に渡されている可能性があります。
なお、「UTF-8 を適切に % エンコードした文字」以外の文字を利用したURIエンコーディングについては、将来的には全て修正いただくことが必要ですが、今回の変更ではエラーが発生せず、現状の通り動作する処理がございます。
変更適用日以降、エラーとなる処理/現状のまま動作する処理の具体例を、以下のナレッジ記事に用意いたしました。調査・対応にご利用ください。
ナレッジ記事:有効ではない Salesforce へのリクエストの具体例について
確認が必要なお客様
お客様の設定や外部プログラムで生成または利用されている Salesforce への HTTP リクエストが、「UTF-8 を適切に % エンコードした文字」のみ利用していると判断されることが難しいお客様
お客様環境の実装方法やデータに依存するため、お客様の設定や外部プログラムで生成または利用されている Salesforce への HTTP リクエストで、「変更の概要」にあるような、「UTF-8 を適切に % エンコードした文字」以外の文字が利用されていないかの個別の確認が必要となります。
Sandboxは既にこの変更が適用されておりますので、サンドボックス上で既存機能の動作に問題が出ていないか確認していただくくことが可能です。
主な利用箇所
確認が不要な箇所
Salesforce 以外へアクセスするための URL を生成・利用する箇所
関連ヘルプおよびKB
一般情報(Salesforce 以外から提供されているもの)
ご不明な点がございましたら、[ヘルプ&トレーニング]より Salesforce サポートへお問い合わせください。
お客様の影響調査の参考情報として、問題が生じる可能性のあるリクエストURIをご提供することが可能です。
なお、以下のご相談については、Salesforce サポートでは承っておりません。お客様組織の管理者、開発者様、および外部プログラムを開発・保守されているシステムインテグレータ様へお問い合わせください。
000381922

We use three kinds of cookies on our websites: required, functional, and advertising. You can choose whether functional and advertising cookies apply. Click on the different cookie categories to find out more about each category and to change the default settings.
Privacy Statement
Required cookies are necessary for basic website functionality. Some examples include: session cookies needed to transmit the website, authentication cookies, and security cookies.
Functional cookies enhance functions, performance, and services on the website. Some examples include: cookies used to analyze site traffic, cookies used for market research, and cookies used to display advertising that is not directed to a particular individual.
Advertising cookies track activity across websites in order to understand a viewer’s interests, and direct them specific marketing. Some examples include: cookies used for remarketing, or interest-based advertising.