Takumi API
Takumi API は、Takumi のさまざまな機能を呼び出せる HTTP API です。 CI/CD パイプラインやチケット管理システムと連携させるなど、自社の開発ライフサイクルに自由に Takumi を組み込んでいただけます。
Takumi API でできること
Takumi API は現在、以下の機能を提供しています。
| 機能 | 備考 |
|---|---|
| ホワイトボックス診断 | 「全体を診断」モードのみ |
| ブラックボックス診断 | 「全体を診断」モードのみ |
note
現在はホワイトボックス・ブラックボックス診断の「全体を診断」モードにのみ対応しています。ホワイトボックス・ブラックボックス診断の「一部の み診断」や自動修正など、今後も順次機能を拡大予定です。
Takumi API を用いて Takumi をお好みのタイミング・場所で呼び出し、その結果をお好みの場所へ届けることで、Takumi を開発ライフサイクルにシームレスに組み込んでいただけます。具体的には、診断の定期実行、CI/CD パイプラインへの組み込み、診断結果を起点にした自動化などが実現できます。一例として、以下のような活用が可能です。
- ステージング環境へのデプロイ後にブラックボックス診断を自動実行し、結果を Slack に投稿する
- BitBucket 上のコードベースに対して定期的にホワイトボックス診断を自動実行し、検出された脆弱性をそれぞれ Jira に起票する
Web コンソールの「診断」との関係
Takumi API と Web コンソールの「診断」機能では同じ診断エンジンが使われますが、診断データは共有されません。
両者は共通の診断エンジンを利用しており、精度やクレジット消費ロジックは同一です。
Takumi API と Web コンソールの「診断」機能のデータは独立しています。API 経由で実行したワークフローの結果は Web コンソールの「診断」タブには表示されず、逆に Web コンソールで実行した診断の結果を API から取得することもできません。これは、両者が異なる設計思想に基づいているためです。
- Web コンソールは診断の進行状況を容易に把握できるよう設計しています。そのため、「クロール → 一部機能を選択して検査」といった一連の流れを「診断」という単位の状態変化として管理しています。
- Takumi API はユースケースの自由度をなるべく高める API を指向しています。そのためクロール・診断などをそれぞれ独立したワークフローとして提供しています。これにより、Web コンソールの「診断」機能の流れに制限されることなく、自由な流れ・組み合わせで Takumi の諸機能を呼び出していただけます。