mcpField
F
FedRAMP 20x Requirements

FedRAMP 20x Requirements

ローカル
github.com/KevinRabun法務・行政637 週間前に更新

FedRAMP 20x Requirements について

FedRAMP 20x Requirementsは、FedRAMP 20xの実装チーム向けMCPサーバーです。要件の検索とコードベースのコンプライアンス分析に対応し、Azureを優先した実装ガイダンスを提供します。

主な機能

  1. 01管理策・ファミリー・キーワードで検索
  2. 02公式定義とドキュメントの参照
  3. 03ASTとYAMLパターンによるコード分析
  4. 04証跡収集の自動化ガイダンス
  5. 05アプリケーションプロファイルで検出結果を絞り込み

活用シーン

  1. 01管理策やファミリーの要件を調べる
  2. 02FedRAMP 20xへのコード適合性を確認する
  3. 03有効なKSIの証跡収集を計画する

MCP 対応

MCPクライアントにFedRAMP 20xの要件、ドキュメント、検索、分析ツールを提供します。READMEでは48のツールと15のプロンプトが記載されています。

設定

ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。

mcp.json · 共通設定
{
"mcpServers": {
"kevinrabun-fedramp20xmcp": {
"command": "uvx",
"args": [
"fedramp-20x-mcp"
]
}
}
}
起動コマンドuvx fedramp-20x-mcp

ローカルサーバーにはマシン上の実行環境(Node.js 18 以上など)が必要です。設定ファイルの場所はクライアントごとに異なります。

パッケージ
pypifedramp-20x-mcp1.3.0

ツール

ツール一覧はまだ取得されていません

ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。

詳細

FedRAMP 20x MCP サーバー

テスト PyPI バージョン Python バージョン

FedRAMP 20x のセキュリティ要件と管理策にアクセスできる、Azure を最優先するガイダンスを提供する MCP(Model Context Protocol)サーバーです。

概要

このサーバーは、公式の FedRAMP ドキュメントリポジトリから FedRAMP 20x のデータを読み込み、管理策、ファミリー、キーワードで要件を検索するツールを提供します。

データソース:

**Azure に重点:**すべての実装例、アーキテクチャパターン、ベンダーの推奨事項では、適切な場合にクラウドに依存しない方針を維持しながら、Microsoft Azure サービス(Azure Government、Microsoft Entra ID、Azure Key Vault、AKS、Azure Functions、Bicep など)を優先しています。

データの範囲

FedRAMP 20x ドキュメント全体で、321 件の要件(199 件の FRR + 72 件の KSI + 50 件の FRD)にアクセスできます。

FedRAMP 要件(FRR)- 10 ファミリーにわたる 199 件の要件:

  • ADS - 認可データ共有(20 件の要件)
  • CCM - 共同継続的モニタリング(25 件の要件)
  • FSI - FedRAMP セキュリティインボックス(16 件の要件)
  • ICP - インシデントコミュニケーション手順(9 件の要件)
  • MAS - 最小評価範囲(12 件の要件)
  • PVA - 継続的な検証と評価(22 件の要件)
  • RSC - 推奨されるセキュア構成(10 件の要件)
  • SCN - 重要な変更の通知(22 件の要件)
  • UCM - 暗号モジュールの使用(4 件の要件)
  • VDR - 脆弱性の検出と対応(57 件の要件)
  • KSI - 主要セキュリティ指標(2 件の要件)

主要セキュリティ指標(KSI)- 11 ファミリーにわたる 72 件の指標:

  • AFR - アーキテクチャ、機能、リソース(11 件の指標)
  • CED - 継続的な証跡の提供(4 件の指標)
  • CMT - 継続的なモニタリングとテスト(5 件の指標)
  • CNA - クラウドネイティブアーキテクチャ(8 件の指標)
  • IAM - ID とアクセス管理(7 件の指標)
  • INR - インシデントおよびニアミスの報告(3 件の指標)
  • MLA - モニタリング、ログ記録、アラート(8 件の指標)
  • PIY - プライバシーと透明性(8 件の指標)
  • RPL - レジリエンスと復旧計画(4 件の指標)
  • SVC - セキュアコーディングと脆弱性管理(10 件の指標)
  • TPR - サードパーティリスク管理(4 件の指標)

FedRAMP 定義(FRD)- 公式用語の定義 50 件

機能

  • 🎯 証拠収集の自動化(新機能):Azure ネイティブサービス、すぐに使えるクエリ、成果物の仕様を使用して、65 件のアクティブな KSI の自動化ガイダンスを提供します
  • コントロールによるクエリ:特定の FedRAMP 要件に関する詳細情報を取得します
  • ファミリーによるクエリ:ファミリー内のすべての要件を一覧表示します
  • キーワード検索:キーワードを使用してすべての要件を検索します
  • FedRAMP の定義:FedRAMP の公式用語の定義を検索します
  • 主要セキュリティ指標:実装状況とともに、FedRAMP の主要セキュリティ指標(KSI)にアクセスしてクエリを実行します
  • ドキュメント検索:FedRAMP の公式ドキュメントの Markdown ファイルを検索して取得します
  • 動的コンテンツ:すべての Markdown ドキュメントファイルを自動的に検出して読み込みます
  • 実装計画:プロダクトマネージャーやエンジニアが FedRAMP 20x の実装に関する検討事項を検討するための、戦略的なインタビュー質問を生成します
  • AST を活用したコード分析:tree-sitter を使用した高度な抽象構文木解析により、Python、C#、Java、TypeScript/JavaScript、Bicep、Terraform を対象に、正確でコンテキストを考慮したセキュリティ分析を行います
  • セマンティック分析:シンボル解決、制御フロー分析、手続き間分析機能を備えた、コードの詳細な理解を実現します
  • 🚀 パターンベースのアーキテクチャ:23 の要件ファミリーにわたる 381 件の YAML パターンを備えた統合分析エンジンで、KSI と FRR のコンプライアンス分析をサポートします
  • パターンエンジン:AST 優先の分析とインテリジェントな検出結果の分類により、14 言語を対象とした宣言型 YAML 駆動の検出を行います
  • 🎯 コンテキストを考慮したフィルタリング(新機能):分析ツールの application_profile パラメーターでアプリケーションの種類(cli-tool、mcp-server、web-app、api-service、iac-only、library、batch-job、full)を指定して、誤検知を減らします
パターンベースの分析アーキテクチャ

このサーバーは、すべての FedRAMP 20x コンプライアンス分析に統合パターンベースアーキテクチャを使用しています。

アーキテクチャの概要:

  • 23 の要件ファミリーにわたる 381 件の YAML パターン
  • 従来の 271 個のアナライザーを、単一の分析エンジン(GenericPatternAnalyzer)で置き換えます
  • 14 言語をサポート:Python、C#、Java、TypeScript、JavaScript、Bicep、Terraform、GitHub Actions、Azure Pipelines、GitLab CI、YAML、JSON、Dockerfile、GitHub
  • tree-sitter によるAST 優先の検出で精度を高め、必要に応じて正規表現にフォールバックします
  • 保守や拡張が容易な宣言型パターン

ファミリー別のパターンカバレッジ:

  • アプリケーションファミリー:ADS、AFR、CCM、CED、CMT、CNA、IAM、INR、MLA、PIY、RPL、RSC、SCN、SVC、TPR、UCM、VDR(17 ファミリー)
  • インフラストラクチャファミリー:COMMON、FSI、ICP、KSI、MAS、PVA(6 ファミリー)
  • KSI と FRR の対応付け:パターン定義を通じて 72 件の KSI と 199 件の FRR をサポートします

仕組み:

  1. パターンの読み込み:data/patterns/ ディレクトリから YAML パターンを読み込みます
  2. 分析の実行:tree-sitter の AST 解析とパターンマッチングを使用してコードを分析します
  3. 検出結果の生成:パターンに基づき、重大度、説明、修正方法を含む検出結果を生成します
  4. 結果の集約:重複を排除しながら、要件ファミリー別に検出結果をグループ化します

メリット:

  • ✅ 一貫性:すべての言語で同じ検出ロジックを使用します
  • ✅ 保守性:Python コードではなく YAML のパターンを更新します
  • ✅ パフォーマンス:パターンのコンパイルとキャッシュにより、分析速度を最適化します
  • ✅ 拡張性:コードを変更せずに新しいパターンを追加できます
  • ✅ 精度:AST ベースの検出により、誤検知を減らします

重要な補足:OSCAL 形式 FedRAMP 20x では、認可データの共有に機械可読な形式(JSON、XML、または構造化データ)が必要です。FedRAMP 20x の要件では OSCAL について言及されていません。OSCAL は、実装方法の候補の 1 つとして利用できる NIST 標準です。実際の要件は単に「機械可読」であることです。実装のニーズに応じて、独自の JSON/XML または OSCAL を使用できます。

インストール

前提条件
  • Python 3.10 以降
  • pip(Python に含まれています)
  • Python がシステムの PATH に含まれている必要があります
セットアップ
# Clone the repository
git clone https://github.com/KevinRabun/FedRAMP20xMCP.git
cd FedRAMP20xMCP

# Create virtual environment and install
python -m venv .venv
source .venv/bin/activate  # On Windows: .venv\Scripts\activate
pip install -e .

# If using uv (alternative package manager):
uv pip install -e .

依存関係:

  • mcp>=1.2.0 - Model Context Protocol SDK
  • httpx>=0.27.0 - FedRAMP データを取得するための HTTP クライアント
  • openpyxl>=3.1.0 - エクスポート機能用の Excel ファイル生成
  • python-docx>=1.1.0 - KSI 仕様用の Word ドキュメント生成
  • tree-sitter>=0.21.0 - コード分析用の AST 解析ライブラリ
  • tree-sitter-python>=0.21.0 - tree-sitter 用の Python 言語バインディング
  • tree-sitter-c-sharp>=0.21.0 - tree-sitter 用の C# 言語バインディング
  • tree-sitter-java>=0.21.0 - tree-sitter 用の Java 言語バインディング
  • tree-sitter-javascript>=0.21.0 - JavaScript/TypeScript 言語バインディング

