執行這項作業的原因和時機
由於 AppScan® Source 追蹤 將 FileInputStream.read
方法視為產生污染資料的來源,您應該建立驗證常式或編碼常式,在未來的掃描中剔除這個發現項目。
如果要建立 FileInputStream.read
的輸入驗證常式,請執行下列動作:
程序
- 在「追蹤」視圖的呼叫圖中,選取且用滑鼠右鍵按一下
TestCase_IOT_Instance_Val_Encode.encode
方法。
- 在功能表中,選取標示為驗證/編碼常式。
- 如果
encode
常式只套用於這個呼叫 FileInputStream.read
的特定實例,請在「指定如何套用這個驗證常式」對話框中,選取這個對於 java.io.FileInputStream.read 的呼叫。
因為 validate
方法是這個類別專用,且與程式碼緊密結合,您通常會指定這個對於 java.io.FileInputStream.read 的呼叫。
選取任何對於 java.io.FileInputStream.read 呼叫,將驗證常式套用至任何對於 read
方法的呼叫。當選取這個選項時,如果只對現行專案有效,也要選取套用至這個專案,否則,請選取套用至所有專案。
- 設定常式以套用到
FileInputStream
類別的所有 read
方法,以及具有 Technology.IO
內容的任何接收槽(如 java.io.PrintWrite.write
方法):
- 將
read
方法新增為來源:雖然您可以指定任何對於 java.io.FileInputStream.read(byte[]):int 的呼叫,以將 java.io.FileInputStream.read(byte[]):int
新增為來源,但我們改以個別地新增來源。在「指定如何套用這個驗證常式」對話框中,選取套用於功能表中的不考量 java.io.FileInputStream.read(byte[]):int,以下指定的所有限制項。然後按一下來源區段的新增按鈕。在「選擇簽章」對話框中,展開 java.io
,再展開 FileInputStream
區段。複選 java.io.FileInputStream.read*
節點,然後按一下確定。註: 列出的簽署節點數目取決於您的應用程式使用情形。選取所有您想要套用的項目。
- 新增接收槽內容:按一下接收槽內容區段的新增 VMAT 內容按鈕。在「選擇內容」對話框中,選取
Technology.IO
內容,然後按一下確定。
- 完成所有的設定時,對話框類似下列顯示內容:
- 按一下確定,將驗證常式新增至資料庫。