0

WinJS.strictProcessing() は何をしますか?

MSDN の説明はあまり役に立ちません - http://msdn.microsoft.com/en-us/library/windows/apps/hh987021.aspx

4

1 に答える 1

2

セキュリティ機能をオンにします。シナリオは次のとおりです。

  1. アプリは、data-win-control、data-win-options、またはdata-win-bind属性を含むHTMLをWebから(たとえばXHRを介して)ダウンロードします
  2. HTMLがDOMに追加されます
  3. WinJS.UI.processAllまたはWinJS.Binding.processAllは、そのHTMLで呼び出されます
  4. data-win- *属性は、だまされてeval(または同様に邪悪なもの)を呼び出す関数を指定します
  5. ユーザーのアプリが所有されている

strictProcessingモードがオンになっている場合、宣言型処理に対して安全であると明示的にマークされている関数のみをマークアップから呼び出すことができます。これにより、呼び出すことができる関数の表面積が大幅に減少し、セキュリティレビューが必要なアプリの領域が減少します。

最も重要なことは、WinRTまたはeval関数のいずれもそのようにマークされていないため、ダウンロードしたHTMLを取得してWinRTを直接呼び出すことはできません(以前は可能でした)。

このモードは、アプリ開発者がコードを壊す前に調整する時間を与えるためにRCでデフォルトでオンにされていませんでしたが、この動作はRTMでデフォルトでオンになっている可能性があります。

于 2012-06-24T06:24:18.233 に答える