トラブルシューティング:

問題が発生した場合は、詳しいトラブルシューティング手順について高度なセットアップガイドを参照してください。

セキュリティ

脆弱性の報告: セキュリティ上の脆弱性を発見した場合は、責任ある開示の手順についてセキュリティポリシーを参照してください(KSI-PIY-03)。

監査ログ: 監査のため、すべての MCP サーバー操作は stderr に記録されます(KSI-MLA-05)。

セキュリティ機能:

  • ✅ 認証は不要です(ローカル開発ツール)
  • ✅ 連邦政府の顧客データは取り扱いません
  • ✅ GitHub への接続は HTTPS のみです
  • ✅ 1 時間のキャッシュ TTL により外部リクエストを削減します
  • ✅ すべての依存関係で安全な最小バージョンを使用しています

セキュリティに関する詳細は、SECURITY.mdを参照してください。

使用方法

VS Code と GitHub Copilot の場合
  1. VS Code MCP 拡張機能をインストールします(まだインストールされていない場合)

  2. MCP サーバーを設定します - 次のいずれかのスコープを選択します。

    オプション A:ワークスペースレベル(共有に推奨)

    プロジェクトの .vscode/mcp.json に追加します。

    {
      "servers": {
        "fedramp-20x-mcp": {
          "type": "stdio",
          "command": "python",
          "args": ["-m", "fedramp_20x_mcp"]
        }
      }
    }
    

    Python が PATH に含まれていない場合は、コマンドを仮想環境の Python を使用するように更新します。

    {
      "servers": {
        "fedramp-20x-mcp": {
          "type": "stdio",
          "command": "${workspaceFolder}/.venv/Scripts/python.exe",  // Windows
          // "command": "${workspaceFolder}/.venv/bin/python",       // macOS/Linux
          "args": ["-m", "fedramp_20x_mcp"]
        }
      }
    }
    

    オプション B:ユーザーレベル(すべてのプロジェクトでグローバルに使用)

    VS Code のユーザー設定(settings.json)に追加します。

    {
      "github.copilot.chat.mcp.servers": {
        "fedramp-20x-mcp": {
          "type": "stdio",
          "command": "python",
          "args": ["-m", "fedramp_20x_mcp"]
        }
      }
    }
    

    セキュリティに関する注意: 設定で "alwaysAllow" を使用しないでください。VS Code は初回使用時に権限の付与を求めます。これはセキュリティのベストプラクティスです。

  3. 任意:VS Code の設定を行います。.vscode/settings.json.example を .vscode/settings.json にコピーします。

  4. VS Code を再読み込みして MCP サーバーを有効にします。

  5. VS Code のプロンプトが表示されたら、権限を付与します(初回使用時のみ)。

  6. GitHub Copilot Chat で使用します。

    • Copilot Chat を開きます
    • FedRAMP 20x の要件について質問します
    • @workspace を使用して、特定の管理策やファミリーについて問い合わせます
    • 48 個すべてのツールと、包括的な 15 個のプロンプトにアクセスできます
Claude Desktop の場合

次の Claude Desktop 設定にこのサーバーを追加します(macOS の場合は ~/Library/Application Support/Claude/claude_desktop_config.json、Windows の場合は %APPDATA%\Claude\claude_desktop_config.json)。

{
  "mcpServers": {
    "fedramp-20x": {
      "command": "uv",
      "args": [
        "--directory",
        "/absolute/path/to/FedRAMP20xMCP",
        "run",
        "fedramp-20x-mcp"
      ]
    }
  }
}

注: /absolute/path/to/FedRAMP20xMCP を実際のインストールパスに置き換えてください。

MCP Inspector の場合

MCP Inspector を使用してサーバーをテストします。

npx @modelcontextprotocol/inspector python -m fedramp_20x_mcp
⚠️ Copilot 実行ポリシー

このリポジトリでは、AI を利用したコーディング全般に厳格な指示を適用しています。

参照:Copilot の指示

高度な設定

CI/CD との統合、Azure や GitHub とのマルチサーバー設定、または詳しいトラブルシューティングについては、以下を参照してください。

利用可能なツール

サーバーは、以下のカテゴリに分類された48 個のツールを提供します。

コアツール(8 個): 要件の照会(get_control、list_family_controls、search_requirements)、定義の照会(get_definition、list_definitions、search_definitions)、KSI の照会(get_ksi、list_ksi) KSI ツール(9 個): KSI の実装状況、証拠の自動化、証拠の照会、証拠の成果物、実装マトリックス、実装の概要、カバレッジの概要、カバレッジの状況、ファミリーの状況 FRR 分析ツール(7 個): 特定の FRR、すべての FRR、または FRR ファミリーに対するコードの分析、FRR の一覧表示、FRR メタデータ、証拠の自動化、実装状況の取得 ドキュメントツール(3 個): FedRAMP ドキュメントの検索と取得 拡張ツール(6 個): 実装例、依存関係、工数の見積もり、クラウドネイティブのガイダンス、アーキテクチャの検証、Rev 4 との比較 エクスポートツール(2 個): Excel/CSV エクスポート 計画ツール(2 個): 実装に関する質問と、段階的なチェックリストの生成 証拠収集ツール(4 個): インフラストラクチャコードのテンプレート、収集コード、アーキテクチャのガイダンス、KSI の仕様 コード分析ツール(4 個): インフラストラクチャコード、アプリケーションコード、CI/CD パイプラインの AST ベースの分析、および FedRAMP 設定の検証 セキュリティツール(2 個): パッケージと依存関係ファイルの CVE 脆弱性チェック コード拡充ツール(1 個): FedRAMP 要件のコメントをコードに追加

get_control

特定の FedRAMP 要件またはコントロールに関する詳細情報を取得します。

パラメーター:

  • control_id(文字列):要件の識別子(例:「FRD-ALL-01」、「KSI-AFR-01」)
list_family_controls

特定のファミリーに属するすべての要件を一覧表示します。

パラメーター:

  • family(文字列):ファミリーの識別子(例:「FRD」、「KSI」、「MAS」)
search_requirements

特定のキーワードを含む要件を検索します。

パラメーター:

  • keywords(文字列):要件のテキストを検索するキーワード
get_definition

特定の用語について、FedRAMP の定義を取得します。

パラメーター:

  • term(文字列):検索する用語(例:「脆弱性」、「クラウドサービスの提供内容」)
list_definitions

FedRAMP のすべての定義と用語を一覧表示します。

戻り値: FedRAMP の定義用語の完全な一覧

search_definitions

キーワードで FedRAMP の定義を検索します。

パラメーター:

  • keywords(文字列):定義を検索するキーワード
get_ksi

特定の主要セキュリティ指標に関する詳細情報を取得します。

パラメーター:

  • ksi_id(文字列):KSI の識別子(例:「KSI-AFR-01」)
list_ksi

すべての主要セキュリティ指標を一覧表示します。

戻り値: すべての主要セキュリティ指標とその名称の完全な一覧

get_ksi_evidence_automation

特定の KSI に関する証拠収集の自動化に向けた推奨事項を取得します。65 件の有効な KSI には、自動証拠収集のガイダンスが含まれています。

パラメーター:

  • ksi_id (string):KSI 識別子(例:「KSI-IAM-01」、「KSI-CNA-01」)

**戻り値:**証拠収集を自動化するためのガイダンス。以下が含まれます。

  • Azure サービス:KSI ごとに 5 つの Azure サービス(Log Analytics、Resource Graph、Azure Policy、Azure Monitor など)と、具体的な設定ガイダンス
    • 注:Microsoft Defender for Cloud は、約 8~10 件の KSI で推奨されています(必須ではありません)。脆弱性スキャン、セキュリティ態勢管理、コンプライアンス監視を効率化できます。代替ツール(Qualys、Tenable、Trivy)も使用できます。
  • 収集方法:4~5 種類の自動収集方法(継続的な監視、定期的な評価、イベント駆動型トリガー、ログ集約)
  • ストレージ要件:保持ポリシー(運用データは 30~90 日、コンプライアンスデータは 1~7 年)、暗号化標準、アクセス制御
  • FRR-ADS との統合:Authorization Data Sharing 準拠のための機械可読な API エンドポイント
  • 実装の詳細:工数の見積もり、前提条件、コストに関する考慮事項、担当者(セキュリティ、DevOps、コンプライアンス、エンジニアリング)
  • コード例:Infrastructure-as-Code テンプレート(Bicep、Terraform)と自動化スクリプト

**対象範囲:**11 ファミリーにわたる、すべての 65 件の有効な KSI:

  • IAM(7):MFA、権限管理、セッション制御、認証情報のライフサイクル、ユーザーの終了処理、JIT アクセス、共有アカウント
  • CNA(8):ネットワークのセグメンテーション、TLS 設定、接続ログ、Azure Monitor、Key Vault、シークレットの検出、コンテナー レジストリ、GitHub Security
  • MLA(5):ログの集約、保持、改ざん検知、検索機能、アラート
  • INR(3):インシデント対応計画、インシデントのログ記録、事後報告書
  • AFR(11):資産の検出、SBOM、侵入テスト、開発環境と本番環境の分離、GitHub Actions のセキュリティ、コンテナースキャンなど
  • SVC(9):FIPS 140-3 暗号化、API 認証、レート制限、入力の検証、エラー処理、シークレット管理、DoS 対策、シークレットのローテーション、依存関係の管理
  • CMT(4):継続的な監視、ヘルスチェック、構成ベースライン、構成ドリフトの検出
  • CED(4):認可文書、システム境界、SSP の更新、継続的デリバリー
  • TPR(2):サプライチェーンリスク評価、サプライチェーンリスクの監視
  • RPL(4):復旧目標、復旧計画、システムのバックアップ、復旧テスト
  • PIY(8):インベントリの自動化、データの最小化、脆弱性の開示、セキュア・バイ・デザイン、セキュリティ評価、投資効果、サプライチェーンリスク、経営陣の支援

