靜態分析結果互換格式Sarif定義了靜態分析工具輸出的標準格式。這是一種適合各種工具需求的強大而精緻的格式。因此,由於格式是在用正式語言編寫的220多頁規範中定義的! - 很難學習sarif並弄清楚需要使用哪些部分。
這些教程旨在以更平易近人的方式介紹SARIF。我們將從一些背景開始:為什麼我們需要Sarif?它來自哪裡?它可以做什麼?然後,我們將研究格式,首先探索最基本的概念,然後轉向更高級的概念。
高級概念通常僅適用於Sarif生產商和消費者的一部分,因此您不會閱讀所有內容。只需閱讀介紹材料,然後選擇您感興趣的其他主題即可。
您可以在samples目錄下的教程中找到示例文件。除非我另行說明,否則它們都是有效的SARIF文件。
有時,這些教程鏈接到SARIF規範的一部分,以提供更詳細的信息或高級方案的描述。這些鏈接看起來像這樣:§3.13:sariflog對象,它們指向Spec的HTML版本。 SARIF 2.1.0 CS01(委員會規範1)在OASIS網站上也有PDF和.DOCX版本。
該規範是確定的(如果我們想獲得真正的技術,則規範的.docx版本是確定的,但是假設PDF或HTML轉換器中沒有錯誤)。如果這些教程中的某些內容與規格不同意,請告訴我,我將修復教程,或者確保針對規格提出錯誤。
SARIF規格是綠洲的委員會規範。但是,儘管我是同事(與邁克爾·范甯(Michael Fanning))和規範的主要單詞匠,但這些教程不是綠洲的工作產品,也不是綠洲以任何方式認可的。它們代表了我個人的解釋和對標準的解釋。
這些教程現在包含足夠的信息,可以為您提供SARIF的可靠背景。正如您將從目錄中的“ todo”條目中看到的那樣,我還想寫更多的內容。但是這些是我有時間的高級主題。
如果您想解釋我尚未涵蓋的SARIF功能,請通過在此存儲庫中提交問題讓我知道
locations陣列id和guid屬性correlationGuid屬性sarif: URI計劃(TODO)該項目歡迎貢獻和建議。大多數捐款要求您同意撰寫貢獻者許可協議(CLA),宣布您有權並實際上授予我們使用您的貢獻的權利。有關詳細信息,請訪問https://cla.opensource.microsoft.com。
當您提交拉動請求時,CLA機器人將自動確定您是否需要提供CLA並適當裝飾PR(例如狀態檢查,評論)。只需按照機器人提供的說明即可。您只需要使用我們的CLA在所有存儲庫中進行一次。
該項目採用了Microsoft開源的行為代碼。有關更多信息,請參見《行為守則常見問題守則》或與其他問題或評論聯繫[email protected]。
Microsoft和任何貢獻者在Creative Commons Attribution 4.0國際公共許可證下授予Microsoft文檔和該存儲庫中其他內容的許可證,請參閱許可證文件,並授予您在MIT許可證中的存儲庫中的任何代碼的許可證,請參閱許可證代碼文件。
文檔中引用的Microsoft,Windows,Microsoft Azure和/或其他Microsoft產品和服務可以是美國和/或其他國家/地區的Microsoft商標或註冊商標。該項目的許可證不授予您使用任何Microsoft名稱,徽標或商標的權利。可以在http://go.microsoft.com/fwlink/?linkid=254653上找到Microsoft的一般商標準則。
隱私信息可以在https://privacy.microsoft.com/en-us/上找到
微軟和任何貢獻者都保留所有其他權利,無論是在其各自的版權,專利還是商標下,無論是暗示,禁止反言還是其他權利。