Paqueteflash.system
Clasepublic final class Security
HerenciaSecurity Inheritance Object

Versión del lenguaje: ActionScript 3.0
Versión del reproductor: Flash Player 9

La clase Security permite especificar cómo pueden comunicarse entre sí archivos SWF de diferentes dominios.

Ver los ejemplos

Véase también

Seguridad de Flash Player


Propiedades públicas
 PropiedadDefinido por
 Inheritedconstructor : Object
Una referencia a la clase de objeto o función constructora para una instancia de objeto determinada.
Object
  exactSettings : Boolean
[static] Determina el modo en que Flash Player elige el dominio que se utiliza para determinadas configuraciones, incluida la configuración para permisos de cámaras y micrófonos, cuotas de almacenamiento y almacenamiento de objetos compartidos persistentes.
Security
 Inheritedprototype : Object
[static] Una referencia al objeto prototipo de una clase u objeto de función.
Object
  sandboxType : String
[static] [read-only] Indica el tipo de entorno limitado de seguridad en el que actúa el archivo SWF.
Security
Métodos públicos
 MétodoDefinido por
  
allowDomain(... domains):void
[static] Permite a los archivos SWF y HTML de los dominios identificados acceder a los objetos y variables del archivo SWF que contiene la llamada allowDomain().
Security
  
[static] Permite a los archivos SWF y HTML de los dominios identificados acceder a los objetos y variables del archivo SWF, que se aloja mediante el protocolo HTTPS.
Security
 Inherited
Indica si un objeto tiene definida una propiedad especificada.
Object
 Inherited
Indica si hay una instancia de la clase Object en la cadena de prototipo del objeto especificado como parámetro.
Object
  
[static] Carga un archivo de política para distintos dominios de una ubicación especificada por el parámetro url.
Security
 Inherited
Indica si existe la propiedad especificada y si es enumerable.
Object
 Inherited
Establece la disponibilidad de una propiedad dinámica para operaciones de bucle.
Object
  
showSettings(panel:String = "default"):void
[static] Muestra el panel Parámetros de seguridad de Flash Player.
Security
 Inherited
Devuelve la representación de cadena del objeto especificado.
Object
 Inherited
Devuelve el valor simple del objeto especificado.
Object
Constantes públicas
 ConstanteDefinido por
  LOCAL_TRUSTED : String = "localTrusted"
[static] El SWF es un archivo local y el usuario ha determinado que es de confianza, mediante el Administrador de configuración o un archivo de configuración FlashPlayerTrust.
Security
  LOCAL_WITH_FILE : String = "localWithFile"
[static] Este SWF es un archivo local y no es de confianza para el usuario. No se ha publicado con una designación de red.
Security
  LOCAL_WITH_NETWORK : String = "localWithNetwork"
[static] Este SWF es un archivo local y no es de confianza para el usuario. Se ha publicado con una designación de red.
Security
  REMOTE : String = "remote"
[static] Este archivo SWF procede de una URL de Internet y se rige por reglas de entorno limitado basado en dominio.
Security
Información sobre propiedades
exactSettingspropiedad
exactSettings:Boolean  [read-write]

Versión del lenguaje: ActionScript 3.0
Versión del reproductor: Flash Player 9

Determina el modo en que Flash Player elige el dominio que se utiliza para determinadas configuraciones, incluida la configuración para permisos de cámaras y micrófonos, cuotas de almacenamiento y almacenamiento de objetos compartidos persistentes. Para que el archivo SWF utilice la misma configuración que en Flash Player 6, se puede definir exactSettings como false.

