Visual Studio CodeでSBOMファイルを閲覧する際に役立つ拡張機能「Editor for SBOM」の紹介です。

はじめに

毎々お世話になっております、OSS管理エンジニア新人の明石です。今年度から「研修員」という肩書も外れてしまったので、チームの一員としてしっかり貢献できるようにならなければと思うこの頃です。

さて、今回はSBOMファイルを閲覧する際に役立つVisual Studio Code拡張「Editor for SBOM」をご紹介したいと思います。SBOMファイルはソースコードではなくデータなので、利用する際に何か特定の機能が必要という訳ではありません。ですが、本拡張を利用すれば普通にテキストファイルとして閲覧するより遥かに可読性が向上して情報を読み取りやすくなるかと思いますので、興味のある方はぜひ試して頂ければと思います。

「Editor for SBOM」とは?

「Editor for SBOM」は、SBOMの記述フォーマットであるSPDX Specificationで記述されたSBOMファイルの閲覧、編集をサポートする拡張機能です。導入すると一般的なプログラミング言語のようにシンタックスハイライトによる可読性の向上に加え、SBOMファイルの構造を解析して特定の位置へジャンプしたり、情報や定義を確認することが可能になります。

この「Editor for SBOM」、実は自分が業務の空き時間に実装していたツールをOSS化したものになります。

最初は自身の開発業務効率化のためだけに実装していたことからつたない部分も多々あるのですが、これを自分だけが抱えておくのは非常に勿体ない気がしたため、方々と調整を重ねた結果OSSとして公開できる運びとなりました。

限定的な場面でしか機能しないものではあるものの、そんな状況に遭遇した方にとっては有用な機能だと思っております。そういった方の役に立てられれば幸いです。

準備

Visual Studio Code(以降、VSCode)を通常通りインストールしていれば利用が可能です。

インストール方法

まず、下記からeditor-for-sbom-0.0.1.vsixをダウンロードしてください。

ダウンロードしたらVSCodeの左側アクティビティバーで拡張機能を選択後、サイドバー上部の「・・・」から「VSIXからのインストール...」をクリックするとファイル選択画面が出てくるので、先ほどダウンロードしたeditor-for-sbom-0.0.1.vsixを選択してインストールします。

VSCode拡張機能 手動インストール

インストールが完了すると右下に通知が表示されます。

なお、現在確認している現象としてほかの拡張や個人設定の兼ね合いによっては配色テーマが有効にならない場合があります。その場合は以下の項目から自分でテーマを設定してください。

                            
ファイル → ユーザー設定 → 配色テーマ → spdx tag value theme
                        

インストーラは準備ができ次第、VSCodeマーケットプレイスにも登録を予定しております。

機能紹介

すべての機能はSPDX Specification v2.2内で定義されているtag:value形式(.spdxファイル)を対象に実装したものになります。

Syntax Highlights

文字列を着色し、可読性を向上させます。

Snippets

各セクションの最小構成を補完候補に表示します。以下の単語を入力すると候補が表示されます。

  • document
  • package
  • license
snippets image

Completion

以下の入力に続く補完候補に、すでに入力された識別子を優先して表示します。

  • SPDXID:
  • SnippetSPDXID:
  • LicenseID:
completion image

Go to declaration

以下のタグ値が宣言された位置に移動します(日本語で右クリックメニューの「宣言へ移動」から)。

  • SPDXID
  • SnippetSPDXID
  • LicenseID
goToDeclaration image

Hover information

以下のタグに記述された値(識別子)が示す情報をホバー表示します。

  • SPDXID
  • SnippetSPDXID
  • LicenseID
onHover image

Check Syntax Errors

入力された文字列が構文規則に従うかを解析し、違反箇所は強調して文字列の訂正を促します。

  • こちらの機能は、現状本当に基本的な規則をチェックするのみとなっています。

なお、OSSということでソースコードもMITライセンスで公開しています。

こちらのソフトウェアの使用、またはその他の扱いによって生じる一切の請求、損害、その他の義務について、当社は何ら責任を負わないものとさせていただきますことをご了承ください。

さいごに

今回は自分が実装したVSCode拡張「Editor for SBOM」をご紹介させていただきました。もし何かの機会でtag:value形式のSBOMを触られる方がいらっしゃいましたら、本拡張をお試し頂ければと思います。

関連記事

タグ一覧

ジャンル
    キーワード
      作者名

        新着記事

          ソフトウェア部品管理ソリューション コンテンツ一覧

          関連商品・キーワード