例: get_ksi_evidence_automation("KSI-IAM-01") は、フィッシング耐性のある MFA に関する証拠収集の自動化情報を返します。これには、Entra ID の条件付きアクセス ポリシー、Log Analytics を使用したサインインログ、MFA 方法の登録状況を照会するクエリ、コンプライアンスレポートのダッシュボードが含まれます。

get_ksi_evidence_queries

特定の KSI に関する、すぐに使える証拠収集クエリを取得します。

パラメーター:

  • ksi_id (string):KSI 識別子(例:「KSI-IAM-01」、「KSI-CNA-01」)

**戻り値:**Azure から証拠を収集するための、本番環境ですぐに使えるクエリ(KSI ごとに 5 つ):

  • KQL クエリ:ログ分析とメトリクス取得のための Log Analytics/Azure Monitor の Kusto クエリ
  • Azure Resource Graph:インフラストラクチャと構成状態を照会するクエリ
  • REST API:プログラムによるデータ取得のための Azure Resource Manager API 呼び出し
  • Azure CLI:証拠を抽出するためのコマンドラインスクリプト
  • PowerShell:自動収集のための Azure PowerShell コマンドレット

例: get_ksi_evidence_queries("KSI-CNA-01") は、NSG ルール、Azure Firewall ポリシー、仮想ネットワーク構成、サブネットのセグメンテーション分析、ネットワークトポロジーの検証に関する Resource Graph クエリを返します。

get_ksi_evidence_artifacts

特定の KSI について、収集する証拠アーティファクトの仕様を取得します。

パラメーター:

  • ksi_id (string): KSI 識別子(例: "KSI-IAM-01", "KSI-CNA-01")

戻り値: 詳細なアーティファクト仕様(KSI ごとに 5 件のアーティファクト):

  • アーティファクト名: 必要な具体的な証拠ファイル/レポート(例: "MFA_Sign_In_Logs.csv", "NSG_Rule_Export.json")
  • 収集方法: 各アーティファクトの収集方法(自動エクスポート、API 取得、ダッシュボードのスクリーンショット、コンプライアンスレポート)
  • ファイル形式: CSV、JSON、PDF、PNG(ダッシュボードのスクリーンショット)、XLSX(コンプライアンスマトリクス)
  • 更新頻度: 要件の重要度に応じた、毎日、毎週、毎月、または四半期ごとの収集スケジュール
  • 保持要件: 運用データは 30~90 日間、コンプライアンス証拠は 1~7 年間
  • ストレージの推奨事項: 暗号化、アクセスログ、イミュータビリティポリシーを適用した Azure Blob Storage

使用例: get_ksi_evidence_artifacts("KSI-IAM-01") は、サインインログ(CSV、毎日、90 日間)、Conditional Access ポリシーのエクスポート(JSON、毎週、1 年間)、MFA 方法の登録レポート(XLSX、毎月、3 年間)、認証ダッシュボードのスクリーンショット(PNG、四半期ごと、1 年間)、MFA コンプライアンスマトリクス(PDF、毎月、7 年間)を返します。

analyze_frr_code

特定の FedRAMP 要件(FRR)に照らしてコードを分析し、コンプライアンス上の問題を検出します。

パラメーター:

  • frr_id (string): FRR 識別子(例: "FRR-VDR-01", "FRR-RSC-01", "FRR-ADS-01")
  • code (string): 分析するコード
  • language (string): 言語/プラットフォーム - "python", "csharp", "java", "typescript", "bicep", "terraform", "github-actions", "azure-pipelines", "gitlab-ci"
  • file_path (string, optional): コンテキスト用のファイルパス

戻り値: 検出事項、重大度、修正の推奨事項を含む分析結果

サポート対象の FRR ファミリー:

  • VDR - 脆弱性の検出と対応(59 件の要件): 脆弱性スキャン、パッチ管理、修正期限、逸脱の追跡、KEV 脆弱性への対応
  • RSC - 推奨されるセキュア構成(10 件の要件): セキュリティベースライン、構成管理、ハードニング標準
  • UCM - 暗号モジュールの使用(4 件の要件): FIPS 140-3 準拠、鍵管理、暗号化標準
  • SCN - 重要な変更の通知(26 件の要件): 変更管理、通知手順、影響評価
  • ADS - 認可データの共有(22 件の要件): 機械可読な証拠 API、データ形式、認証
  • CCM - 協調的な継続的モニタリング(25 件の要件): モニタリング手順、四半期レビュー、評価の調整
  • MAS - 最小評価範囲(12 件の要件): 認可境界、システムインベントリ、評価要件
  • ICP - インシデント連絡手順(9 件の要件): インシデント通知、連絡プロトコル、エスカレーション手順
  • FSI - FedRAMP セキュリティインボックス(16 件の要件): セキュリティインボックスの管理、脆弱性の開示、対応手順
  • PVA - 継続的な検証と評価(22 件の要件): 継続的な検証、評価手順、テスト要件

チェック内容: AST を活用したセマンティック分析により、FRR 固有のコンプライアンス上の問題についてコードを分析します:

  • アプリケーションコード: セキュリティ制御、API 実装、暗号の使用、ログ記録、エラー処理
  • Infrastructure as Code: リソース構成、セキュリティ設定、コンプライアンス制御、ネットワークポリシー
  • CI/CD パイプライン: セキュリティゲート、テスト要件、デプロイ手順、証拠の収集

使用例:

# Check Python code for FRR-VDR-01 compliance (vulnerability scanning)
result = analyze_frr_code(
    frr_id="FRR-VDR-01",
    code="""import subprocess
    subprocess.run(['trivy', 'image', 'myapp:latest'])
    """,
    language="python"
)
# ✅ Detects Trivy vulnerability scanning implementation

# Check Bicep for FRR-ADS-01 compliance (machine-readable evidence)
result = analyze_frr_code(
    frr_id="FRR-ADS-01",
    code="""resource apiManagement 'Microsoft.ApiManagement/service@2023-05-01-preview' = {
      name: 'evidence-api'
      properties: {
        publisherEmail: '[email protected]'
        publisherName: 'Contoso'
      }
    }""",
    language="bicep"
)
# ✅ Validates API Management for authorization data sharing
analyze_all_frrs

コンプライアンス分析のため、コードを FedRAMP の全 199 件の要件に照らして分析します。

パラメーター:

  • code(文字列):分析するコード
  • language(文字列):言語/プラットフォーム(python, csharp, java, typescript, bicep, terraform, github-actions, azure-pipelines, gitlab-ci)
  • file_path(文字列、任意):コンテキストとして使用するファイルパス

戻り値: FRR ファミリーごとにまとめた分析結果と概要統計

ユースケース:

  • デプロイ前の検証:本番環境へのデプロイ前に、すべてのコードをチェックします
  • コンプライアンス監査:認証取得の準備を支援する分析スキャン
  • セキュリティレビュー:FedRAMP コンプライアンスにおけるすべてのギャップを特定します
  • CI/CD 統合:パイプラインでコンプライアンスチェックを自動化します

出力構造:

  • ファミリーごとに整理された検出結果(VDR、RSC、UCM、SCN、ADS、CCM など)
  • 概要統計:検出結果の合計数、重大/高/中/低の件数
  • 準拠している要件の一覧
  • 実行可能な修正ガイダンス

使用例:

# Comprehensive FRR analysis of Bicep infrastructure code
result = analyze_all_frrs(
    code=bicep_template,
    language="bicep",
    file_path="main.bicep"
)
# Returns findings across all 10 FRR families

パフォーマンス: 並列処理と AST キャッシュを使用し、2〜5 秒で FRR 全 199 件を分析します。

analyze_frr_family

特定の FRR ファミリーの全要件に照らしてコードを分析します。

パラメーター:

  • family(文字列):ファミリーコード - "VDR"、"RSC"、"UCM"、"SCN"、"ADS"、"CCM"、"MAS"、"ICP"、"FSI"、"PVA"
  • code(文字列):分析するコード
  • language(文字列):言語/プラットフォーム
  • file_path(文字列、任意):コンテキストとして使用するファイルパス

戻り値: 指定したファミリーの全要件に対する分析結果

一般的なユースケース:

VDR ファミリー(59 件の要件):

# Check CI/CD pipeline for vulnerability management compliance
result = analyze_frr_family(
    family="VDR",
    code=github_actions_yaml,
    language="github-actions"
)
# Checks: Vulnerability scanning, patch procedures, remediation timeframes,
# deviation management, KEV tracking, monthly reporting

ADS ファミリー(22 件の要件):

# Validate authorization data sharing API implementation
result = analyze_frr_family(
    family="ADS",
    code=python_api_code,
    language="python"
)
# Checks: Machine-readable formats, API authentication, data accuracy,
# real-time updates, audit logging, access controls

RSC ファミリー(10 件の要件):

# Check infrastructure for secure configuration compliance
result = analyze_frr_family(
    family="RSC",
    code=terraform_code,
    language="terraform"
)
# Checks: Security baselines, configuration standards, hardening,
# drift detection, compliance validation
list_frrs_by_family

特定のファミリーに属するすべての FRR 要件を、実装状況とともに一覧表示します。

パラメーター:

  • family(文字列):ファミリーコード(VDR、RSC、UCM、SCN、ADS、CCM、MAS、ICP、FSI、PVA)

戻り値: ファミリー内のすべての FRR の一覧。以下を含みます。

  • FRR ID と名前
  • 実装状況(実装済み/未実装)
  • コードによる検出可能性(コードで検出可能/プロセスベース)
  • NIST 800-53 の管理策マッピング
  • 影響度(低/中/高)

使用例:

# List all vulnerability detection requirements
result = list_frrs_by_family("VDR")
# Returns 59 VDR requirements with status indicators

