Skip to main content

security-architecture

Security system design principles

Datos de origen

Repositorio
ffsshhttiikk/opencode-agents-skills
Última actividad en el origen
28 de febrero de 2026 a las 22:54
Idioma detectado de SKILL.md
inglés
Estrellas
3
Forks
2

Opciones de instalación

De forma predeterminada está seleccionado el prompt que primero revisa el origen. Puedes cambiar a un comando directo o descargar una copia local.

Revisa los archivos de origen

Lee SKILL.md y los archivos complementarios que muestra SkillsMP antes de decidir si quieres instalarlo.

Mostrando SKILL.md

SKILL.md
Instrucciones de origen · Vista previa de solo lectura
name
security-architecture
description
Security system design principles
license
MIT
compatibility
opencode
metadata
{"audience":"developers","category":"security"}
## What I do - Design secure system architectures - Apply defense-in-depth principles - Create security boundaries and zones - Select appropriate security controls - Model threats and attack surfaces ## When to use me When designing new systems, reviewing architecture, or improving security posture. ## Security Architecture Principles ### Defense in Depth ```python # Layered security model SECURITY_LAYERS = [ "Physical Security", # Layer 1: Data center, hardware "Network Security", # Layer 2: Firewalls, segmentation "Host Security", # Layer 3: OS hardening, patching "Application Security", # Layer 4: Code, inputs, auth "Data Security" # Layer 5: Encryption, access control ] class DefenseInDepth: """Multi-layered security controls""" def __init__(self): self.layers = {} def add_control(self, layer: str, control: str, mitigation: str): if layer not in self.layers: self.layers[layer] = [] self.layers[layer].append({ "control": control, "mitigation": mitigation, "implemented": False }) ``` ### Zero Trust Architecture ```python class ZeroTrust: """Never trust, always verify""" def __init__(self): self.policies = [] def verify_request(self, request: dict) -> bool: """Verify every request regardless of source""" # 1. Verify identity if not self._verify_identity(request): return False # 2. Verify device if not self._verify_device(request): return False # 3. Verify access level if not self._verify_access(request): return False # 4. Verify context if not self._verify_context(request): return False # 5. Continuous monitoring if not self._monitor_session(request): return False return True def _verify_identity(self, request: dict) -> bool: """Strong authentication""" # MFA required return request.get("mfa_verified", False) def _verify_device(self, request: dict) -> bool: """Device compliance check""" return request.get("device_trusted", False) and \ request.get("device_compliant", False) def _verify_access(self, request: dict) -> bool: """Least privilege access""" return request.get("required_permission") in \ request.get("user_permissions", []) def _verify_context(self, request: dict) -> bool: """Risk-based access""" risk_score = self._calculate_risk(request) return risk_score < 80 def _monitor_session(self, request: dict) -> bool: """Continuous session validation""" return request.get("session_valid", False) ``` ### Network Segmentation ```python class NetworkSegmentation: """Isolate network segments""" ZONES = { "dmz": { "description": "Public-facing services", "allowed_inbound": ["http", "https"], "allowed_outbound": ["app_layer"], "trust_level": "untrusted" }, "app_layer": { "description": "Application servers", "allowed_inbound": ["dmz", "internal"], "allowed_outbound": ["data_layer"], "trust_level": "semi-trusted" }, "data_layer": { "description": "Databases and storage", "allowed_inbound": ["app_layer"], "allowed_outbound": [], "trust_level": "trusted" }, "management": { "description": "Admin systems", "allowed_inbound": ["admin_vpn"], "allowed_outbound": ["all"], "trust_level": "highly_trusted" } } def get_allowed_traffic(self, from_zone: str, to_zone: str) -> bool: """Check if traffic is allowed between zones""" from_rules = self.ZONES.get(to_zone, {}).get("allowed_inbound", []) return from_zone in from_rules or "all" in from_rules ``` ## Security Controls ### Identity and Access Management ```python class IAMArchitecture: """Identity and Access Management""" def __init__(self): self.idp = "active_directory" # or Okta, Auth0 self.mfa_required = True self.session_timeout = 3600 def authenticate(self, credentials: dict) -> dict: """Multi-factor authentication""" # Step 1: Primary auth user = self._verify_credentials(credentials) # Step 2: MFA if self.mfa_required: if not self._verify_mfa(user, credentials.get("mfa_token")): raise AuthenticationError("MFA required") # Step 3: Issue token return self._issue_token(user) def authorize(self, token: dict, resource: str, action: str) -> bool: """Attribute-based access control""" # Check permissions if not self._check_permission(token, resource, action): return False # Check resource ownership if not self._check_ownership(token, resource): return False # Check contextual factors if not self._check_context(token, resource): return False return True ``` ### Data Protection Architecture ```python class DataProtection: """Data classification and protection""" CLASSIFICATIONS = { "public": { "encryption_in_transit": False, "encryption_at_rest": False, "access_control": "none" }, "internal": { "encryption_in_transit": True, "encryption_at_rest": True, "access_control": "authentication" }, "confidential": { "encryption_in_transit": True, "encryption_at_rest": True, "access_control": "role_based" }, "restricted": { "encryption_in_transit": True, "encryption_at_rest": True, "access_control": "explicit_grant" } } def protect_data(self, data: str, classification: str) -> dict: """Apply appropriate controls based on classification""" controls = self.CLASSIFICATIONS.get(classification, {}) result = { "data": data, "classification": classification, "encrypted": controls.get("encryption_at_rest", False) } if controls.get("encryption_at_rest"): result["data"] = self._encrypt(data) return result ``` ### Logging and Monitoring ```python class SecurityMonitoring: """Security event monitoring""" def __init__(self): self.alert_thresholds = { "failed_login": 5, "data_exfiltration_mb": 1000, "admin_action": 1, "privilege_escalation": 1 } def log_event(self, event: dict): """Log security event""" event["timestamp"] = datetime.now() event["完整性校验"] = self._calculate_hash(event) # Check for alerts self._check_alerts(event) def _check_alerts(self, event: dict): """Check if event triggers alerts""" for alert_type, threshold in self.alert_thresholds.items(): if event.get("type") == alert_type: if event.get("count", 1) >= threshold: self._trigger_alert(event) ``` ## Threat Modeling ### STRIDE Analysis ```python class ThreatModelSTRIDE: """STRIDE threat categories""" CATEGORIES = { "S": "Spoofing - Impersonating someone else", "T": "Tampering - Modifying data or code", "R": "Repudiation - Claiming to not have performed action", "I": "Information Disclosure - Exposing information", "D": "Denial of Service - Making system unavailable", "E": "Elevation of Privilege - Gaining capabilities" } def identify_threats(self, component: str) -> list: """Identify threats for a component""" threats = [] if component == "authentication": threats.extend([ ("S", "Credential theft"), ("R", "Failed login not logged"), ("I", "Passwords in logs") ]) return threats ```
Ver en GitHub