2017-10-09 21 views
0

私は私が使用してinnerHTMLプロパティ・バインドされたデータをサニタイズすることができますことを完全に承知しています:オーレリア:適切に消毒innerHTMLの結合データ

<div innerhtml.bind="someData | sanitizeHTML"></div> 

はしかし、私の観察に基づいて、この消毒は<script>タグを削除します。要素の上にレンダリングされてからjavascriptやイベントのコールバックのいずれかのタイプを防止するためのより良い方法はあり

"Hi! I am some HTML-formatted data from the server! <button onclick="getRekt();">Click me for butterflies!</button>" 

:それは、次のようなイベント駆動型のコンテンツからユーザーを保護していませんか?

答えて

1

sanatizeHTML値コンバータは非常に単純なサニタイザで、スクリプトタグのみを削除します。コードhereを参照してください。

より複雑なサンタライザーで独自のバリューコンバータを作成できます。ブラウザーでHTMLをサニタイズする方法の詳細については、this answerを参照してください。

しかし、ブラウザーを信頼することを忘れないでください。ブラウザに送信する前に、サーバー側でhtmlをサニタイズする方がよい場合は、ブラウザーを表示してください。

+0

私に正しい方向を指してくれてありがとう!サーバーは実際にはサニタイズを行いますが、私はクライアント側のサニタイザーがより馬鹿なセキュリティのために必要だっただけです。 –

関連する問題