# List all authorization data sharing requirements
result = list_frrs_by_family("ADS")
# Returns 22 ADS requirements

ユースケース:

  • ファミリー内で利用可能な FRR 要件を確認する
  • 実装範囲を確認する
  • FRR の実装優先順位を計画する
  • コード要件とプロセス要件を理解する
get_frr_metadata

NIST 管理策、関連する KSI、検出戦略など、特定の FRR の詳細なメタデータを取得します。

パラメーター:

  • frr_id(文字列):FRR 識別子(例:「FRR-VDR-01」)

戻り値: 以下を含む FRR メタデータ:

  • FRR の詳細:ID、名前、ファミリー、要件の説明
  • NIST 800-53 の管理策:関連するセキュリティ管理策
  • 関連する KSI:この FRR に対応する主要なセキュリティ指標
  • 影響度:該当する認可レベル(低/中/高)
  • 検出戦略:要件の検証方法(コード分析、構成チェック、プロセスレビュー)
  • 実装ガイダンス:Azure 固有の推奨事項とベストプラクティス

使用例:

# Get metadata for FRR-VDR-01 (vulnerability scanning)
result = get_frr_metadata("FRR-VDR-01")
# Returns: NIST controls (RA-5, SI-2), related KSIs (KSI-AFR-04),
# detection strategy (CI/CD pipeline analysis, tool configuration checks)

# Get metadata for FRR-ADS-01 (machine-readable evidence)
result = get_frr_metadata("FRR-ADS-01")
# Returns: NIST controls (CA-2, CA-5, CA-7), related KSIs (KSI-CED-01),
# detection strategy (API endpoint analysis, data format validation)

ユースケース:

  • 実装前に FRR 要件を理解する
  • コンプライアンス文書作成のために FRR を NIST 管理策に対応付ける
  • 統合的なコンプライアンス対応に向けて、関連する KSI を特定する
  • Azure 固有の実装ガイダンスを取得する
get_frr_evidence_automation

特定の FRR に関する証拠収集の自動化を推奨します。

パラメーター:

  • frr_id(string):FRR 識別子(例:「FRR-VDR-01」、「FRR-ADS-01」)

戻り値: 以下を含む証拠収集の自動化ガイダンス:

  • 証拠の種類:構成ベース、ログベース、API ベースの証拠
  • 自動化の実現可能性:自動化の可能性(高/中/低)
  • Azure サービス:証拠収集に推奨される 3~5 個のサービス
  • 収集方法:自動化されたアプローチ(Azure Monitor、Resource Graph、Policy、API)
  • ストレージ要件:保持ポリシー、暗号化、アクセス制御
  • 証拠アーティファクト:収集する具体的なファイル/レポート
  • 実装手順:自動化を設定するための手順
  • コード例:インフラストラクチャテンプレートとスクリプト
  • 更新頻度:日次/週次/月次/四半期ごとの収集スケジュール
  • 担当者:チームの責任範囲(セキュリティ、DevOps、コンプライアンス)

使用例:

# Get evidence automation for FRR-VDR-01 (vulnerability scanning)
result = get_frr_evidence_automation("FRR-VDR-01")
# Returns: Azure Defender for Cloud configuration, KQL queries for
# vulnerability data, scan result export automation, compliance dashboards

# Get evidence automation for FRR-ADS-01 (data sharing API)
result = get_frr_evidence_automation("FRR-ADS-01")
# Returns: API Management setup, authentication configuration,
# audit logging, API call metrics, response format validation

対応する FRR ファミリー:

  • VDR:脆弱性スキャン結果、パッチの状態、修復状況の追跡、逸脱の承認
  • ADS:API 呼び出しログ、データ形式の準拠状況、認証記録、アクセス監査
  • CCM:監視メトリクス、四半期レビューのアーティファクト、評価調整ログ
  • RSC:構成ベースライン、ドリフト検出レポート、コンプライアンススキャン結果
  • その他すべて:各ファミリー固有の証拠に関する推奨事項
get_frr_implementation_status

すべての FRR アナライザーの実装状況の概要を取得します。

パラメーター: なし

戻り値: 以下を含む実装状況の概要:

  • FRR の合計数:10 ファミリーにわたる 199 の要件
  • ファミリー別の実装数:VDR(59)、RSC(10)、UCM(4)、SCN(26)、ADS(22)、CCM(25)、MAS(12)、ICP(9)、FSI(16)、PVA(22)
  • ステータスの内訳:実装済みと未実装の件数
  • コードで検出可能:コード分析による検証が可能な要件
  • プロセスベース:手動レビューまたは文書化が必要な要件
  • カバレッジ統計:ファミリー別の実装完了率

使用例:

# Get overall FRR implementation status
result = get_frr_implementation_status()
# Returns: Family-by-family breakdown with implementation rates

ユースケース:

  • FRR アナライザーの開発状況を追跡する
  • FRR のカバレッジにおける不足を特定する
  • FRR の実装優先順位を計画する
  • コンプライアンス自動化機能について報告する

出力例:

FRR Implementation Status:
- VDR Family: 59/59 patterns available
- RSC Family: 10/10 patterns available
- ADS Family: 22/22 patterns available
- Total: 199/199 patterns available

Code-Detectable: 145 FRRs (73%)
Process-Based: 54 FRRs (27%)
compare_with_rev4

特定の領域について、FedRAMP 20x と Rev 4/Rev 5 の要件を比較します。

パラメーター:

  • requirement_area(string):比較する領域(例:「continuous monitoring」、「vulnerability management」、「authorization boundary」、「evidence collection」、「change management」、「incident response」)
get_implementation_examples

特定の要件に関する実践的な実装例を取得します。

パラメーター:

  • requirement_id(string):要件識別子(例:「KSI-IAM-01」、「FRR-VDR-01」)
check_requirement_dependencies

FedRAMP 20x 要件間の依存関係を確認します。

パラメーター:

  • requirement_id(string):依存関係を確認する要件識別子
estimate_implementation_effort

特定の要件の実装工数を見積もります。

パラメーター:

  • requirement_id(string):工数を見積もる要件識別子
get_cloud_native_guidance

特定の Azure およびマルチクラウド技術に関するクラウドネイティブな実装ガイダンスを取得します。

パラメーター:

  • technology(string):ガイダンスを取得する技術(例:「kubernetes」、「containers」、「serverless」、「terraform」)

注: すべてのクラウドの例とベストプラクティスでは、Azure サービス(AKS、Azure Functions、Key Vault、Bicep など)を優先します。

validate_architecture

FedRAMP 20x 要件に照らしてシステムアーキテクチャを検証します。

パラメーター:

  • architecture_description(string):検証するアーキテクチャの説明
search_documentation

FedRAMP の公式ドキュメントの Markdown ファイルを検索し、指定したキーワードを探します。

パラメーター:

  • keywords (string):ドキュメント内で検索するキーワード

戻り値: 利用可能なすべての Markdown ファイルから、コンテキストを含む一致したドキュメントのセクション

注: 検索可能にするため、docs ディレクトリから Markdown ファイルを自動的に読み込みます。

get_documentation_file

FedRAMP ドキュメントの指定したファイルの全内容を取得します。

パラメーター:

  • filename (string):Markdown ファイル名(例:"overview.md"、"key-security-indicators.md")

戻り値: ドキュメントファイルの Markdown 全内容

list_documentation_files

利用可能な FedRAMP ドキュメントファイルをすべて一覧表示します。

戻り値: リポジトリから動的に検出された、すべての Markdown ドキュメントファイルの一覧

export_to_excel

FedRAMP 20x のデータを Excel ファイルにエクスポートして、オフラインでの分析やレポート作成に利用します。

パラメーター:

  • export_type (string):エクスポートするデータの種類:
    • "ksi" - 72 件すべての主要セキュリティ指標
    • "all_requirements" - すべてのファミリーにまたがる 329 件すべての要件
    • "definitions" - FedRAMP の用語定義すべて
  • output_path (string, optional):カスタム出力先のパス。指定しない場合は Downloads フォルダーに保存します

戻り値: プロフェッショナルな書式設定(スタイル付きヘッダー、罫線、ウィンドウ枠の固定)が適用された、生成済み Excel ファイルのパス

KSI エクスポートの列:

  1. KSI ID - 一意の識別子(例:KSI-AFR-01)
  2. Name - KSI 名
  3. Category - 管理策ファミリーのカテゴリ
  4. Status - 有効または廃止
  5. Statement - 要件の全文
  6. Note - 追加情報(例:廃止された KSI の後継に関する注記)
  7. NIST 800-53 Controls - 関連するセキュリティ管理策とそのタイトル
  8. Reference - 参照ドキュメント名(該当する場合)
  9. Reference URL - FedRAMP ドキュメントへのリンク(該当する場合)
  10. Impact Levels - 該当するレベル(低、中、高)

すべての要件のエクスポート列:

  1. Requirement ID - 一意の識別子
  2. Family - 管理策ファミリー
  3. Term/Name - 要件名
  4. Description - 説明の全文
  5. Document - ソースドキュメント

定義のエクスポート列:

  1. Term - FedRAMP の用語
  2. Definition - 用語の定義
  3. Notes - 追加の説明
  4. References - 関連ドキュメント

使用例:

  • すべての KSI をエクスポート:export_to_excel("ksi")
  • すべての要件をエクスポート:export_to_excel("all_requirements")
  • 定義をエクスポート:export_to_excel("definitions")
export_to_csv

FedRAMP 20x のデータを CSV ファイルにエクスポートして、データ分析やスプレッドシートへのインポートに利用します。

パラメーター:

  • export_type (string):エクスポートするデータの種類:
    • "ksi" - 72 件すべての主要セキュリティ指標
    • "all_requirements" - すべてのファミリーにまたがる 329 件すべての要件
    • "definitions" - FedRAMP の用語定義すべて
  • output_path (string, optional):カスタム出力先のパス。指定しない場合は Downloads フォルダーに保存します

