Token导航 LogoToken导航TokenDH.com
Fed Ramp20x MCP logo
运维云端stdio官方级别未说明来源级核验

Fed Ramp20x MCP

MCP Server

一个提供FedRAMP 20x安全要求和控制访问的协议服务器,优先支持Azure云服务。

工具数

37

提示词数

0

GitHub Stars

4

资源数

0
PythonClaude云端部署Claude DesktopClaudeVS Code

安装说明

本站只整理中文说明和来源信息,不托管安装包,也不代用户安装。

作者 / 组织

KevinRabun

提供方

KevinRabun

最后核验

2026/5/17 20:38

运行时

Python

快速接入

先看主来源和安装命令,再打开仓库或文档;下面只保留这个条目的关键接入事实。

命令预览

python -m venv .venv

详细介绍

FedRAMP 20x MCP服务器

![Tests](https://github.com/KevinRabun/FedRAMP20xMCP/actions/workflows/test.yml) ](https://pypi.org/project/fedramp-20x-mcp/) ](https://pypi.org/project/fedramp-20x-mcp/)

MCP(模型上下文协议)服务器,提供对FedRAMP 20x安全要求和控制的访问 Azure优先指导.

概述

此服务器从官方加载FedRAMP 20x数据 FedRAMP文档库 并提供按控件、族或关键字查询需求的工具。

数据来源:

  • 需求数据: JSON文件来自 (根目录)
  • 文档: Markdown文件来自

Azure焦点: 所有实施示例、架构模式和供应商建议都优先考虑Microsoft Azure服务(Azure政府、Microsoft Entra ID、Azure密钥库、AKS、Azure功能、二头肌等),同时在适当的情况下保持与云无关。

数据覆盖

服务器提供访问 321要求 FedRAMP 20x文档中的(199个FRR+72个KSI+50个FRD):

FedRAMP要求(FRR)-10个系列的199项要求:

  • 自动依赖监视系统 -授权数据共享(20项要求)
  • CCM -协作持续监控(25项要求)
  • FSI公司 -FedRAMP安全收件箱(16项要求)
  • 互联网内容提供商 -事故沟通程序(9项要求)
  • MAS -最低评估范围(12项要求)
  • 聚乙烯醇 -持续验证和评估(22项要求)
  • 皇家莎士比亚剧团 -推荐的安全配置(10项要求)
  • 系统变更号 -重大变更通知(22项要求)
  • 加州大学美熹德分校 -使用加密模块(4项要求)
  • 维生素D受体 -漏洞检测和响应(57项要求)
  • KSI -关键安全指标(2项要求)

关键安全指标(KSI)-11个系列的72个指标:

  • 非洲 -架构、功能和资源(11个指标)
  • CED -持续证据交付(4个指标)
  • 主磁带电路 -持续监测和测试(5个指标)
  • 中央通讯社 -云原生架构(8个指标)
  • 身份和访问管理 -身份和访问管理(7个指标)
  • 印度卢比 -事故和险情报告(3个指标)
  • 现代语言协会 -监控、记录和警报(8个指标)
  • 拼呀 -隐私和透明度(8个指标)
  • RPL -复原力和恢复规划(4个指标)
  • 支持向量分类 -安全编码和漏洞管理(10个指标)
  • 总外周阻力 -第三方风险管理(4个指标)

FedRAMP定义(FRD)-50个官方术语定义

特性

  • 🎯 自动证据收集(新):针对65个具有Azure本机服务、即用型查询和工件规范的活动KSI的自动化指南
  • 按控件查询:获取有关特定FedRAMP要求的详细信息
  • 按家庭查询:列出一个家庭中的所有要求
  • 关键词搜索:使用关键字搜索所有要求
  • FedRAMP定义:查找FedRAMP官方术语定义
  • 关键安全指标:访问和查询FedRAMP关键安全指标(KSI)及其实施状态
  • 文档搜索:搜索和检索官方FedRAMP文档标记文件
  • 动态内容:自动发现并加载所有markdown文档文件
  • 实施计划:生成战略性面试问题,帮助产品经理和工程师思考FedRAMP 20x实施考虑因素
  • AST驱动的代码分析:使用树保姆进行高级抽象语法树解析,以实现跨Python、C#、Java、TypeScript/JavaScript、Dimist和Terraform的准确、上下文感知的安全分析
  • 语义分析:具有符号解析、控制流分析和过程间分析功能的深度代码理解
  • 🚀 基于模式的体系结构:跨23个需求族的381个YAML模式的统一分析引擎,支持KSI和FRR的合规性分析
  • 模式引擎:跨14种语言的声明性YAML驱动检测,采用AST优先分析和智能查找分类
  • 🎯 上下文感知过滤(新):通过指定应用程序类型减少误报(cli-tool, mcp-server, web-app, api-service, iac-only, library, batch-job, full)通过 application_profile 分析工具参数

基于模式的分析架构

服务器使用 基于统一模式的体系结构 对于所有FedRAMP 20x合规性分析:

架构概述:

  • 381个YAML模式 穿过 23个需求家庭
  • 单一分析引擎 (GenericPatternAnalyzer)取代271台传统分析仪
  • 支持14种语言:Python、C#、Java、TypeScript、JavaScript、二头肌、地形、GitHub操作、Azure管道、GitLab CI、YAML、JSON、Dockerfile、GitHub
  • 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. 图案加载:从加载的YAML模式 data/patterns/ 目录
  2. 分析执行:使用树型AST解析和模式匹配分析代码
  3. 寻找世代:模式生成具有严重性、描述和补救措施的发现
  4. 结果聚合:按具有重复数据消除功能的需求系列对结果进行分组

优点:

  • 一致性:所有语言的检测逻辑相同
  • 可维护性:更新YAML中的模式,而不是Python代码
  • 演出:模式编译和缓存优化了分析速度
  • 可扩展性:添加新模式而不更改代码
  • 准确度:基于AST的检测减少了误报

重要澄清:OSCAL格式 FedRAMP 20x需要 机器可读的 用于授权数据共享的格式(JSON、XML或结构化数据)。 FedRAMP 20x要求中未提及OSCAL -这是一个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 -模型上下文协议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 -树保姆的Python语言绑定
  • tree-sitter-c-sharp>=0.21.0 -树形图的C#语言绑定
  • tree-sitter-java>=0.21.0 -树形图的Java语言绑定
  • tree-sitter-javascript>=0.21.0 -JavaScript/TypeScript语言绑定

故障排除:

如果遇到问题,请参阅 高级设置指南 了解详细的故障排除步骤。

安全

漏洞披露: 如果您发现安全漏洞,请参阅我们的 安全策略 负责披露程序(KSI-PIY-03)。

审核日志记录: 出于审计目的,所有MCP服务器操作都记录到stderr中(KSI-MLA-05)。

安全功能:

  • ✅ 无需身份验证(本地开发工具)
  • ✅ 无联邦客户数据处理
  • ✅ 仅HTTPS连接到GitHub
  • ✅ 1小时缓存TTL减少外部请求
  • ✅ 所有依赖项都使用最低安全版本

有关完整的安全文档,请参阅 安全.md.

用法

使用VS Code和GitHub Copilot

  1. 安装VS Code MCP扩展 (如果尚未安装)
  1. 配置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代码用户设置(settings.json):

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

安全说明: 请勿使用 "alwaysAllow" 在配置中。VS Code将在首次使用时提示您授予权限,这是一种安全最佳实践。

  1. 可选:配置VS代码设置 通过复制 .vscode/settings.json.example.vscode/settings.json
  1. 重新加载VS代码 激活MCP服务器
  1. 授予权限 当VS代码提示时(仅限首次使用)
  1. 与GitHub Copilot聊天一起使用:

- 打开Copilot聊天 - 询问有关FedRAMP 20x要求的问题 - 使用 @workspace 查询特定控件或族 - 访问所有48个工具和15个综合提示

使用克劳德桌面

将此服务器添加到您的Claude Desktop配置中(~/Library/Application Support/Claude/claude_desktop_config.json 在macOS或 %APPDATA%\Claude\claude_desktop_config.json 在Windows上):

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

注: 替换 /absolute/path/to/FedRAMP20xMCP 使用您的实际安装路径。

与MCP检查员一起

使用MCP检查器测试服务器:

npx @modelcontextprotocol/inspector python -m fedramp_20x_mcp

⚠️ 副驾驶执行政策

该存储库对所有AI辅助编码都使用严格的说明。

请参阅: 副驾驶说明

高级配置

有关CI/CD集成、Azure和GitHub的多服务器设置或详细的故障排除,请参阅:

可用工具

服务器提供 48工具 分为以下几类:

核心工具(8): 查询要求(get_control、list_family_controls、search_requirements)、定义(get_definition、list_definition、search_definition)和ksi(get_ksi、list_ksi) KSI工具(9): KSI实施状态、证据自动化、证据查询、证据工件、实施矩阵、实施摘要、覆盖摘要、覆盖状态、家族状态 FRR分析工具(7): 根据特定FRR、所有FRR或FRR系列分析代码;列出FRR;获取FRR元数据、证据自动化和实施状态 文档工具(3): 搜索和检索FedRAMP文档 增强工具(6): 实施示例、依赖关系、工作量估算、云原生指导、架构验证、版本4比较 导出工具(2): Excel/CSV导出 规划工具(2): 生成实施问题和分步清单 证据收集工具(4): 基础架构代码模板、集合代码、架构指南、KSI规范 代码分析工具(4): 基于AST的基础设施代码、应用程序代码、CI/CD管道和FedRAMP配置验证分析 安全工具(2): 包和依赖文件的CVE漏洞检查 代码扩展工具(1): 在代码中添加FedRAMP需求注释

get_control

获取有关特定FedRAMP要求或控制的详细信息。

参数:

  • control_id (字符串):需求标识符(例如“FRD-ALL-01”、“KSI-AFR-01”)

list_family_controls

列出特定系列中的所有要求。

参数:

  • family (string):家族标识符(例如,“FRD”、“KSI”、“MAS”)

搜索要求

搜索包含特定关键字的要求。

参数:

  • keywords (string):在需求文本中搜索的关键字

get_definition

获取特定术语的FedRAMP定义。

参数:

  • term (string):要查找的术语(例如,“漏洞”、“云服务产品”)

list_definition

列出所有FedRAMP定义及其术语。

退货: 所有FedRAMP定义术语的完整列表

搜索定义

按关键字搜索FedRAMP定义。

参数:

  • keywords (string):要在定义中搜索的关键字

get_ksi

获取特定密钥安全指标的详细信息。

参数:

  • ksi_id (string):KSI标识符(例如“KSI-AFR-01”)

list_ksi

列出所有关键安全指标。

退货: 所有关键安全指标及其名称的完整列表

get_ksi证据_自动化

获取特定KSI的证据自动化建议。 65个活跃的KSI 包括自动证据收集指导。

参数:

  • ksi_id (字符串):KSI标识符(例如,“KSI-IAM-01”、“KSI-CNA-01”)

退货: 自动化证据收集指南包括:

  • Azure服务:每个KSI 5个Azure服务(日志分析、资源图、Azure策略、Azure监视器等),并提供特定的配置指导

- *注意:建议将Microsoft Defender for Cloud(非强制性)用于~8-10个KSI,以简化漏洞扫描、安全态势管理和合规性监控。可以使用替代工具(Qualys、Tenable、Trivy)。*

  • 收集方法4-5种自动化收集方法(持续监测、定期评估、事件驱动触发、日志聚合)
  • 存储需求:保留政策(30-90天运行,1-7年合规)、加密标准、访问控制
  • FRR-ADS集成:符合授权数据共享要求的可机读API端点
  • 实现细节:工作量估算、先决条件、成本考虑、责任方(安全、DevOps、合规、工程)
  • 代码示例:基础设施作为代码模板(二头肌、地形)和自动化脚本

新闻报道: 11个家庭的65个活跃KSI:

  • IAM(7):MFA、权限管理、会话控制、凭据生命周期、用户终止、JIT访问、共享帐户
  • CNA(8):网络分段、TLS配置、连接日志记录、Azure监视器、密钥库、秘密检测、容器注册表、GitHub安全
  • MLA(5):日志聚合、保留、篡改检测、搜索功能、警报
  • INR(3):事故响应计划、事故记录、事后报告
  • AFR(11):资产发现、SBOM、渗透测试、开发/产品分离、GitHub操作安全、容器扫描等
  • 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条件访问策略、通过日志分析的登录日志、MFA方法注册查询和合规性报告仪表板。

get_ksi-evidence_查询

准备好使用特定KSI的证据收集查询。

参数:

  • ksi_id (字符串):KSI标识符(例如,“KSI-IAM-01”、“KSI-CNA-01”)

退货: 用于从Azure收集证据的生产就绪查询(每个KSI 5个查询):

  • KQL查询:日志分析/AAzure Monitor Kusto查询日志分析和指标
  • Azure资源图:基础设施和配置状态查询
  • REST API:Azure Resource Manager API调用程序化数据检索
  • Azure命令行界面:用于证据提取的命令行脚本
  • PowerShell:用于自动收集的Azure PowerShell cmdlet

例子: get_ksi_evidence_queries("KSI-CNA-01") 返回NSG规则、Azure防火墙策略、虚拟网络配置、子网分段分析和网络拓扑验证的资源图查询。

get_ks_证据_事实

获取特定KSI要收集的证据工件的规格。

参数:

  • ksi_id (字符串):KSI标识符(例如,“KSI-IAM-01”、“KSI-CNA-01”)

退货: 详细的工件规格(每个KSI 5个工件):

  • 工件名称:所需的具体证据文件/报告(例如“MFA_Sign_In_Logs.cv”、“NSG_Rule_Export.json”)
  • 收集方法:如何收集每个工件(自动导出、API检索、仪表板截图、合规报告)
  • 文件格式:CSV、JSON、PDF、PNG(仪表板截图)、XLSX(合规性矩阵)
  • 更新频率:基于需求关键性的每日、每周、每月或每季度收集计划
  • 保留要求:运营数据30-90天,合规证据1-7年
  • 存储建议:具有加密、访问日志记录和不变性策略的Azure Blob存储

例子: get_ksi_evidence_artifacts("KSI-IAM-01") 返回登录日志(CSV,每日,90天)、条件接收策略导出(JSON,每周,1年)、MFA方法注册报告(XLSX,每月,3年)、身份验证仪表板屏幕截图(PNG,每季度,1年一次)和MFA合规性矩阵(PDF,每月,7年)。

analyze_fr_code

根据特定的FedRAMP要求(FRR)分析代码是否存在合规问题。

参数:

  • frr_id (字符串):FRR标识符(例如,“FRR-VDR-01”、“FRR-RSC-01”、“FR-ADS-01”)
  • code (string):要分析的代码
  • language (string):语言/平台- "python", "csharp", "java", "typescript", "bicep", "terraform", "github-actions", "azure-pipelines", "gitlab-ci"
  • file_path (字符串,可选):上下文的文件路径

退货: 分析结果,包括发现、严重程度和补救建议

支持的FRR系列:

  • 维生素D受体 -漏洞检测和响应(59项要求):漏洞扫描、补丁管理、补救时间框架、偏差跟踪、KEV漏洞处理
  • 皇家莎士比亚剧团 -推荐的安全配置(10项要求):安全基线、配置管理、强化标准
  • 加州大学美熹德分校 -使用加密模块(4个要求):FIPS 140-3合规性、密钥管理、加密标准
  • 系统变更号 -重大变更通知(26项要求):变更管理、通知程序、影响评估
  • 自动依赖监视系统 -授权数据共享(22项要求):机器可读证据API、数据格式、身份验证
  • CCM -协作持续监测(25项要求):监测程序、季度审查、评估协调
  • MAS -最低评估范围(12项要求):授权边界、系统清单、评估要求
  • 互联网内容提供商 -事故沟通程序(9项要求):事故通知、沟通协议、升级程序
  • FSI公司 -FedRAMP安全收件箱(16项要求):安全收件箱管理、漏洞披露、响应程序
  • 聚乙烯醇 -持续验证和评估(22项要求):持续验证、评估程序、测试要求

检查内容: 使用AST支持的语义分析来分析FRR特定合规性问题的代码:

  • 应用程序代码:安全控制、API实现、加密使用、日志记录、错误处理
  • 基础设施即代码:资源配置、安全设置、合规性控制、网络策略
  • 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: 'admin@contoso.com'
        publisherName: 'Contoso'
      }
    }""",
    language="bicep"
)
# ✅ Validates API Management for authorization data sharing

analyze_all_frs

根据所有199个FedRAMP要求分析代码以进行合规性分析。

参数:

  • code (string):要分析的代码
  • language (string):语言/平台(python、csharp、java、typescript、二头肌、terraform、github操作、azure管道、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秒内分析所有199个FRR。

analyze_fr_family

根据特定FRR系列中的所有要求分析代码。

参数:

  • family (string):家庭代码- "VDR", "RSC", "UCM", "SCN", "ADS", "CCM", "MAS", "ICP", "FSI", "PVA"
  • code (string):要分析的代码
  • language (string):语言/平台
  • 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_frs_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_fr_元数据

获取特定FRR的详细元数据,包括NIST控制、相关KSI和检测策略。

参数:

  • frr_id (字符串):FRR标识符(例如“FRR-VDR-01”)

退货: FRR元数据包括:

  • FRR详细信息:身份证、姓名、家庭、需求声明
  • 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特定的实施指南

获取_证据_自动化

获取特定FRR的证据自动化建议。

参数:

  • frr_id (字符串):FRR标识符(例如,“FRR-VDR-01”、“FRR-ADS-01”)

退货: 证据自动化指导包括:

  • 证据类型:基于配置、基于日志或基于API的证据
  • 自动化可行性:高/中/低自动化潜力
  • Azure服务:3-5项证据收集推荐服务
  • 收集方法:自动化方法(Azure监视器、资源图、策略、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系列:

  • 维生素D受体:漏洞扫描结果、补丁状态、补救跟踪、偏差批准
  • 自动依赖监视系统:API调用日志、数据格式符合性、身份验证记录、访问审核
  • CCM:监测指标、季度审查工件、评估协调日志
  • 皇家莎士比亚剧团:配置基线、漂移检测报告、合规性扫描结果
  • 所有其他:针对家庭的证据建议

get_fr_实现_状态

获取所有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%)

与rev4进行比较

将FedRAMP 20x与Rev.4/Rev.5对特定区域的要求进行比较。

参数:

  • requirement_area (字符串):要比较的领域(例如,“持续监控”、“漏洞管理”、“授权边界”、“证据收集”、“变更管理”、”事件响应”)

get_implementation_示例

获取具体要求的实际实施示例。

参数:

  • requirement_id (字符串):需求标识符(例如“KSI-IAM-01”、“FRR-VDR-01”)

check_requirement_dependency

检查FedRAMP 20x要求之间的依赖关系。

参数:

  • requirement_id (string):用于检查依赖关系的需求标识符

估算_实施_努力

估算具体要求的实施工作。

参数:

  • requirement_id (string):用于估算工作量的需求标识符

get_cloud_native_guidance

获取特定Azure和多云技术的云原生实施指南。

参数:

  • technology (string):获得指导的技术(例如,“kubernetes”、“容器”、“无服务器”、“地形”)

注: 所有云示例和最佳实践都优先考虑Azure服务(AKS、Azure Functions、密钥库、二头肌等)

validate_architecture

根据FedRAMP 20x要求验证系统架构。

参数:

  • architecture_description (string):要验证的架构描述

搜索文档

在FedRAMP官方文档标记文件中搜索特定关键字。

参数:

  • keywords (string):文档中要搜索的关键字

退货: 将文档部分与所有可用markdown文件的上下文相匹配

注: 自动从docs目录加载markdown文件以实现可搜索性。

get_documentation_file

获取特定FedRAMP文档文件的完整内容。

参数:

  • filename (string):标记文件名(例如,“overview.md”、“key security indicators.md”)

退货: 文档文件的完整标记内容

list_documentation_files

列出所有可用的FedRAMP文档文件。

退货: 从存储库中动态发现的所有markdown文档文件的完整列表

export_to_excel

将FedRAMP 20x数据导出到Excel文件进行离线分析和报告。

参数:

  • export_type (string):要导出的数据类型:

- "ksi" -全部72个关键安全指标 - "all_requirements" -所有家庭的所有329项要求 - "definitions" -所有FedRAMP术语定义

  • output_path (字符串,可选):自定义输出路径。如果未提供,则保存到下载文件夹

退货: 生成的具有专业格式(样式化标题、边框、冻结窗格)的Excel文件的路径

KSI导出列:

  1. KSI ID -唯一标识符(例如KSI-AFR-01)
  2. 名字 -KSI名称
  3. 类别 -控制族类别
  4. 状态 -在职或退休
  5. 声明 -完整的需求声明
  6. 备注 -附加信息(例如,退休KSI的接替说明)
  7. NIST 800-53控制 -与标题相关的安全控制
  8. 参考 -参考文件名称(如适用)
  9. 参考网址 -FedRAMP文档链接(如适用)
  10. 影响程度 -适用级别(低、中、高)

所有需求导出列:

  1. 需求ID -唯一标识符
  2. 家庭 -控制家族
  3. 期限/名称 -需求名称
  4. 描述 -完整描述
  5. 文件 -源文件

定义导出列:

  1. 术语 -FedRAMP术语
  2. 定义 -术语定义
  3. 备注 -附加上下文
  4. 参考文献 -相关文件

示例用法:

  • 导出所有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 (字符串,可选):自定义输出路径。如果未提供,则保存到下载文件夹

退货: 生成的CSV文件的路径

柱: 结构与Excel导出相同(详细列说明见上文)

示例用法:

  • 导出所有KSI: export_to_csv("ksi")
  • 导出所有要求: export_to_csv("all_requirements")
  • 导出定义: export_to_csv("definitions")

generate_ksi规范

为KSI生成产品规范Word文档,以指导工程实施和规划。

参数:

  • ksi_id (string):KSI标识符(例如“KSI-AFR-01”)
  • evidence_collection_strategy (string):用户提供的高级证据收集策略描述
  • output_path (字符串,可选):自定义输出路径。如果未提供,则保存到下载文件夹

退货: 生成的Word(.docx)文档的路径

文件内容:

  • 元数据:KSI ID、类别、影响级别、状态、日期
  • 概述:目的和范围与FedRAMP 20x一致
  • 需求陈述:完整的KSI要求文本
  • NIST 800-53控制:带有标题的相关安全控制
  • Azure首次实施:推荐的Azure服务、IaC指导、自动化策略
  • 证据收集:用户定义的策略+推荐的证据类型和灵活的收集时间表
  • 五阶段实施计划:需求分析→ 设计→ 实施→ 测试→ 文件(工程团队确定时间表)
  • 团队角色:云架构师、DevOps、安全工程师、合规专家等。
  • 成功标准:实施验证的可衡量结果
  • 风险和缓解措施:Azure特定缓解策略的常见风险
  • 资源:链接到FedRAMP、NIST、Azure文档

Azure服务推荐 (基于KSI类别的上下文感知):

  • Microsoft Entra ID、Azure策略、Azure监视器(所有KSI)
  • Microsoft云卫士、Azure密钥库、Azure防火墙(特定类别)
  • Microsoft Sentinel、Azure自动化、日志分析(特定于控件)

示例用法:

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."

生成实施问题

为产品经理和工程师生成战略性面试问题,以促进深思熟虑的计划讨论。

参数:

  • requirement_id (字符串):要求或KSI标识符(例如“FRR-CCM-01”、“KSI-IAM-01”)

退货: 按利益相关者角色组织的战略问题

问题类别:

  1. 产品经理的战略问题 (10个问题):

- 业务影响和投资回报率 - 客户价值和竞争地位 - 资源分配和优先级 - 依赖关系和阶段化

  1. 工程师技术问题 (15个问题):

- 建筑与设计决策 - Azure服务选择 - 自动化机会 - 监测和证据收集 - 运营与维护

  1. 跨职能问题 (10个问题):

- 安全与合规集成 - 用户体验影响 - 培训和支持需求 - 事件响应协调

  1. Azure特定注意事项 (动态,最多20个问题):

- Microsoft Entra ID配置 - Azure RBAC和条件访问 - 日志分析和Sentinel集成 - Azure策略和治理 - 云设置卫士 - 密钥库和加密策略

附加指南:

  • 决策框架(实施前必须回答5个问题)
  • 成功标准(5个可衡量的结果)
  • 红旗(需注意的5个警告标志)
  • 下一步(9阶段实施方法)
  • 推荐资源(Microsoft文档、FedRAMP资源、社区)

分析基础结构代码

分析基础设施即代码(IaC)文件中的FedRAMP 20x合规性问题,并提供可操作的建议。

参数:

  • code (string):要分析的IaC代码内容
  • file_type (string):IaC文件的类型- "bicep""terraform"
  • file_path (string):正在分析的文件的路径(用于报告)
  • context (字符串,可选):关于代码的其他上下文(例如PR描述)
  • application_profile (字符串,可选):用于上下文感知过滤的应用程序类型,以减少误报。支持的配置文件: "cli-tool", "mcp-server", "web-app", "api-service", "iac-only", "library", "batch-job", "full" (默认:无筛选)

退货:

  • 发现:一系列合规性发现,包括需求ID、严重性、描述和建议
  • 总结\*高/中/低优先问题和良好做法的数量
  • 评论:适用于GitHub/ADO PR评论的格式化标记
  • 应用程序文本:(设置配置文件时)有关活动配置文件和功能的元数据
  • context_filtered_count:(设置配置文件时)上下文过滤抑制的发现数

支持的语言:

  • Bicep:Azure资源管理器模板
  • 地形: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
  }
}

分析_应用程序_代码

分析FedRAMP 20x安全合规性问题的应用程序代码。

参数:

  • code (string):要分析的应用程序代码内容
  • language (string):程序设计语言- "python", "csharp", "java", "typescript",或 "javascript"
  • file_path (string):正在分析的文件的路径(用于报告)
  • dependencies (array,可选):项目依赖关系列表(例如。, ["flask==2.3.0", "requests==2.31.0"])
  • application_profile (字符串,可选):用于上下文感知过滤的应用程序类型。配置文件与 analyze_infrastructure_code.

退货:

  • 发现:一系列安全调查结果(结构与基础设施分析相同)
  • 总结\*高/中/低优先问题和良好做法的数量
  • 评论:用于PR审查的格式化标记
  • 依赖关系已检查:分析的依赖关系数量

支持的语言和框架:

  • python:Flask、Django、FastAPI应用程序
  • C:ASP。NET核心、实体框架、Azure SDK。网
  • Java:Spring Boot、Spring Security、Jakarta EE、适用于Java的Azure SDK
  • Types/JavaScript:Express、NestJS、Next.js、React、Angular、Vue、Azure SDK for js

检查FedRAMP要求(第1阶段+第2阶段):

第一阶段-基础:

  • KSI-IAM-01:API认证和授权
  • KSI-SVC-06:密钥管理(硬编码密码、API密钥、证书)
  • KSI-SVC-05:资源完整性(易受攻击的库、不安全的功能)
  • KSI-PIY-02:安全目标和要求文件
  • KSI-MLA-05:诊断日志配置

第2阶段-应用程序安全:

  • KSI-IAM-05:服务帐户管理(托管身份与硬编码凭据)
  • 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:会话管理和令牌安全

管道分析

分析CI/CD管道配置是否符合FedRAMP 20x DevSecOps标准。

参数:

  • code (string):流水线配置内容(YAML/JSON)
  • pipeline_type (string):管道类型- "github-actions", "azure-pipelines", "gitlab-ci",或 "generic"
  • file_path (string):管道文件的路径(用于报告)
  • application_profile (字符串,可选):用于上下文感知过滤的应用程序类型。配置文件与 analyze_infrastructure_code.

退货:

  • 发现:DevSecOps发现数组(结构与代码分析相同)
  • 总结\*高/中/低优先问题和良好做法的数量
  • 评论:用于PR审查的格式化标记
  • 流水线类型:检测到的管道平台

支持的平台:

  • GitHub操作 (.github/workflows/*.yml)
  • Azure DevOps管道 (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
💡 结果: Analyzer建议添加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

将基础设施生成为代码模板(二头肌或地形),用于自动化证据收集基础设施。

参数:

  • ksi_id (字符串):密钥安全指示器标识符(例如“KSI-IAM-01”、“KSI-MLA-01”)
  • infrastructure_type (字符串):要么是“二头肌”要么是“地形”

退货: 用于部署证据收集基础设施的IaC模板

支持的KSI系列:

  • IAM(身份和访问管理):Microsoft Entra ID、日志分析工作区、诊断设置、自动化帐户
  • MLA(监控、记录和审计):日志分析工作区、Azure Sentinel、诊断设置、警报规则
  • 审计和财务报告:具有不变性的存储帐户、事件订阅、审计日志
  • CNA(变更通知和批准):事件网格主题、逻辑应用程序、DevOps管道、变更跟踪
  • RPL(释放管道):Azure DevOps管道、部署槽、回滚功能、审批门
  • SVC(服务和漏洞管理):云卫士、安全评估、合规仪表板

示例用法:

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

输出包括:

  • Azure资源定义(日志分析、存储、事件网格等)
  • 证据收集的诊断设置
  • 保留策略和不变性
  • 与Azure Monitor和Sentinel集成
  • 证据收集自动化
  • RBAC角色和权限

get_video_collection_code

生成业务逻辑代码(Python、C#、PowerShell、Java或TypeScript),用于以编程方式收集和存储KSI证据。

参数:

  • ksi_id (字符串):密钥安全指示器标识符(例如“KSI-IAM-01”)
  • language (string):“python”、“csharp”、“powershell”、“java”或“typescript”(也接受“javascript”)

退货: 具有身份验证、证据收集和存储的代码示例

代码特征:

  • 认证:用于托管身份或本地开发的Azure DefaultAzureCredential模式
  • 证据收集:Microsoft Graph API、Azure资源管理器、Azure监视器的SDK
  • 证据存储:保存到具有不变性和元数据标记的Azure Blob存储
  • 错误处理:尝试捕获模式和日志记录
  • 文档:解释每个步骤的内联注释

支持的语言:

  • python:使用azure标识、azure存储blob、azure监视器查询、msgraph-sdk
  • C:使用Azure。身份,Azure。储存。金发碧眼。监视器。微软查询。图
  • PowerShell:使用Az.帐户、Az.存储、Az.监视器、Microsoft。图形模块
  • Java:使用Azure身份、Azure存储块、Azure资源管理器、Microsoft Graph SDK
  • Types/JavaScript:使用@azure/标识、@azure/存储blob、@azure/arm资源、@microsoft图形客户端

示例用法:

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

输出包括:

  • SDK导入和身份验证设置
  • KSI特有的证据收集逻辑
  • JSON格式和元数据标记
  • 具有不变性的Blob存储上传
  • 错误处理和重试逻辑

get_视频_自动化_体系结构

获取自动化证据收集系统的架构指南。

参数:

  • scope (string):架构范围-“最小”、“单个ksi”、“类别”或“全部”

退货: 包含组件、数据流和实施指南的架构模式

架构范围:

  1. 最小:试点项目的快速启动架构

- 单日志分析工作区 - 用于定时证据收集的Azure函数 - 具有基本保留功能的Blob存储 - 用于通知的事件网格

  1. 单一ksi:一个KSI的生产架构

- 专门的证据收集基础设施 - 具有监控功能的Azure函数 - 管理身份以确保安全 - Sentinel集成

  1. 类别:一个KSI类别(IAM、MLA等)的企业架构

- 特定类别的证据收集者 - 集中证据存储 - 自动报告仪表板 - 与Azure策略集成

  1. 全部:72个KSI的企业架构

- 多区域证据收集 - 高可用性设计 - 自动化合规报告 - 与GRC工具集成

示例用法:\*\*

> get_evidence_automation_architecture with scope="all"

输出包括:

  • 部件图和说明
  • 数据流架构
  • 安全和身份模式
  • 监控和警报策略
  • 证据的储存和保留
  • 灾难恢复注意事项
  • 与Azure服务的集成模式
  • 缩放建议
  • 实施步骤

可用提示

服务器提供 18个提示 对于FedRAMP合规工作流程:

规划与评估提示

初始评估加载图 -FedRAMP 20x授权的6阶段路线图,包括清单、可交付成果和关键成功因素(工程团队确定时间表)

间隙分析 -详细的差距分析框架,将当前状态与FedRAMP 20x要求进行比较,并制定优先级和补救计划

卖方估价 -供应商评估框架,包括特定类别的问题、记分卡模板和评估标准

migration_from_rev5 -从FedRAMP Rev 5到20x的详细迁移计划,采用7阶段方法、差距分析和需求映射(团队确定时间表和预算)

重大变化评估 -根据FRR-CCM-SC评估重大变更的框架,包括影响分析、测试要求和授权更新触发器

实施和自动化提示

ksi_实现_优先级 -通过依赖关系映射(工程团队确定推出时间表)在8个优先阶段实施所有72个关键安全指标的优先指南

azure_ksi自动化 - 使用Microsoft、Azure和M365功能实施72个KSI的指南 包括PowerShell脚本、Azure CLI命令、Microsoft Graph API集成、KQL查询、Azure函数/逻辑应用程序、证据收集框架,以及与Defender套件、Entra ID、密钥库和Sentinel的集成

api_design_guide -具有端点、身份验证、OSCAL格式和示例的授权数据共享API(FRR-ADS)指南

授权_边界_审查 -根据FedRAMP 20x要求定义和记录授权边界、系统互连和数据流的指南

监控与合规提示

连续监测设置 -建立符合FedRAMP 20x要求的持续监控计划的指南,包括自动化、指标和报告

季度审查清单 -FedRAMP 20x季度审查清单(FRR-CCM-QR),涵盖72个KSI、漏洞审查和变更审查

脆弱性_调解_时间线 -符合FedRAMP 20x VDR要求的漏洞修复时间表和优先级框架

审计和文件提示

审核准备 -FedRAMP 20x评估准备指南,包括证据收集、常见发现和面试准备(团队确定准备时间表)

ato_package_checklist -操作授权(ATO)包准备检查表,包括所需的工件、模板和提交要求

文档生成器 -OSCAL SSP模板、程序模板(VDR、ICP、SCN)和KSI实施文档模板

FRR合规性和代码审查提示

frr_code_review -使用AST支持的语义分析,在所有10个FRR系列(VDR、ADS、RSC、UCM、CCM、SCN、MAS、ICP、FSI、PVA)中使用PR工作流集成,根据FedRAMP要求(FRR)审查代码的指南

家庭评估 -针对199个FRR要求的家庭特定评估指南,包括10个FRR家庭的详细清单、评估问题和证据规划

frr_implementation_roadmap -实施所有199个FRR要求的16周4阶段战略路线图,包括优先级框架、Azure服务建议和KSI集成策略

KSI+FRR组合分析示例

MCP服务器提供集成分析功能,将关键安全指标(KSI)与FedRAMP修订要求(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'] = 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. 开发阶段:使用KSI分析器进行战术代码审查

- factory.analyze(ksi_id, code, language, file_path) 用于特定的安全检查 - analyze_frr_code(frr_id, code, language, file_path) 用于需求验证

  1. 预提交阶段:针对关键的FRR家族进行分析

- analyze_frr_family("VDR", code, language, file_path) 用于漏洞管理 - analyze_frr_family("RSC", code, language, file_path) 用于安全配置

  1. CI/CD管道:部署前的合规性分析

- factory.analyze_all_ksis(code, language, file_path) 适用于所有KSI - analyze_all_frrs(code, language, file_path) 对于所有FRR

  1. 季度审查:合规跟踪和报告

- get_ksi_implementation_status() KSI进展 - get_frr_implementation_status() 符合FRR要求 - 为利益相关者生成综合合规报告

数据源

数据从官方FedRAMP存储库中获取: https://github.com/FedRAMP/docs/tree/main/data

贡献

欢迎投稿!请参阅 贡献.md 用于:

  • 开发设置和测试
  • 安全扫描要求
  • 依赖性管理指南
  • 拉取请求流程
  • 项目结构和架构
  • 完整的测试文档

安全

有关安全漏洞报告和安全最佳实践,请参阅 安全.md.

贡献

欢迎投稿!请参阅 贡献.md 用于:

  • 开发设置和测试
  • 安全扫描要求
  • 依赖性管理指南
  • 拉取请求流程

许可证

MIT许可证-请参阅 许可证 文件以获取详细信息。

这个项目是开源的,欢迎投稿!看 贡献.md 作为指导方针。

FedRAMP数据由美国总务管理局作为公共领域内容提供。

参考文献

目录标签

目录标签

PythonClaude云端部署FedRAMP本地部署安全合规Azure协议服务器自动化分析

支持客户端

Claude DesktopClaudeVS Code

接入字段

传输方式(transport,传输协议)

stdio

鉴权方式(authType,认证方式)

none

运行时(runtime,运行环境)

Python

工具数量(toolCount,工具数)

37

资源数量(resourceCount,资源数)

0

提示词数量(promptCount,提示词数)

0

权限和风险

stdionone部署方式未说明

接入前请确认传输方式、认证方式和部署位置,并根据实际工具能力限制访问范围。

安装前确认

不要直接授予不必要的文件、网络或账号权限;先核对安装命令和配置内容。

来源信息

继续浏览同类 MCP