WA SET URL FILTERS
WA SET URL FILTERS ( {* ;} objeto ; arrFiltros ; arrAutorizRechazar )
Parámetro | Tipo | Descripción | |
---|---|---|---|
* | Operador | → | Si se especifica, objeto es un nombre de objeto (cadena) Si se omite, objeto es una variable |
objeto | any | → | Nombre de objeto (si se especifica *) o Variable (si se omite *) |
arrFiltros | Text array | → | Array de filtros |
arrAutorizRechazar | Boolean array | → | Array autorizar- rechazar |
Este comando no es hilo seguro, no puede ser utilizado en código apropiativo.
Descripción
El comando WA SET URL FILTERS permite colocar uno o más filtros para el área Web designada por los parámetros * y objeto.
Antes de cargar toda página solicitada, 4D consulta la lista de filtros con el fin de verificar si el URL objetivo está permitido. La evaluación del URL está basada en los contenidos de los arrays arrFiltros y arrAutorizRechazar.
Si el URL solicitado no está autorizado, no se carga y se genera el evento de formulario On URL Filtering.
Los arrays arrFiltros y arrAutorizRechazar deben estar sincronizados.
• Cada elemento del array arrFiltros debe contener un URL a filtrar. Puede utilizar * como comodín para reemplazar uno o más caracteres.
• Cada elemento correspondiente en el array arrAutorizRechazar debe contener un booleano indicando si el URL debe ser autorizado (True) o rechazado (False).
En caso de contradicción a nivel de los parámetros (autorización y rechazo de un mismo URL), se tendrá en cuenta la última configuración.
Para desactivar el filtro de los URLs, llame el comando y pase arrays vacíos o pase, respectivamente, los valores "*" y True en los últimos elementos de los arrays arrFiltros y arrAutorizRechazar.
Una vez ejecutado el comando, los filtros se vuelven propiedad del área Web. Si los arrays arrFiltros y arrAutorizRechazar son borrados o reinicializados, los filtros permanecen activos siempre que el comando no haya sido ejecutado nuevamente. Para conocer los filtros activos para un área, debe utilizar el comando WA GET URL FILTERS.
Importante: el filtro de los URLs efectuado por este comando sólo aplica a la variable "URL" primaria de la página, bien sea del usuario, código javascript o código 4D, excepto para el comando WA OPEN URL y las URLs que comienzan con "javascript:".
Ejemplo 1
Usted quiere negar el acceso a todos los sitios web .org, .net y .fr:
ARRAY TEXT($filters;0)
ARRAY BOOLEAN($AllowDeny;0)
APPEND TO ARRAY($filters;"*.org")
APPEND TO ARRAY($AllowDeny;False)
APPEND TO ARRAY($filters;"*.net")
APPEND TO ARRAY($AllowDeny;False)
APPEND TO ARRAY($filters;"*.fr")
APPEND TO ARRAY($AllowDeny;False)
WA SET URL FILTERS(MyWArea;$filters;$AllowDeny)
Ejemplo 2
Usted quiere negar el acceso a todos los sitios Web excepto los sitios rusos (.ru):
ARRAY TEXT($filtros;0)
ARRAY BOOLEAN($PermitirRechazar;0)
APPEND TO ARRAY($filtros;"*") //Seleccionar todo
APPEND TO ARRAY($PermitirRechazar;False) //Negar todo
APPEND TO ARRAY($filtros;"www.*.ru") //Seleccionar *.ru
APPEND TO ARRAY($PermitirRechazar;True) //Permitir
WA SET URL FILTERS(MiWArea;$filtros;$PermitirRechazar)
Ejemplo 3
Usted quiere permitir el acceso únicamente a los sitios Web 4D (.com, .fr, .es, etc.):
ARRAY TEXT($filtros;0)
ARRAY BOOLEAN($PermitirRechazar;0)
APPEND TO ARRAY($filtros;"*") //Selecionar todo
APPEND TO ARRAY($PermitirRechazar;False) //Rechazar todo
APPEND TO ARRAY($filtros;"www.4D.*") //Seleccionar 4d.fr, 4d.com...
APPEND TO ARRAY($PermitirRechazar;True) //Permitir
WA SET URL FILTERS(MiWArea;$filtros;$PermitirRechazar)
Ejemplo 4
Usted quiere autorizar el acceso local a la documentación únicamente (ubicada en la carpeta C://doc):
ARRAY TEXT($filtros;0)
ARRAY BOOLEAN($PermitirRechazar;0)
APPEND TO ARRAY($filtros;"*") //Seleccionar todo
APPEND TO ARRAY($PermitirRechazar;False) //Negar todo
APPEND TO ARRAY($filtros;"file://C:/doc/*")
//Seleccionar la ruta al archivo:// autorizado
APPEND TO ARRAY($PermitirRechazar;True) //Autorizar
WA SET URL FILTERS(MiWArea;$filtros;$PermitirRechazar)
Ejemplo 5
Usted quiere autorizar todos los sitios excepto uno, por ejemplo el sitio Elcaro:
ARRAY TEXT($filtros;0)
ARRAY BOOLEAN($PermitirRechazar;0)
APPEND TO ARRAY($filtros;"*")
APPEND TO ARRAY($PermitirRechazar;True) //Permitir todos
APPEND TO ARRAY($filtros;"*elcaro*") //Negar todo el contenido del elcaro
APPEND TO ARRAY($PermitirRechazar;False)
WA SET URL FILTERS(MiWArea;$filtros;$PermitirRechazar)
Ejemplo 6
Usted quiere negar el acceso a direcciones IP específicas:
ARRAY TEXT($filtros;0)
ARRAY BOOLEAN($PermitirRechazar;0)
APPEND TO ARRAY($filtros;"*") //Seleccionar todo
APPEND TO ARRAY($PermitirRechazar;True) //Permitir todo
APPEND TO ARRAY($filtros;86.83.*") //Seleccionar las IP que comienzan por 86.83.
APPEND TO ARRAY($PermitirRechazar;False) //Negar
APPEND TO ARRAY($filtros;86.1*") //Seleccionar las IP que comienzan por 86.1 (86.10, 86.135 etc.)
APPEND TO ARRAY($PermitirRechazar;False) //Negar
WA SET URL FILTERS(MiWArea;$filtros;$PermitirRechazar)
//(Note que la dirección IP de un dominio puede variar).