En Flash Player 6, el dominio utilizado para esta configuración del reproductor se basaba en el fragmento final del dominio del archivo SWF. Si el dominio de un archivo SWF contiene más de dos segmentos, como en www.example.com, se elimina el primer segmento del dominio ("www") y se utiliza el fragmento restante: example.com. De este modo, en Flash Player 6, tanto www.example.com como store.example.com utilizan example.com como dominio para esta configuración. Del mismo modo, tanto www.example.co.uk como store.example.co.uk utilizan example.co.uk como dominio para esta configuración. En Flash Player 7 y versiones posteriores, la configuración del reproductor se elige de forma predeterminada según el dominio exacto del archivo SWF; por ejemplo, un archivo SWF de www.example.com utiliza la configuración del reproductor para www.example.com y un archivo SWF de store.example.com utiliza la configuración del reproductor independiente para store.example.com.

Si Security.exactSettings se define como true, Flash Player utiliza dominios exactos para la configuración del reproductor. Si se define como false, Flash Player utiliza la configuración de dominio empleada en Flash Player 6. El valor predeterminado para exactSettings es true. Si cambia el valor predeterminado de exactSettings, debe hacerlo antes de que se produzca ningún evento que requiera que Flash Player elija la configuración del reproductor; por ejemplo, con una cámara o un micrófono, o bien, recuperando un objeto compartido persistente.

Si ya ha publicado anteriormente un archivo SWF de la versión 6, ha creado objetos compartidos persistentes a partir de él y ahora necesita recuperarlo del archivo SWF tras migrar a una versión 7 o posterior, debe definir Security.exactSettings como false antes de llamar a SharedObject.getLocal().


Implementación
    public static function get exactSettings():Boolean
    public function set exactSettings(value:Boolean):void

Emite
SecurityError — Flash Player ya ha utilizado el valor de exactSettings al menos una vez en una decisión sobre la configuración del reproductor.

Véase también

sandboxTypepropiedad 
sandboxType:String  [read-only]

Versión del lenguaje: ActionScript 3.0
Versión del reproductor: Flash Player 9

Indica el tipo de entorno limitado de seguridad en el que actúa el archivo SWF.

Security.sandboxType tiene uno de los valores siguientes:

Un archivo SWF de cualquier versión puede utilizar esta propiedad, pero sólo se admite en Flash Player 8 o versiones posteriores. Por tanto, puede examinar la propiedad, por ejemplo, desde un archivo SWF de la versión 7 reproducido en Flash Player 8. Ser compatible con todas las versiones implica que si publica para una versión anterior a la 8, en el momento de la publicación no sabrá si se admitirá esta propiedad cuando se realice la reproducción. Por lo tanto, en un archivo SWF de la versión 7 o anterior, esta propiedad puede tener un valor undefined, lo que sólo debería pasar cuando la versión del reproductor (indicada en flash.system.Capabilities.version) sea anterior a la 8. En este caso, puede determinar el tipo de entorno limitado dependiendo de si el archivo SWF es local o no. Si es un archivo local, Flash Player lo clasificará como localTrusted. (Antes de Flash Player 8, así es como se trataba todo el contenido local.) Si no es un archivo local, Flash Player lo clasificará como remote.

Para más información, consulte las siguientes secciones:


Implementación
    public static function get sandboxType():String

Véase también

Información sobre métodos
allowDomain()método
public static function allowDomain(... domains):void

Versión del lenguaje: ActionScript 3.0
Versión del reproductor: Flash Player 9

Permite a los archivos SWF y HTML de los dominios identificados acceder a los objetos y variables del archivo SWF que contiene la llamada allowDomain().