戻り値: 生成された CSV ファイルのパス

列: Excel エクスポートと同じ構成です(各列の詳細は上記を参照)

使用例:

  • すべての KSI をエクスポート:export_to_csv("ksi")
  • すべての要件をエクスポート:export_to_csv("all_requirements")
  • 定義をエクスポート:export_to_csv("definitions")
generate_ksi_specification

KSI の製品仕様書(Word ドキュメント)を生成し、エンジニアリングの実装と計画を支援します。

パラメーター:

  • ksi_id(string):KSI 識別子(例:「KSI-AFR-01」)
  • evidence_collection_strategy(string):ユーザーが指定する、エビデンス収集戦略の概要説明
  • output_path(string、任意):カスタム出力パス。指定しない場合は、Downloads フォルダーに保存されます

戻り値: 生成された Word(.docx)ドキュメントのパス

ドキュメントの内容:

  • メタデータ:KSI ID、カテゴリ、影響レベル、ステータス、日付
  • 概要:FedRAMP 20x に沿った目的と範囲
  • 要件の記述:KSI の要件全文
  • NIST 800-53 コントロール:関連するセキュリティコントロールとタイトル
  • Azure ファーストの実装:推奨される Azure サービス、IaC ガイダンス、自動化戦略
  • エビデンス収集:ユーザー定義の戦略に加え、推奨されるエビデンスの種類と柔軟な収集スケジュール
  • 5 フェーズの実装計画:要件分析 → 設計 → 実装 → テスト → ドキュメント作成(スケジュールはエンジニアリングチームが決定)
  • チームの役割:クラウドアーキテクト、DevOps、セキュリティエンジニア、コンプライアンススペシャリストなど
  • 成功基準:実装検証のための測定可能な成果
  • リスクと軽減策:一般的なリスクと Azure 固有の軽減戦略
  • リソース:FedRAMP、NIST、Azure ドキュメントへのリンク

推奨 Azure サービス(KSI カテゴリに応じたコンテキスト認識型):

  • Microsoft Entra ID、Azure Policy、Azure Monitor(すべての KSI)
  • Microsoft Defender for Cloud、Azure Key Vault、Azure Firewall(カテゴリ固有)
  • Microsoft Sentinel、Azure Automation、Log Analytics(コントロール固有)

使用例:

Generate specification for KSI-AFR-01:
> generate_ksi_specification with ksi_id="KSI-AFR-01" 
  and evidence_collection_strategy="Collect Azure Policy compliance reports quarterly using Azure Automation runbooks. Store evidence in Azure Blob Storage with immutable storage policy."
generate_implementation_questions

プロダクトマネージャーとエンジニア向けの戦略的なインタビュー質問を生成し、十分な検討に基づく計画策定の議論を促進します。

パラメーター:

  • requirement_id(string):要件または KSI の識別子(例:「FRR-CCM-01」、「KSI-IAM-01」)

戻り値: ステークホルダーの役割別に整理された戦略的な質問

質問のカテゴリ:

  1. プロダクトマネージャー向けの戦略的な質問(10 問):

    • ビジネスへの影響と ROI
    • 顧客価値と競争上のポジション
    • リソースの配分と優先順位付け
    • 依存関係とフェーズ分け
  2. エンジニア向けの技術的な質問(15 問):

    • アーキテクチャと設計上の判断
    • Azure サービスの選定
    • 自動化の機会
    • モニタリングとエビデンス収集
    • 運用と保守
  3. 部門横断的な質問(10 問):

    • セキュリティとコンプライアンスの統合
    • ユーザーエクスペリエンスへの影響
    • トレーニングとサポートのニーズ
    • インシデント対応との連携
  4. Azure 固有の考慮事項(動的、最大 20 問):

    • Microsoft Entra ID の構成
    • Azure RBAC と Conditional Access
    • Log Analytics と Sentinel の統合
    • Azure Policy とガバナンス
    • Defender for Cloud のセットアップ
    • Key Vault と暗号化戦略

追加のガイダンス:

  • 意思決定フレームワーク(実装前に回答が必須の 5 つの質問)
  • 成功基準(測定可能な成果 5 項目)
  • 注意すべき兆候(警戒すべき兆候 5 項目)
  • 次のステップ(9 フェーズの実装アプローチ)
  • 推奨リソース(Microsoft のドキュメント、FedRAMP リソース、コミュニティ)
analyze_infrastructure_code

Infrastructure as Code(IaC)ファイルを分析し、FedRAMP 20x のコンプライアンス上の問題を特定して、実行可能な推奨事項を提示します。

パラメーター:

  • code(string):分析する IaC コードの内容
  • file_type(string):IaC ファイルの種類。"bicep" または "terraform"
  • file_path(string):分析対象ファイルのパス(レポート用)
  • context(string、任意):コードに関する追加のコンテキスト(例:PR の説明)
  • application_profile(string、任意):コンテキストに応じたフィルタリングで誤検知を減らすためのアプリケーションの種類。対応プロファイル:"cli-tool"、"mcp-server"、"web-app"、"api-service"、"iac-only"、"library"、"batch-job"、"full"(デフォルト:フィルタリングなし)

戻り値:

  • findings:要件 ID、重大度、説明、推奨事項を含むコンプライアンス上の指摘事項の配列
  • summary:優先度が高・中・低の問題と優れたプラクティスの件数
  • pr_comment:GitHub/ADO の PR コメントに適した形式の Markdown
  • application_context:(プロファイルが設定されている場合)有効なプロファイルと機能に関するメタデータ
  • context_filtered_count:(プロファイルが設定されている場合)コンテキストフィルタリングによって抑制された指摘事項の件数

対応言語:

  • Bicep:Azure Resource Manager テンプレート
  • Terraform:Azure RM プロバイダーのリソース

チェック項目: インフラストラクチャコードを 40 件以上の FedRAMP KSI に照らして分析します。対象には以下が含まれます。

  • アイデンティティとアクセス管理(MFA、RBAC、特権アクセス)
  • サービス構成(暗号化、シークレット管理、バックアップ)
  • ネットワークアーキテクチャ(セキュリティグループ、DDoS 保護、セグメンテーション)
  • 監視とログ記録(診断設定、監査ログ、アラート)
  • DevSecOps(変更管理、脆弱性スキャン、テスト)
  • プライバシーとデータ保護(データ分類、保持ポリシー)
  • インシデント対応(検出、ログ記録、自動化)
  • サプライチェーンセキュリティ(コンテナーのスキャン、信頼できるレジストリ)

使用例:

// This Bicep code will be flagged for missing diagnostic settings
resource storageAccount 'Microsoft.Storage/storageAccounts@2023-01-01' = {
  name: 'mystorageaccount'
  location: location
  properties: {
    // Missing: diagnostic settings for KSI-MLA-05
  }
}
analyze_application_code

FedRAMP 20x のセキュリティコンプライアンスに関する問題がないか、アプリケーションコードを分析します。

パラメーター:

  • code (string):分析するアプリケーションコードの内容
  • language (string):プログラミング言語 — "python"、"csharp"、"java"、"typescript"、または "javascript"
  • file_path (string):分析対象ファイルのパス(レポート用)
  • dependencies (array, optional):プロジェクトの依存関係の一覧(例:["flask==2.3.0", "requests==2.31.0"])
  • application_profile (string, optional):コンテキストを考慮したフィルタリングに使用するアプリケーションの種類。analyze_infrastructure_code と同じプロファイルを指定します。

戻り値:

  • findings:セキュリティ検出事項の配列(インフラストラクチャ分析と同じ構造)
  • summary:優先度が高・中・低の問題と、優れたプラクティスの件数
  • pr_comment:PR レビュー用に整形された Markdown
  • dependencies_checked:分析した依存関係の数

対応言語とフレームワーク:

  • Python:Flask、Django、FastAPI アプリケーション
  • C#:ASP.NET Core、Entity Framework、Azure SDK for .NET
  • Java:Spring Boot、Spring Security、Jakarta EE、Azure SDK for Java
  • TypeScript/JavaScript:Express、NestJS、Next.js、React、Angular、Vue、Azure SDK for JS

確認対象の FedRAMP 要件(フェーズ 1 + フェーズ 2):

フェーズ 1 — 基盤:

  • KSI-IAM-01:API の認証と認可
  • KSI-SVC-06:シークレット管理(ハードコードされたパスワード、API キー、証明書)
  • KSI-SVC-05:リソースの整合性(脆弱なライブラリ、安全でない関数)
  • KSI-PIY-02:セキュリティ目標および要件の文書化
  • KSI-MLA-05:診断ログの構成

フェーズ 2 — アプリケーションセキュリティ:

  • KSI-IAM-05:サービスアカウント管理(ハードコードされた認証情報ではなく、マネージド ID を使用)
  • KSI-CNA-03:マイクロサービスセキュリティ(サービス間認証、mTLS、レート制限)

フェーズ 3 — セキュアなコーディングプラクティス:

  • KSI-SVC-01:継続的改善(セキュリティ評価と改善)
  • KSI-SVC-02:ネットワーク暗号化(TLS、安全なデータ転送)
  • KSI-SVC-07:パッチ適用(セキュリティ更新、脆弱性の修正)
  • KSI-PIY-01:自動化されたインベントリ(リアルタイムの資産追跡)
  • KSI-PIY-03:文書化の要件
  • KSI-CNA-07:サービスメッシュセキュリティ(Istio/Linkerd)
  • KSI-IAM-04:最小権限アクセス
  • KSI-IAM-07:セッション管理とトークンのセキュリティ
analyze_cicd_pipeline

FedRAMP 20x DevSecOps への準拠に向けて、CI/CD パイプラインの設定を分析します。

パラメーター:

  • code(string):パイプライン設定の内容(YAML/JSON)
  • pipeline_type(string):パイプラインの種類。"github-actions"、"azure-pipelines"、"gitlab-ci"、または "generic"
  • file_path(string):パイプラインファイルのパス(レポート用)
  • application_profile(string、任意):コンテキストに応じたフィルタリングに使用するアプリケーションの種類。analyze_infrastructure_code と同じプロファイルです。

