私のアプリケーションはOracle ADFを使用して開発されています。私のフォームに<af:inputText>
の入力フィールドを使用しています。ADF入力フィールドでHTMLコンテンツを回避する一般的な方法はありますか
ここでは、入力フィールドにHTMLコンテンツを表示しないようにする必要があります。フォーム入力フィールドでHTMLコンテンツを使用しないようにする方法はありますか?
私のアプリケーションはOracle ADFを使用して開発されています。私のフォームに<af:inputText>
の入力フィールドを使用しています。ADF入力フィールドでHTMLコンテンツを回避する一般的な方法はありますか
ここでは、入力フィールドにHTMLコンテンツを表示しないようにする必要があります。フォーム入力フィールドでHTMLコンテンツを使用しないようにする方法はありますか?
OWASP#3 - それはデータベースに保存される前に、クロスサイトスクリプティング(XSS)
システムへのすべてのデータ入力を検証する必要があります。特に、アプリケーションのユーザーインターフェイスで後で再表示されるデータ入力は、クロスサイトスクリプティングのリスクをもたらします。
は、Oracle ADFに有効なデータ入力を強制するには、次の戦略参考:http://www.oracle.com/technetwork/developer-tools/adf/adfowasptop10-final-2348304.pdf
これを行うには、inputTextにバリデーターを追加する方法があります。あなたはこのようなものを持っていますので:
<af:inputText ... validator="#{scope.beanName.methodName}".../>
とのbeanNameではもちろん、あなたがバリデータメソッドを追加する必要があります
:public void methodName(FacesContext pContext, UIComponent pComponent, Object pValue) {
String userInput = pValue.toString();
if(containsHtml(userInput)) {
FacesMessage message = new FacesMessage(...);
throw new ValidationException(message);
}
}
public boolean containsHtml(String pUserInput) { ... your logic ... }
は、この検証に関連する問題では、ユーザーを防ぎたいですあなたのADF入力を介してサーバーにhtmlを送信することからですか? –
@JalalSordoはい、私はクライアントからサーバーへのHTMLコンテンツを防ぐ必要があります。 – Awesome
jsoupですべてのhtmlタグを削除するhttp://stackoverflow.com/questions/12943734/jsoup-strip-all-formatting-and-link-tags-keep-text-only – Kukeltje