Si hay dos archivos SWF en el mismo dominio (por ejemplo, http://misitio.com/swfA.swf y http://misitio.com/swfB.swf), el archivo swfA.swf puede examinar y modificar variables, objetos, propiedades, métodos, etc. en swfB.swf, y swfB.swf puede hacer lo mismo en swfA.swf. Esto se denomina uso de scripts entre películas o uso de scripts.

Si los dos archivos SWF están en dominios diferentes (por ejemplo, http://mysite.com/swfA.swf y http://othersite.com/siteB.swf), de forma predetermina Flash Player no permite a swfA.swf usar scripts en swfB.swf, ni viceversa. Un archivo SWF proporciona archivos SWF de otros dominios llamando a Security.allowDomain(). Esto se denomina creación de scripts en varios dominios. Al llamar a Security.allowDomain("siteA.com"), siteB.swf concede permiso a siteA.swf para hacer scripts.

En cualquier operación entre dominios, es importante tener claro qué dos partes están involucradas. En esta sección, llamaremos parte que accede a la que usa scripts entre películas (normalmente el archivo SWF que accede a otro) y parte a la que se accede a la otra (por lo general, el archivo SWF al que se accede). Si siteA.swf usa scripts en siteB.swf, siteA.swf será la parte que accede y siteB.swf será la parte a la que se accede.

Los permisos entre dominios establecidos con allowDomain() son asimétricos. En el ejemplo anterior, siteA.swf puede usar scripts en siteB.swf, pero siteB.swf no puede hacerlo en siteA.swf, ya que siteA.swf no ha llamado a allowDomain() para dar permiso a los archivos SWF de siteB.com para hacer scripts. Puede establecer permisos simétricos si ambos archivos SWF llaman a allowDomain().

Flash Player protege los archivos SWF no sólo de los scripts creados en varios dominios por otros archivos SWF, sino también de los originados por archivos HTML. Los scripts de HTML se pueden usar en SWF mediante el uso de interfaces API anteriores del navegador Flash, como SetVariable o invocando las funciones callback definidas a través de ExternalInterface.addCallback(). Cuando el uso de scripts de HTML en SWF traspasa los dominios, el archivo SWF debe llamar a allowDomain() para evitar que la operación falle, tanto si es la parte que accede como si es la parte a la que se accede.

Cuando se especifica una dirección IP como parámetro en allowDomain(), no se permite el acceso de las partes con origen en la dirección IP especificada. Sólo se permite el acceso a la parte que contiene la dirección IP especificada en su URL y no un nombre de dominio que corresponda a la dirección IP.

Diferencias específicas entre versiones

Las reglas de seguridad entre dominios de Flash Player han evolucionado de una versión a otra. En la tabla siguiente, se resumen las diferencias.

Versión de SWF más reciente que interviene en el uso de scripts entre películas¿Se necesita allowDomain()?¿Se necesita allowInsecureDomain()?¿Qué archivo SWF debe llamar a allowDomain() o allowInsecureDomain()?¿Qué se puede especificar en allowDomain() o allowInsecureDomain()?
5 o anteriorNoNoN/DN/D
6Sí, si los superdominios no coinciden.NoEl archivo SWF al que se accede o cualquier SWF con el mismo superdominio que éste.
  • Dominio basado en texto (mysite.com)
  • Dirección IP (192.168.1.1)
7Sí, si los dominios no coinciden exactamente.Sí, si se realiza el acceso de HHTP en HTTPS (incluso si los dominios coinciden exactamente).El archivo SWF al que se accede o cualquier SWF con el mismo dominio que éste.
  • Dominio basado en texto (mysite.com)
  • Dirección IP (192.168.1.1)
8 o posteriorSí, si los dominios no coinciden exactamente.Sí, si se realiza el acceso de HHTP en HTTPS (incluso si los dominios coinciden exactamente).El archivo SWF al que se accede.
  • Dominio basado en texto (mysite.com)
  • Dirección IP (192.168.1.1)
  • Comodín (*)

Las versiones que controlan el comportamiento de Flash Player son las versiones de SWF (versión publicada de un SWF), no las versiones del propio Flash Player. Por ejemplo, cuando Flash Player 8 reproduce un archivo SWF de la versión 7, presenta un comportamiento coherente con la versión 7. Esta práctica evita que las actualizaciones del reproductor modifiquen el comportamiento de Security.allowDomain() en los archivos SWF implementados.

En la tabla anterior, la columna de la versión se reserva para la versión de SWF más reciente que interviene en el uso de scripts entre películas. Flash Player determina su comportamiento en función de la versión del archivo SWF que accede o de la versión del SWF al que se accede, la que sea más reciente.

Los párrafos siguientes ofrecen más detalles acerca de los cambios en la seguridad de Flash Player que están relacionados con Security.allowDomain().

Versión 5. Creación de scripts en varios dominios sin restricciones.

Versión 6. Se incorpora la función de seguridad para la creación de scripts entre dominios. Flash Player prohíbe la creación de scripts entre dominios de forma predeterminada; Security.allowDomain() puede permitirla. Para determinar si dos archivos pertenecen al mismo dominio, Flash Player utilizar el superdominio de cada archivo, que es el nombre exacto del host de la URL del archivo, menos el primer segmento, hasta un mínimo de dos segmentos. Por ejemplo, el superdominio de www.mysite.com es mysite.com. Este ejemplo permitirá el uso de scripts entre los archivos SWF de www.mysite.com y store.mysite.com sin llamar a Security.allowDomain().

Versión 7. La coincidencia de superdominios se cambia por la coincidencia exacta de dominios. Sólo se permite el uso de scripts entre dos archivos si los nombres del host en las URL son idénticos; de lo contrario, se requiere una llamada a Security.allowDomain(). De forma predeterminada, ya no se permite que los archivos cargados desde direcciones URL que no sean HTTPS usen scripts en archivos con URL HTTPS, aunque los archivos se carguen desde el mismo dominio exactamente. Esta restricción ayuda a proteger los archivos HTTPS, ya que los archivos no HTTPS son susceptibles de modificarse durante la descarga. Cualquier cambio malintencionado en un archivo no HTTPS podría dañar los archivos HTTPS, que de lo contrario serían inmunes a tales ataques. Aunque Security.allowInsecureDomain() se ha introducido con el fin de permitir la desactivación voluntaria de esta restricción en los archivos SWF HTTPS a los que se accede, se desaconseja utilizar Security.allowInsecureDomain().

Versión 8. Los cambios afectan a dos áreas principalmente:

Es posible que, en ocasiones, se encuentre con la siguiente situación: el usuario carga un archivo SWF secundario de un dominio diferente y desea que el archivo SWF secundario pueda crear un script en el archivo SWF principal, pero no conoce el dominio final del archivo SWF secundario. Por ejemplo, esto puede ocurrir cuando se utilizan redirecciones de reparto de carga o servidores de terceros.

En esta situación, se puede utilizar la propiedad url del objeto URLRequest que se pasa a Loader.load(). Por ejemplo, si carga un archivo SWF secundario en uno principal, podrá acceder a la propiedad contentLoaderInfo del objeto Loader para el archivo SWF principal:

Security.allowDomain(loader.contentLoaderInfo.url)

Es importante que espere a que el archivo SWF secundario se comience a cargar para poder obtener el valor correcto de la propiedad url. Para determinar cuándo ha comenzado la carga del archivo SWF secundario, utilice el evento progress.

También se puede presentar la situación contraria; podría crear un archivo SWF secundario en el que desee que su archivo principal use scripts, pero no conoce cuál será el dominio de su archivo principal. En este caso, se puede acceder a la propiedad loaderInfo del objeto de visualización que sea el objeto raíz del archivo SWF. En el archivo SWF secundario, llame a Security.allowDomain( this.root.loaderInfo.loaderURL). No es necesario esperar a que se cargue el archivo SWF principal; el archivo principal ya estará cargado en el momento que se cargue el secundario.

Si está publicando en Flash Player 8 o posterior, puede resolver estas situaciones llamando a Security.allowDomain("*"). No obstante, a veces puede tratarse de una solución rápida pero peligrosa, ya que será posible acceder al archivo SWF que hace la llamada desde cualquier dominio. Por lo general, resulta más seguro utilizar la propiedad _url.

Para más información, consulte las siguientes secciones:

Parámetros

... domains — Una o varias cadenas u objetos URLRequest que dan nombre a los dominios a los que desea permitir el acceso. Puede especificar el dominio especial "*" para permitir el acceso desde todos los dominios.

Especificar "*" es el único modo de permitir el acceso a archivos SWF no locales desde archivos SWF locales publicados con el parámetro Acceder sólo a la red de la opción Seguridad de reproducción local en la herramienta de edición de Flash.

Véase también

allowInsecureDomain()método 
public static function allowInsecureDomain(... domains):void

Versión del lenguaje: ActionScript 3.0
Versión del reproductor: Flash Player 9

Permite a los archivos SWF y HTML de los dominios identificados acceder a los objetos y variables del archivo SWF, que se aloja mediante el protocolo HTTPS. No se recomienda este método; consulte la sección "Consideraciones de seguridad" más adelante en esta entrada.

Este método funciona de la misma manera que Security.allowDomain(), pero además admite operaciones en las que la parte que accede se carga con un protocolo distinto de HTTPS y la parte a la que se accede se carga con protocolo HTTPS. En Flash Player 7 y versiones posteriores, no se permite el uso de scripts de archivos no HTTPS en archivos HTTPS. El método allowInsecureDomain() elimina esta restricción cuando el archivo SWF HTTPS al que se accede lo utiliza.

Utilice allowInsecureDomain() solamente para permitir el uso de scripts de archivos no HTTPS en archivos HTTPS. También se puede usar para permitir la creación de scripts cuando el archivo no HTTPS que accede y el archivo HTTPS al que se accede pertenecen al mismo dominio; por ejemplo, si un archivo SWF ubicado en http://mysite.com desea usar scripts en https://mysite.com. No utilice este método para permitir el uso de scripts entre archivos no HTTPS, entre archivos HTTPS o de archivos HTTPS en archivos no HTTPS. En esos casos debe utilizar allowDomain().

Consideraciones de seguridad: Aunque Flash Player ofrece allowInsecureDomain() para aumentar la flexibilidad, no se recomienda llamar a este método. Mediante la llamada a allowInsecureDomain se reduce la eficacia de algunas de las protecciones que proporciona a todos los usuarios la descarga de archivos a través de HTTPS. En el siguiente escenario se muestra cómo allowInsecureDomain() puede afectar a la seguridad si no se utiliza con cuidado.

Tenga en cuenta que la siguiente información sólo hace referencia a una posible situación y tiene por objeto ayudar a entender allowInsecureDomain() mediante un ejemplo práctico de uso de scripts entre películas. No abarca todos los aspectos relacionados con la arquitectura de seguridad y sólo debe utilizarse como información de referencia. En Flash Player Developer Center encontrará información detallada sobre Flash Player y la seguridad. Para más información, consulte http://www.adobe.com/devnet/security/.

Suponga que está creando un sitio de comercio electrónico que consta de dos componentes: un catálogo, que no requiere seguridad porque incluye únicamente información pública, y un componente de carrito de compra/finalización de la compra que debe asegurar para proteger los datos financieros y personales del usuario. Supongamos que desea que el catálogo esté disponible en http://mysite.com/catalog.swf y el carrito en https://mysite.com/cart.swf. Uno de los requisitos del sitio es evitar que un tercero pueda hacerse con el número de la tarjeta de crédito de los usuarios aprovechándose de un punto débil en la arquitectura de seguridad.

Imagine que un atacante de una parte intermedia interviene entre el servidor y los usuarios e intenta obtener los números de las tarjetas de crédito de los usuarios que acceden a la aplicación del carrito de la compra. La parte intermedia puede ser, por ejemplo, un ISP sin escrúpulos que utilicen algunos de sus usuarios o un administrador malintencionado del lugar de trabajo del usuario; es decir, cualquiera que pueda ver o alterar los paquetes de red que circulan por un sitio de Internet público entre sus usuarios y servidores. Este atributo no es necesario.

Si cart.swf utiliza el protocolo HTTPS para trasmitir la información de la tarjeta de crédito a sus servidores, la parte intermedia no puede obtener directamente esta información de los paquetes de red, ya que las transmisiones HTTPS están cifradas. Sin embargo, el atacante puede utilizar una técnica diferente: modificar el contenido de uno de los archivos SWF cuando se envía al usuario y reemplazarlo con la versión modificada, que transmite la información del usuario a un servidor diferente, propiedad del atacante.

Entre otras cosas, el protocolo HTTPS impide que los ataques de "modificación" den resultados, ya que las transmisiones HTTPS, además de estar cifradas, resisten cualquier intento de ataque: si una parte intermedia altera un paquete, la parte receptora detecta la modificación y descarta el paquete. En este caso, el atacante no puede modificar el archivo cart.swf porque se transmite a través de HTTPS.

Sin embargo, supongamos que quiere contar con botones en catalog.swf, disponible en HTTP, para añadir artículos al carrito de la compra de cart.swf, disponible en HTTPS. Para conseguirlo, cart.swf llama a allowInsecureDomain(), que permite a catalog.swf crear scripts en cart.swf. Esta acción tiene una consecuencia no deseada: ahora el atacante puede alterar catalog.swf cuando el usuario lo descarga por primera vez, ya que el protocolo de transmisión de catalog.swf es HTTP y no resiste ataques. Como cart.swf contiene una llamada a allowInsecureDomain(), el archivo catalog.swf modificado puede crear scripts en cart.swf. El archivo catalog.swf modificado puede utilizar ActionScript para acceder a las variables de cart.swf, por lo que se podrá leer la información de la tarjeta de crédito y otros datos confidenciales del usuario. Además, puede enviar estos datos al servidor de un atacante.

Aunque, obviamente, esta no es la solución deseada, todavía desea permitir el uso de scripts entre películas entre los dos archivos SWF de su sitio. A continuación se exponen las dos formas posibles de rediseñar este hipotético sitio de comercio electrónico para evitar allowInsecureDomain():

En los navegadores Web se ha impuesto la separación entre los archivos HTTPS y no HTTPS durante años. Además, la situación descrita es un buena razón para aplicar esta restricción. Flash Player ofrece la posibilidad de omitir esta restricción de seguridad cuando es absolutamente imprescindible, pero asegurándose de considerar con atención las consecuencias antes de pasar a la acción.

Para más información, consulte las siguientes secciones:

Parámetros

... domains — Una o varias cadenas u objetos URLRequest que dan nombre a los dominios a los que desea permitir el acceso. Puede especificar el dominio especial "*" para permitir el acceso desde todos los dominios.

Especificar "*" es el único modo de permitir el acceso a archivos SWF no locales desde archivos SWF locales publicados con el parámetro Acceder sólo a la red de la opción Seguridad de reproducción local (Archivo > Configuración de publicación > ficha Flash) en la herramienta de edición de Flash.

Véase también

loadPolicyFile()método 
public static function loadPolicyFile(url:String):void

Versión del lenguaje: ActionScript 3.0
Versión del reproductor: Flash Player 9

Carga un archivo de política para distintos dominios de una ubicación especificada por el parámetro url. Flash Player utiliza archivos de política para determinar si se permite que las películas Flash carguen datos desde servidores que no sean el suyo propio.

De forma predeterminada, Flash Player busca archivos de política sólo en una ubicación: /crossdomain.xml en el servidor al que se ha solicitado una solicitud de carga de datos.

Con Security.loadPolicyFile(), Flash Player puede cargar archivos de política de ubicaciones arbitrarias, como se muestra en el siguiente ejemplo:

  Security.loadPolicyFile("http://www.example.com/sub/dir/pf.xml");
  

De este modo, Flash Player recupera un archivo de política de la URL especificada. Los permisos otorgados por el archivo de política de dicha ubicación se aplicarán a todo el contenido del mismo nivel o de un nivel inferior de la jerarquía de directorios virtual del servidor. Por ejemplo, según el código anterior, estas líneas no emiten ninguna excepción:

 import flash.net.*;
  var request:URLRequest = new URLRequest("http://www.example.com/sub/dir/vars.txt");
  var loader:URLLoader = new URLLoader();
  loader.load(request);

  var loader2:URLLoader = new URLLoader();
  var request2:URLRequest = new URLRequest("http://www.example.com/sub/dir/deep/vars2.txt");
  loader2.load(request2);
  

Sin embargo, el siguiente código sí emite una excepción de seguridad:

 import flash.net.*;
  var request3:URLRequest = new URLRequest("http://www.example.com/elsewhere/vars3.txt");
  var loader3:URLLoader = new URLLoader();
  loader3.load(request3);
  

Puede utilizar loadPolicyFile() para cargar los archivos de política que desee. Al considerar una solicitud que requiera un archivo de política, Flash Player siempre espera a que termine la descarga de archivos de política antes de denegar una solicitud. Como opción final, si no hay ningún archivo de política especificado con loadPolicyFile() que autorice una solicitud, Flash Player consulta la ubicación predeterminada original: /crossdomain.xml.

La utilización del protocolo xmlsocket con un número de puerto específico le permite recuperar archivos de política directamente de un servidor XMLSocket, como se muestra en el siguiente ejemplo:

  Security.loadPolicyFile("xmlsocket://foo.com:414");
  

De este modo, Flash Player intenta recuperar un archivo de política desde el host y el puerto especificados. Puede utilizarse cualquier puerto, no sólo los puertos 1024 y superiores. Tras establecer una conexión con el puerto especificado, Flash Player transmite <policy-file-request />, terminada por un byte null. Puede configurarse un servidor XMLSocket para que responda a solicitudes de archivos de política y a conexiones XMLSocket normales en el mismo puerto; en este caso, el servidor deberá esperar <policy-file-request /> antes de transmitir un archivo de política. También puede configurarse un servidor para que responda a solicitudes de archivos de política en un puerto distinto de las conexiones estándar; en este caso, el servidor puede enviar un archivo de política cuando se establece una conexión en el puerto del archivo de política dedicado. El servidor debe enviar un byte nulo para terminar un archivo de política y más tarde puede cerrar la conexión; si el servidor no cierra la conexión, Flash Player la cerrará después de recibir el byte null de terminación.

Un archivo de política que proporciona un servidor XMLSocket tiene la misma sintaxis que cualquier otro archivo de política, pero debe especificar también los puertos a los que se concede el acceso. Si un archivo de política procede de un puerto inferior a 1024, dicho archivo puede conceder acceso a cualquier puerto; cuando un archivo de política procede del puerto 1024 o superior, sólo puede conceder acceso a otros puertos 1024 y superiores. Los puertos permitidos se especifican en el atributo "to-ports" de la etiqueta <allow-access-from>. Los números de puerto únicos, los intervalos de puertos y los comodines están permitidos. El ejemplo siguiente, se muestra un archivo de política XMLSocket:

  <cross-domain-policy>
    <allow-access-from domain="*" to-ports="507" />
    <allow-access-from domain="*.foo.com" to-ports="507,516" />
    <allow-access-from domain="*.bar.com" to-ports="516-523" />
    <allow-access-from domain="www.foo.com" to-ports="507,516-523" />
    <allow-access-from domain="www.bar.com" to-ports="*" />
  </cross-domain-policy>
  

Un archivo de política procedente de la ubicación predeterminada original (/crossdomain.xml en un servidor HTTP del puerto 80) autoriza implícitamente el acceso a todos los puertos 1024 y superiores. No se puede recuperar un archivo de política que autorice operaciones de XMLSocket desde cualquier otra ubicación de un servidor HTTP; las ubicaciones personalizadas para los archivos de política XMLSocket deben estar en un servidor XMLSocket.

Se puede conceder la capacidad de conectar con puertos inferiores a 1024 mediante un archivo de política cargado sólo con loadPolicyFile().

Asimismo, puede evitar que un archivo SWF utilice este método, estableciendo el parámetro allowNetworking de las etiquetas object y embed en la página HTML que incluye el contenido de SWF.

Para más información, consulte las siguientes secciones:

Parámetros

url:String — Ubicación de la URL del archivo de política de varios dominios que se va a cargar.

Véase también

showSettings()método 
public static function showSettings(panel:String = "default"):void

Versión del lenguaje: ActionScript 3.0
Versión del reproductor: Flash Player 9

Muestra el panel Parámetros de seguridad de Flash Player.

Parámetros

panel:String (default = "default") — Valor de la clase SecurityPanel que especifica qué panel Parámetros de seguridad desea mostrar. Si omite este parámetro, se utiliza SecurityPanel.DEFAULT.

Véase también

Información sobre constantes
LOCAL_TRUSTEDConstante
public static const LOCAL_TRUSTED:String = "localTrusted"

Versión del lenguaje: ActionScript 3.0
Versión del reproductor: Flash Player 9

El SWF es un archivo local y el usuario ha determinado que es de confianza, mediante el Administrador de configuración o un archivo de configuración FlashPlayerTrust. El archivo SWF puede leer en orígenes de datos locales y puede comunicarse con Internet.

Véase también

LOCAL_WITH_FILEConstante 
public static const LOCAL_WITH_FILE:String = "localWithFile"

Versión del lenguaje: ActionScript 3.0
Versión del reproductor: Flash Player 9

Este SWF es un archivo local y no es de confianza para el usuario. No se ha publicado con una designación de red. El archivo SWF puede leer en orígenes de datos locales, pero no puede comunicarse con Internet.

Véase también

LOCAL_WITH_NETWORKConstante 
public static const LOCAL_WITH_NETWORK:String = "localWithNetwork"

Versión del lenguaje: ActionScript 3.0
Versión del reproductor: Flash Player 9

Este SWF es un archivo local y no es de confianza para el usuario. Se ha publicado con una designación de red. El archivo SWF se puede comunicar con Internet pero no puede leer en fuentes de datos locales.

Véase también

REMOTEConstante 
public static const REMOTE:String = "remote"

Versión del lenguaje: ActionScript 3.0
Versión del reproductor: Flash Player 9

Este archivo SWF procede de una URL de Internet y se rige por reglas de entorno limitado basado en dominio.

Véase también

Ejemplos Cómo utilizar los ejemplos
SecurityExample.as

En el ejemplo siguiente, se muestra cómo un evento click en un objeto Sprite se puede utilizar para mostrar el panel Configuración global de almacenamiento del panel Configuración de Flash Player. Al escenario se añade un cuadro naranja utilizando draw(). En draw(), se añade un detector de eventos click denominado clickHandler(), que responde a eventos click, haciendo que Flash Player abra su panel Configuración global de almacenamiento.
package {
    import flash.display.Sprite;
    import flash.text.TextField;
    import flash.events.*;
    import flash.system.Security;
    import flash.system.SecurityPanel;

    public class SecurityExample extends Sprite {
        private var bgColor:uint = 0xFFCC00;
        private var size:uint = 100;

        public function SecurityExample() {
            draw();
        }

        private function draw():void {
            var child:Sprite = new Sprite();
            child.graphics.beginFill(bgColor);
            child.graphics.drawRect(0, 0, size, size);
            child.graphics.endFill();
            child.buttonMode = true;

            var label:TextField = new TextField();
            label.text = "settings";
            label.selectable = false;
            label.mouseEnabled = false;
            child.addChild(label);

            child.addEventListener(MouseEvent.CLICK, clickHandler);
            addChild(child);
        }

        private function clickHandler(event:MouseEvent):void {
            Security.showSettings(SecurityPanel.LOCAL_STORAGE);
        }
    }
}




 

Enviarme un mensaje de correo electrónico cuando se añadan comentarios a esta página | Informe de comentarios

Página actual: http://livedocs.adobe.com/flash/9.0_es/ActionScriptLangRefV3/flash/system/Security.html