UNPKG

azureai-optimizer

Version:

AI-Powered Azure Infrastructure Optimization via Model Context Protocol

113 lines 3.57 kB
/** * Security Assessment Tool * AI-powered Azure security compliance analysis */ import { AuthContext } from '../auth/azure-auth.js'; import { Tool, ToolConfig } from './registry.js'; export interface SecurityAssessmentArgs { subscription_id: string; resource_group?: string; compliance_framework: 'SOC2' | 'ISO27001' | 'NIST' | 'CIS' | 'custom'; include_remediation?: boolean; severity_filter?: 'low' | 'medium' | 'high' | 'critical'; } export interface SecurityAssessmentResult { success: boolean; data: { compliance_summary: { framework: string; overall_score: number; total_controls: number; passed_controls: number; failed_controls: number; not_applicable: number; }; security_findings: Array<{ id: string; title: string; description: string; severity: 'Low' | 'Medium' | 'High' | 'Critical'; category: string; affected_resources: string[]; compliance_impact: string; remediation_steps?: string[]; }>; policy_compliance: { total_policies: number; compliant_policies: number; non_compliant_policies: number; policy_violations: Array<{ policy_name: string; violation_count: number; affected_resources: string[]; }>; }; ai_insights: { risk_assessment: string; priority_recommendations: Array<{ title: string; description: string; impact: 'Low' | 'Medium' | 'High' | 'Critical'; effort: 'Low' | 'Medium' | 'High'; implementation_steps: string[]; }>; compliance_gaps: string[]; security_trends: string; }; }; metadata: { execution_time?: number; api_calls: number; assessment_date: string; framework_version?: string; }; } export declare class SecurityAssessmentTool implements Tool { name: string; description: string; inputSchema: { type: string; properties: { subscription_id: { type: string; description: string; }; resource_group: { type: string; description: string; }; compliance_framework: { type: string; enum: string[]; description: string; default: string; }; include_remediation: { type: string; description: string; default: boolean; }; severity_filter: { type: string; enum: string[]; description: string; }; }; required: string[]; }; private aiAnalyzer; private logger; constructor(config: ToolConfig); execute(args: SecurityAssessmentArgs, _context: AuthContext): Promise<SecurityAssessmentResult>; private fetchSecurityAssessments; private fetchPolicyCompliance; private processSecurityFindings; private processPolicyCompliance; private calculateComplianceScore; private mapSeverity; private getComplianceImpact; private getFrameworkControls; private mapFindingToControls; private getFrameworkVersion; } //# sourceMappingURL=security-assessment.d.ts.map