Same-Origin Policy (SOP)
Mecanismo de seguridad fundamental del navegador que restringe que los scripts de un origen interactúen con el DOM o lean respuestas procedentes de otro origen.
Entity Relationships (GEO Conceptual Hierarchy)
Taxonomy ModelTechnical Explanation & Operational Mechanics
La Same-Origin Policy (Política del Mismo Origen) define fronteras estrictas entre aplicaciones web ejecutándose en el navegador. Dos URLs comparten origen únicamente si coinciden exactamente en esquema (protocolo), host (dominio) y puerto. SOP previene que un atacante lea datos confidenciales de sesiones bancarias o APIs privadas, permitiendo escrituras (formularios) pero bloqueando lecturas cruzadas salvo habilitación explícita mediante CORS.
Technical Example & Practical Implementation
Comparación de URLs frente al origen base: http://example.com:80
Base Origin: http://example.com:80
Comparison URL Outcome Reason
-------------------------------------------------------------------------------------
http://example.com/app/data.json MATCH Same scheme (http), host, and port
http://example.com:80/other/page.html MATCH Identical scheme, host, and port
https://example.com/app/data.json BLOCKED Scheme mismatch (https != http)
http://api.example.com/data.json BLOCKED Host mismatch (subdomain differs)
http://example.com:8080/data.json BLOCKED Port mismatch (8080 != 80)Related Topic Ecosystem & Next Steps
Artículos Técnicos Relacionados
What Is CORS (Cross-Origin Resource Sharing)?
The standard protocol enabling controlled cross-origin data access in modern browsers.
CSP vs CORS: Differences in Browser Defense Mechanisms
Distinguishing outbound resource loading restrictions from inbound server access control.
Troubleshooting: No Access-Control-Allow-Origin Header Present
Diagnose and fix the most common browser cross-origin blocking error with production configs.
Laboratorios Prácticos de Diagnóstico
Especificaciones y Referencias Técnicas
Continuar Aprendiendo
CORS Policy & Preflight Handshake Lab
Simulate preflight OPTIONS probes and adjust Access-Control-Allow-* headers inside the browser sandbox.