戻り値:

  • findings:DevSecOps の検出事項の配列(コード分析と同じ構造)
  • summary:優先度が高・中・低の問題と、優れたプラクティスの件数
  • pr_comment:PR レビュー用にフォーマットされた Markdown
  • pipeline_type:検出されたパイプラインプラットフォーム

対応プラットフォーム:

  • GitHub Actions(.github/workflows/*.yml)
  • Azure DevOps Pipelines(azure-pipelines.yml)
  • GitLab CI/CD(.gitlab-ci.yml)

確認対象の FedRAMP 要件(フェーズ 4):

  • KSI-CMT-01:変更管理の自動化(PR トリガー、必須レビュー、ブランチ保護)
  • KSI-CMT-02:デプロイ手順(承認ゲート、環境保護、ロールバック機能)
  • KSI-CMT-03:CI/CD での自動テスト(ユニットテスト、パイプラインでのセキュリティスキャン)
  • KSI-AFR-01:脆弱性スキャンの自動化(コンテナー、IaC、SAST/DAST ツール)
  • KSI-AFR-02:セキュリティ検出事項の修正(脆弱性がある場合のブロック、自動的な問題の作成)
  • KSI-CED-01:証拠の継続的な収集(アーティファクトのアップロード、テスト結果、保持ポリシー)

使用例:

# GitHub Actions workflow that will be flagged for missing security scans
name: Build
on: [push]

jobs:
  build:
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v3
      - run: docker build -t myapp .
      - run: docker push myapp:latest
      # ❌ No vulnerability scanning
      # ❌ No test execution
      # ❌ No evidence collection

💡 結果: アナライザーは、コンプライアンスの証拠として、Trivy によるコンテナースキャン、ユニットテストの実行、セキュリティゲート、アーティファクトのアップロードを追加するよう推奨します。

使用例:

# This Python code will be flagged for multiple issues
from flask import Flask

app = Flask(__name__)
API_KEY = "sk-1234567890abcdef"  # KSI-SVC-06: Hardcoded secret

@app.route('/api/users')  # KSI-IAM-01: Missing authentication
def get_users():
    users = [
        {'name': 'Alice', 'ssn': '123-45-6789'},  # PII in logs - see NIST SI-12
    ]
    return {'users': users}

自動 PR レビューワークフロー:

  1. PR を通じてコードを提出します(GitHub/Azure DevOps)
  2. アナライザーツールで IaC とアプリケーションコードを検査します
  3. FedRAMP 要件の引用を含む検出事項を生成します
  4. コンプライアンスレビューを PR コメントとして投稿します
  5. マージ前に開発者が問題に対処します

目的: リソースを投入する前に、実装上の考慮事項、トレードオフ、成功基準についてチームが深く検討できるよう支援します。計画セッション、設計レビュー、ステークホルダー間の認識合わせを促進するための質問です。

get_infrastructure_code_for_ksi

証拠収集を自動化するインフラストラクチャ用の IaC テンプレート(Bicep または Terraform)を生成します。

パラメーター:

  • ksi_id(string):Key Security Indicator の識別子(例:「KSI-IAM-01」、「KSI-MLA-01」)
  • infrastructure_type(string):「bicep」または「terraform」

戻り値: 証拠収集インフラストラクチャをデプロイするための IaC テンプレート

対応する KSI ファミリー:

  • IAM(ID およびアクセス管理):Microsoft Entra ID、Log Analytics ワークスペース、診断設定、自動化アカウント
  • MLA(監視、ログ記録、監査):Log Analytics ワークスペース、Azure Sentinel、診断設定、アラートルール
  • AFR(監査および財務報告):不変性を備えたストレージアカウント、イベントサブスクリプション、監査ログ
  • CNA(変更通知および承認):Event Grid トピック、Logic Apps、DevOps パイプライン、変更追跡
  • RPL(リリースパイプライン):Azure DevOps パイプライン、デプロイスロット、ロールバック機能、承認ゲート
  • SVC(サービスおよび脆弱性管理):Defender for Cloud、セキュリティ評価、コンプライアンスダッシュボード

使用例:

> get_infrastructure_code_for_ksi with ksi_id="KSI-IAM-01" and infrastructure_type="bicep"

出力に含まれる内容:

  • Azure リソース定義(Log Analytics、Storage、Event Grid など)
  • 証拠収集用の診断設定
  • 保持ポリシーと不変性
  • Azure Monitor および Sentinel との統合
  • 証拠収集の自動化
  • RBAC ロールとアクセス許可
get_evidence_collection_code

KSI の証拠をプログラムで収集して保存するビジネスロジックのコード(Python、C#、PowerShell、Java、または TypeScript)を生成します。

パラメーター:

  • ksi_id(string):Key Security Indicator の識別子(例:「KSI-IAM-01」)
  • language(string):「python」、「csharp」、「powershell」、「java」、または「typescript」のいずれか(「javascript」も受け付けます)

戻り値: 認証、証拠の収集、保存を行うコード例

コードの機能:

  • 認証:マネージド ID またはローカル開発向けの Azure DefaultAzureCredential パターン
  • 証拠の収集:Microsoft Graph API、Azure Resource Manager、Azure Monitor の SDK
  • 証拠の保存:不変性とメタデータのタグ付けに対応した Azure Blob Storage への保存
  • エラー処理:try-catch パターンとロギング
  • ドキュメント:各手順を説明するインラインコメント

対応言語:

  • Python:azure-identity、azure-storage-blob、azure-monitor-query、msgraph-sdk を使用
  • C#:Azure.Identity、Azure.Storage.Blobs、Azure.Monitor.Query、Microsoft.Graph を使用
  • PowerShell:Az.Accounts、Az.Storage、Az.Monitor、Microsoft.Graph モジュールを使用
  • Java:Azure Identity、Azure Storage Blobs、Azure Resource Manager、Microsoft Graph SDK を使用
  • TypeScript/JavaScript:@azure/identity、@azure/storage-blob、@azure/arm-resources、@microsoft/microsoft-graph-client を使用

使用例:

> get_evidence_collection_code with ksi_id="KSI-MLA-01" and language="python"

出力に含まれる内容:

  • SDK のインポートと認証の設定
  • KSI に固有の証拠収集ロジック
  • JSON 形式への変換とメタデータのタグ付け
  • 不変性に対応した Blob Storage へのアップロード
  • エラー処理と再試行ロジック
get_evidence_automation_architecture

証拠を自動収集するシステムのアーキテクチャに関するガイダンスを取得します。

パラメーター:

  • scope(string):アーキテクチャの範囲。「minimal」、「single-ksi」、「category」、または「all」

戻り値: コンポーネント、データフロー、実装ガイダンスを含むアーキテクチャパターン

アーキテクチャの範囲:

  1. minimal:パイロットプロジェクト向けのクイックスタートアーキテクチャ

    • 単一の Log Analytics ワークスペース
    • 証拠を定期的に収集する Azure Function
    • 基本的な保持設定を備えた Blob Storage
    • 通知用の Event Grid
  2. single-ksi:1 つの KSI 向けの本番環境アーキテクチャ

    • 専用の証拠収集インフラストラクチャ
    • 監視機能を備えた Azure Functions
    • セキュリティ保護のためのマネージド ID
    • Sentinel との統合
  3. category:1 つの KSI カテゴリ(IAM、MLA など)向けのエンタープライズアーキテクチャ

    • カテゴリ固有の証拠収集ツール
    • 一元化された証拠ストレージ
    • レポート作成ダッシュボードの自動化
    • Azure Policy との統合
  4. all:72 個の KSI 向けのエンタープライズアーキテクチャ

    • マルチリージョンでの証拠収集
    • 高可用性設計
    • コンプライアンスレポートの自動化
    • GRC ツールとの統合

使用例:**

> get_evidence_automation_architecture with scope="all"

出力に含まれる内容:

  • コンポーネント図と説明
  • データフローアーキテクチャ
  • セキュリティと ID のパターン
  • 監視とアラートの戦略
  • 証拠の保存と保持
  • 災害復旧に関する考慮事項
  • Azure サービスとの統合パターン
  • スケーリングに関する推奨事項
  • 実装手順

利用可能なプロンプト

このサーバーは、FedRAMP コンプライアンスのワークフロー向けに 18 個のプロンプトを提供します。

計画・評価プロンプト

initial_assessment_roadmap - FedRAMP 20x 認可に向けた6フェーズのロードマップ。チェックリスト、成果物、重要な成功要因を含みます(スケジュールはエンジニアリングチームが決定します)。

gap_analysis - 現状と FedRAMP 20x 要件を比較し、優先順位付けと是正計画を行うための詳細なギャップ分析フレームワーク

vendor_evaluation - カテゴリー別の質問、スコアカードのテンプレート、評価基準を含むベンダー評価フレームワーク

migration_from_rev5 - FedRAMP Rev 5 から 20x への詳細な移行計画。7フェーズのアプローチ、ギャップ分析、要件マッピングを含みます(スケジュールと予算はチームが決定します)。

significant_change_assessment - FRR-CCM-SC に基づいて重要な変更を評価するためのフレームワーク。影響分析、テスト要件、認可の更新トリガーを含みます。

実装・自動化プロンプト

ksi_implementation_priorities - 8つの優先フェーズにわたって72の Key Security Indicators をすべて実装するための優先順位付きガイド。依存関係のマッピングを含みます(展開スケジュールはエンジニアリングチームが決定します)。

azure_ksi_automation - Microsoft、Azure、M365 の機能を使用して72の KSI を実装するためのガイド。PowerShell スクリプト、Azure CLI コマンド、Microsoft Graph API 連携、KQL クエリ、Azure Functions/Logic Apps、証拠収集フレームワーク、Defender スイート、Entra ID、Key Vault、Sentinel との連携を含みます。

api_design_guide - エンドポイント、認証、OSCAL 形式、使用例を含む Authorization Data Sharing API(FRR-ADS)のガイド

authorization_boundary_review - FedRAMP 20x 要件に基づく認可境界、システム間接続、データフローの定義と文書化に関するガイダンス

監視・コンプライアンスプロンプト

continuous_monitoring_setup - 自動化、メトリクス、レポート作成を含む、FedRAMP 20x 要件に準拠した継続的監視プログラムの確立に関するガイド

quarterly_review_checklist - 72の KSI、脆弱性レビュー、変更レビューを対象とする FedRAMP 20x 四半期レビュー(FRR-CCM-QR)のチェックリスト

vulnerability_remediation_timeline - FedRAMP 20x VDR 要件に準拠した脆弱性修正のタイムラインと優先順位付けフレームワーク

監査・ドキュメント作成プロンプト

audit_preparation - 証拠収集、一般的な指摘事項、面接準備を含む FedRAMP 20x 評価準備のガイド(準備スケジュールはチームが決定します)。

ato_package_checklist - 必要な成果物、テンプレート、提出要件を含む、Authority to Operate(ATO)パッケージ準備のチェックリスト

documentation_generator - OSCAL SSP テンプレート、手順書テンプレート(VDR、ICP、SCN)、KSI 実装ドキュメントのテンプレート

FRR コンプライアンス・コードレビューのプロンプト

frr_code_review - PR ワークフローとの連携により、AST を活用したセマンティック分析で10の FRR ファミリー(VDR、ADS、RSC、UCM、CCM、SCN、MAS、ICP、FSI、PVA)全体にわたって FedRAMP Requirements(FRR)に照らしてコードをレビューするためのガイド

frr_family_assessment - 10の FRR ファミリーに関する199の FRR 要件を対象に、詳細なチェックリスト、評価の質問、証拠計画を含むファミリー別評価ガイド

frr_implementation_roadmap - 優先順位付けフレームワーク、Azure サービスの推奨事項、KSI 連携戦略を含む、199の FRR 要件すべてを実装するための戦略的な16週間・4フェーズのロードマップ

KSI + FRR 分析を組み合わせた例

MCP サーバーは、コンプライアンス分析に向けて Key Security Indicators(KSI)と FedRAMP Revised Requirements(FRR)を組み合わせた統合分析機能を提供します。これらの例では、KSI コードアナライザーと FRR 分析ツールを併用して、包括的なセキュリティ評価を行う方法を紹介します。

例1:ネットワークセグメンテーション(KSI-CNA-01 + FRR-RSC ファミリー)

シナリオ: KSI の追跡と FRR への準拠の両方を目的としたネットワークセキュリティ制御の検証

# Step 1: Analyze infrastructure code with KSI analyzer
from analyzers.ksi.factory import get_factory

bicep_code = """
resource nsg 'Microsoft.Network/networkSecurityGroups@2023-11-01' = {
  name: 'prod-nsg'
  location: location
  properties: {
    securityRules: [
      {
        name: 'allow-https'
        properties: {
          priority: 100
          direction: 'Inbound'
          access: 'Allow'
          protocol: 'Tcp'
          sourceAddressPrefix: '*'
          destinationAddressPrefix: '*'
          destinationPortRange: '443'
        }
      }
    ]
  }
}
"""

# Analyze against KSI-CNA-01 (Network Segmentation)
factory = get_factory()
ksi_result = factory.analyze("KSI-CNA-01", bicep_code, "bicep", "nsg.bicep")

print(f"KSI-CNA-01 Analysis:")
print(f"  Compliant: {ksi_result.is_compliant}")
print(f"  Findings: {len(ksi_result.findings)}")
for finding in ksi_result.findings:
    print(f"  - {finding.severity.value}: {finding.message}")

# Step 2: Analyze against FRR-RSC (Secure Configuration) requirements
frr_analysis = analyze_frr_family(
    family="RSC",
    code=bicep_code,
    language="bicep",
    file_path="nsg.bicep"
)

print(f"\nFRR-RSC Family Analysis:")
print(f"  Total FRRs: {frr_analysis['total_frrs']}")
print(f"  Compliant: {frr_analysis['compliant_count']}")
print(f"  Non-compliant: {frr_analysis['non_compliant_count']}")

# Step 3: Get integrated remediation guidance
for frr_id, result in frr_analysis['results'].items():
    if not result['compliant']:
        print(f"\n{frr_id}: {result['frr_name']}")
        print(f"  Related KSI: {get_frr_metadata(frr_id)['related_ksis']}")
        print(f"  Remediation: {result['recommendation']}")

# Output:
# KSI-CNA-01 Analysis:
#   Compliant: False
#   Findings: 2
#   - HIGH: NSG allows traffic from any source (sourceAddressPrefix: *)
#   - MEDIUM: NSG rule priority too permissive (100 vs recommended >1000)
#
# FRR-RSC Family Analysis:
#   Total FRRs: 10
#   Compliant: 7
#   Non-compliant: 3
#
# FRR-RSC-01: Network Security Groups Configuration
#   Related KSI: ['KSI-CNA-01', 'KSI-CNA-03']
#   Remediation: Use specific source IP ranges, implement deny-by-default rules

統合のメリット:

  • KSI 分析により、戦術的なコードレベルの所見が得られます
  • FRR 分析により、戦略的なコンプライアンスの範囲を確認できます
  • 統合ビューで、セキュリティ上の欠陥とポリシーへの準拠の両方を確認できます
  • 修正ガイダンスにより、コードの修正とコンプライアンス要件を関連付けます
例2:脆弱性管理(KSI-AFR-04 + FRR-VDR ファミリー)

シナリオ: 脆弱性スキャンの設定と修正プロセスの検証

# Step 1: Analyze vulnerability scanning implementation with KSI
cicd_pipeline = """
name: Security Scanning
on:
  push:
    branches: [main]
  pull_request:
  schedule:
    - cron: '0 0 * * *'  # Daily scans

jobs:
  vulnerability-scan:
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v3
      
      - name: Run Trivy vulnerability scanner
        uses: aquasecurity/trivy-action@master
        with:
          scan-type: 'fs'
          scan-ref: '.'
          format: 'json'
          output: 'trivy-results.json'
          severity: 'CRITICAL,HIGH,MEDIUM'
      
      - name: Upload scan results
        uses: actions/upload-artifact@v3
        with:
          name: trivy-results
          path: trivy-results.json
          retention-days: 90
"""

# Analyze against KSI-AFR-04 (Vulnerability Detection)
ksi_result = factory.analyze("KSI-AFR-04", cicd_pipeline, "yaml", ".github/workflows/security.yml")

print(f"KSI-AFR-04 Analysis:")
print(f"  Compliant: {ksi_result.is_compliant}")
print(f"  Evidence: {ksi_result.evidence}")

# Step 2: Analyze against all FRR-VDR requirements (59 total)
vdr_analysis = analyze_frr_family(
    family="VDR",
    code=cicd_pipeline,
    language="yaml",
    file_path=".github/workflows/security.yml"
)

print(f"\nFRR-VDR Family Analysis (59 requirements):")
print(f"  Scan configuration: {vdr_analysis['results']['FRR-VDR-01']['compliant']}")
print(f"  Remediation timeframes: {vdr_analysis['results']['FRR-VDR-TF-01']['compliant']}")
print(f"  KEV tracking: {vdr_analysis['results']['FRR-VDR-TF-02']['compliant']}")
print(f"  Authenticated scanning: {vdr_analysis['results']['FRR-VDR-AC-01']['compliant']}")

# Step 3: Get evidence automation recommendations
evidence_guidance = get_frr_evidence_automation("FRR-VDR-01")
ksi_evidence = get_ksi_evidence_automation("KSI-AFR-04")

print(f"\nIntegrated Evidence Collection:")
print(f"  FRR-VDR-01 Artifacts: {evidence_guidance['evidence_artifacts']}")
print(f"  KSI-AFR-04 Queries: {ksi_evidence['collection_methods']}")
print(f"  Storage: Azure Blob (retention: 730 days per FRR-VDR, KSI-MLA-02)")

# Output:
# KSI-AFR-04 Analysis:
#   Compliant: True
#   Evidence: Daily vulnerability scans, artifact retention 90 days
#
# FRR-VDR Family Analysis (59 requirements):
#   Scan configuration: True
#   Remediation timeframes: False (missing deadline tracking)
#   KEV tracking: False (no CISA KEV integration)
#   Authenticated scanning: False (filesystem scan only)
#
# Integrated Evidence Collection:
#   FRR-VDR-01 Artifacts: ['scan-results.json', 'remediation-status.csv', 'kev-report.pdf']
#   KSI-AFR-04 Queries: ['Log Analytics vulnerability metrics', 'Defender scan results']
#   Storage: Azure Blob (retention: 730 days per FRR-VDR, KSI-MLA-02)

統合のメリット:

  • KSI-AFR-04 により、スキャンツールの設定を検証します
  • FRR-VDR ファミリーにより、59 件すべての脆弱性要件への準拠を確認します
  • 統合分析により、不備(KEV の追跡、認証済みスキャン)を特定します
  • 証拠の自動化に関する推奨事項で、KSI と FRR の両方のニーズに対応します
例3:認可データの共有(KSI-CED-01 + FRR-ADS ファミリー)

シナリオ: 機械可読なコンプライアンスデータのための API 実装の検証

# Step 1: Analyze API implementation with KSI
api_code = """
@app.route('/api/authorization/technical-controls', methods=['GET'])
@require_auth
def get_technical_controls():
    \"\"\"FRR-ADS-TC-02: Technical controls data endpoint\"\"\"
    
    # Query compliance data from storage
    controls_data = storage_client.get_blob(
        container='security-controls',
        blob='latest-technical-controls.json'
    )
    
    response = {
        'metadata': {
            'timestamp': datetime.utcnow().isoformat(),
            'version': '1.0',
            'frr_requirement': 'FRR-ADS-TC-02',
            'classification': 'CUI'
        },
        'data': json.loads(controls_data)
    }
    
    return jsonify(response), 200
"""

# Analyze against KSI-CED-01 (Continuous Evidence Delivery)
ksi_result = factory.analyze("KSI-CED-01", api_code, "python", "api/authorization.py")

print(f"KSI-CED-01 Analysis:")
print(f"  API endpoint defined: {ksi_result.is_compliant}")
print(f"  Authentication required: {'@require_auth' in api_code}")

# Step 2: Analyze against FRR-ADS family (22 requirements)
ads_analysis = analyze_frr_family(
    family="ADS",
    code=api_code,
    language="python",
    file_path="api/authorization.py"
)

print(f"\nFRR-ADS Family Analysis (22 requirements):")
for frr_id in ['FRR-ADS-01', 'FRR-ADS-02', 'FRR-ADS-AC-01', 'FRR-ADS-TC-02']:
    result = ads_analysis['results'][frr_id]
    print(f"  {frr_id}: {result['compliant']} - {result['frr_name']}")

# Step 3: List all required FRR-ADS-TC endpoints
tc_endpoints = list_frrs_by_family("ADS")
tc_frrs = [frr for frr in tc_endpoints if 'TC-' in frr['frr_id']]

print(f"\nRequired FRR-ADS-TC Endpoints ({len(tc_frrs)} total):")
for frr in tc_frrs:
    print(f"  {frr['frr_id']}: {frr['name']}")
    metadata = get_frr_metadata(frr['frr_id'])
    print(f"    Related KSI: {metadata['related_ksis']}")

# Output:
# KSI-CED-01 Analysis:
#   API endpoint defined: True
#   Authentication required: True
#
# FRR-ADS Family Analysis (22 requirements):
#   FRR-ADS-01: True - Machine-readable authorization data
#   FRR-ADS-02: True - Real-time compliance data API
#   FRR-ADS-AC-01: True - API authentication and access control
#   FRR-ADS-TC-02: True - Technical controls data endpoint
#
# Required FRR-ADS-TC Endpoints (7 total):
#   FRR-ADS-TC-01: Continuous monitoring data
#     Related KSI: ['KSI-CED-01', 'KSI-MLA-01']
#   FRR-ADS-TC-02: Technical controls data
#     Related KSI: ['KSI-CED-01']
#   FRR-ADS-TC-03: Vulnerability data
#     Related KSI: ['KSI-CED-01', 'KSI-AFR-04']
#   [... 4 more endpoints ...]

統合のメリット:

  • KSI-CED-01 により、証拠の配信メカニズムを検証します
  • FRR-ADS ファミリーにより、22 件の認可データ共有要件に対応します
  • 統合分析により、どの KSI がどの FRR エンドポイントに対応するかを特定します
  • 機械可読なコンプライアンスデータの要件をサポートします
例4:デプロイ前スキャン

シナリオ: 本番環境へのデプロイ前に、KSI と FRR を組み合わせてコンプライアンスを分析します

# Complete infrastructure/application scan
terraform_infra = open('main.tf', 'r').read()
app_code = open('app.py', 'r').read()
cicd_pipeline = open('.github/workflows/deploy.yml', 'r').read()

# Step 1: Analyze against all 72 KSIs
print("KSI Analysis (72 indicators):")
all_ksi_results = factory.analyze_all_ksis(terraform_infra, "terraform", "main.tf")
ksi_summary = {
    'compliant': sum(1 for r in all_ksi_results if r.is_compliant),
    'non_compliant': sum(1 for r in all_ksi_results if not r.is_compliant),
    'high_severity': sum(1 for r in all_ksi_results for f in r.findings if f.severity.value == 'HIGH')
}
print(f"  Total KSIs analyzed: {len(all_ksi_results)}")
print(f"  Compliant: {ksi_summary['compliant']}")
print(f"  Non-compliant: {ksi_summary['non_compliant']}")
print(f"  High-severity findings: {ksi_summary['high_severity']}")

# Step 2: Analyze against all 199 FRRs
print("\nFRR Analysis (199 requirements):")
all_frr_results = analyze_all_frrs(
    code=terraform_infra,
    language="terraform",
    file_path="main.tf"
)

frr_summary = {
    'compliant': all_frr_results['compliant_count'],
    'non_compliant': all_frr_results['non_compliant_count'],
    'not_applicable': all_frr_results['not_applicable_count']
}
print(f"  Total FRRs analyzed: {all_frr_results['total_frrs']}")
print(f"  Compliant: {frr_summary['compliant']}")
print(f"  Non-compliant: {frr_summary['non_compliant']}")
print(f"  Not applicable: {frr_summary['not_applicable']}")

# Step 3: Family-specific deep dive on critical families
critical_families = ['VDR', 'ADS', 'CCM', 'RSC', 'UCM']
print("\nCritical Family Analysis:")
for family in critical_families:
    family_result = analyze_frr_family(family, terraform_infra, "terraform", "main.tf")
    print(f"  FRR-{family}: {family_result['compliant_count']}/{family_result['total_frrs']} compliant")

# Step 4: Generate deployment checklist
print("\nPre-Deployment Checklist:")
print("  [" + ("✓" if ksi_summary['high_severity'] == 0 else "✗") + "] No high-severity KSI findings")
print("  [" + ("✓" if frr_summary['non_compliant'] == 0 else "✗") + "] All applicable FRRs compliant")
print("  [" + ("✓" if frr_summary['non_compliant'] < 10 else "✗") + "] Less than 10 FRR findings")
print("  [" + ("✓" if ksi_summary['compliant'] >= 65 else "✗") + "] At least 65/72 KSIs compliant")

# Step 5: Get implementation status for tracking
ksi_status = get_ksi_implementation_status()
frr_status = get_frr_implementation_status()

print("\nCompliance Tracking:")
print(f"  KSI Implementation: {ksi_status['implementation_percentage']}%")
print(f"  FRR Implementation: {frr_status['overall_compliance_percentage']}%")
print(f"  Combined Score: {(ksi_status['implementation_percentage'] + frr_status['overall_compliance_percentage']) / 2}%")

# Output:
# KSI Analysis (72 indicators):
#   Total KSIs analyzed: 72
#   Compliant: 58
#   Non-compliant: 14
#   High-severity findings: 5
#
# FRR Analysis (199 requirements):
#   Total FRRs analyzed: 199
#   Compliant: 167
#   Non-compliant: 18
#   Not applicable: 14
#
# Critical Family Analysis:
#   FRR-VDR: 45/59 compliant
#   FRR-ADS: 22/22 compliant
#   FRR-CCM: 18/25 compliant
#   FRR-RSC: 8/10 compliant
#   FRR-UCM: 4/4 compliant
#
# Pre-Deployment Checklist:
#   [✗] No high-severity KSI findings
#   [✗] All applicable FRRs compliant
#   [✓] Less than 10 FRR findings
#   [✓] At least 65/72 KSIs compliant
#
# Compliance Tracking:
#   KSI Implementation: 80.6%
#   FRR Implementation: 90.3%
#   Combined Score: 85.4%

統合のメリット:

  • 72 件の KSI と 199 件の FRR を対象とした分析
  • 1つのコマンドでコンプライアンス分析の結果を取得できます
  • ファミリーごとの分析により、優先領域を明確にします
  • デプロイ承認に向けたチェックリストを自動作成します
  • 継続的な改善に向けた追跡指標を提供します
推奨ワークフロー
  1. 開発フェーズ:KSI アナライザーを使用して、戦術的なコードレビューを実施します

    • factory.analyze(ksi_id, code, language, file_path) で、特定のセキュリティチェックを実施します
    • analyze_frr_code(frr_id, code, language, file_path) で、要件への準拠を検証します
  2. コミット前フェーズ:重要な FRR ファミリーに照らして分析します

    • analyze_frr_family("VDR", code, language, file_path) で、脆弱性管理を確認します
    • analyze_frr_family("RSC", code, language, file_path) で、安全な設定を確認します
  3. CI/CD パイプライン:デプロイ前にコンプライアンスを分析します

    • factory.analyze_all_ksis(code, language, file_path) で、すべての KSI を対象にします
    • analyze_all_frrs(code, language, file_path) で、すべての FRR を対象にします
  4. 四半期レビュー:コンプライアンスの追跡と報告を行います

    • get_ksi_implementation_status() で、KSI の進捗を確認します
    • get_frr_implementation_status() で、FRR への準拠状況を確認します
    • 関係者向けに、KSI と FRR をまとめたコンプライアンスレポートを作成します

データソース

データは、FedRAMP の公式リポジトリから取得します: https://github.com/FedRAMP/docs/tree/main/data

貢献

貢献を歓迎します!以下については、CONTRIBUTING.md をご覧ください:

  • 開発環境のセットアップとテスト
  • セキュリティスキャンの要件
  • 依存関係の管理ガイドライン
  • プルリクエストの手順
  • プロジェクトの構成とアーキテクチャ
  • テストに関する完全なドキュメント

セキュリティ

セキュリティ脆弱性の報告とセキュリティのベストプラクティスについては、SECURITY.md をご覧ください。

貢献

貢献を歓迎します!以下については、CONTRIBUTING.md をご覧ください:

  • 開発環境のセットアップとテスト
  • セキュリティスキャンの要件
  • 依存関係の管理ガイドライン
  • プルリクエストの手順

ライセンス

MIT ライセンス — 詳細は LICENSE ファイルをご覧ください。

このプロジェクトはオープンソースであり、貢献を歓迎します!ガイドラインについては、CONTRIBUTING.md をご覧ください。

FedRAMP データは、米国一般調達局がパブリックドメインのコンテンツとして提供しています。

参考資料

コメント

MCP は初めてですか?

プロトコルの概要から最初のサーバーの導入まで、よくある疑問にまとめて答えます。

AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。