Foros del Web » Programando para Internet » PHP »

Scripts injertados en web pre-armada

Estas en el tema de Scripts injertados en web pre-armada en el foro de PHP en Foros del Web. Hola a todos :) Estoy muy tarada con esto... a ver si alguien puede ayudarme por favor. Tengo un sitio modular implementado por otro que ...
  #1 (permalink)  
Antiguo 20/04/2005, 22:14
(Desactivado)
 
Fecha de Ingreso: septiembre-2004
Mensajes: 360
Antigüedad: 13 años, 2 meses
Puntos: 1
Scripts injertados en web pre-armada

Hola a todos :)
Estoy muy tarada con esto... a ver si alguien puede ayudarme por favor.
Tengo un sitio modular implementado por otro que me permite agregar "algunas cositas". Lo que quiero es interactuar con mis bases desde el Panel del Admin pero para hacerlo sin que esa info pueda ser vista por otros tengo que utilizar un dir con acceso restringido... es decir... no veo cómo llamar a mi script y que reconozca que hubo un login previo.
Necesito que sólo desde ese link que agregué se pueda accedar y no desde otra parte... pero cómo ???
Sólo puedo con dir privado y me olvido ?
Gracias y besos.
  #2 (permalink)  
Antiguo 21/04/2005, 01:20
 
Fecha de Ingreso: mayo-2004
Ubicación: Argentina
Mensajes: 126
Antigüedad: 13 años, 6 meses
Puntos: 1
Susana, como estas?

Te comento, si usas un archivo de configuracion (tipo conf.php), podrías definir una contraseña (por ej.) la cual va a tener que ser validada, en el caso de que algo sea del "tipo privado".
Entonces yo haría algo asi:

Un archivo conf.php para contener ese dato, un login.php para validar el acceso, y una pagina.php que requiera de x "cosa" para que pueda ser vista:

CONF.PHP

$adminombre1 = "Santiago";
$admiclave = "pass";

LOGIN.PHP

<?php
if (isset($_POST['submit'])) {
include ("conf.php");
if (($_POST[nombre]==$adminombre1) AND ($_POST[clave]==$admiclave)) {
setcookie("administrador","$_POST[nombre]",time()+3600);
header("Location: index.php");} else {header("Location: login.php?error");}
} else {
?><title>Ingreso al Panel de Administracion</title>
<LINK href='../includes/style.css' type=text/css rel=stylesheet>
<br><br>
<p align="center"><img src="/administracion/imagenes/logo.gif" width="242" height="66" border="0" align="absmiddle"><br>
<? if (isset($_GET['error'])) {echo"<p align='center'><font color=red>Los datos de Administración son Incorrectos.</font></p>";}
if (isset($_GET['chau'])) {echo"<font color=red><center>Chau $_GET[chau], espero no hayas destrozado algo. :)</center></font>";}?></p>
<table width="100%" border="0" align="center" cellpadding="0" cellspacing="0">
<tr>
<td align="center" valign="middle"><form method="post" action="login.php">
<p><strong>Nombre</strong>&nbsp;
<INPUT name="nombre" type="text">
</p>
<p><strong>Clave&nbsp;</strong>&nbsp;&nbsp;&nbsp;&nbsp;
<INPUT name="clave" type="pass"></p>
<p><INPUT type="submit" value="Identificar" name="submit"></p></form></td>
</tr>
</table><?}?>

PAGINA.PHP

<? if ($_REQUEST['administrador']) { //si está seteada la Cookie con el valor administrador ?>
Mostras el panel de Administracion
<? } else { header("Location: ?mod=login");}?>


Espero que sea lo que preguntas... :)

Saludos!
PD: las etiquetas para mostrar codigo php no funcionaron :(
  #3 (permalink)  
Antiguo 21/04/2005, 01:31
Avatar de jam1138
/** @package Moderador */
 
Fecha de Ingreso: julio-2004
Ubicación: sèveR led onieR lE
Mensajes: 9.368
Antigüedad: 13 años, 4 meses
Puntos: 101
No entiendo bien tu pregunta... tienes ya una página con su login y todo y quieres implementar este mismo loguin a otro script de tu creación??... de ser esto solo tendrás que recojer una variable de sesión... algo que ya debe de estar haciendo tu página que tienes ahora, tendrías que buscar qué variables manejan para implementarlas en tu script....

FAQ: http://www.forosdelweb.com/showthrea...998#post238998
Quizá: http://www.forosdelweb.com/showthrea...967#post243967

ó... http://www.forosdelweb.com/f18/como-proteger-varias-paginas-con-contrasena-285749/

Intentalo y si no es este tu problema plantealo más detalladamente. Suerte!
__________________
٩(͡๏̯͡๏)۶
» Cómo hacer preguntas de manera inteligente «

"100 años después, la revolución no es con armas, es intelectual y digital"
  #4 (permalink)  
Antiguo 21/04/2005, 23:33
(Desactivado)
 
Fecha de Ingreso: septiembre-2004
Mensajes: 360
Antigüedad: 13 años, 2 meses
Puntos: 1
Muchas muchas gracias

Chicos son espectaculares, muchísimas gracias
Voy a leer atentamente las soluciones que me proponen tanto jam1138 como pincho porque soy bastante naba y me cuesta
Pero aclaro un poco el tema:
Yo pensé hacer algo como lo que me decís Pincho pero no quieren tener un segundo login... quieren pinchar en la opción que agregué pero impedir que se pueda entrar a esa sección desde afuera.
Esto sería lo que me pregunta jam1138... es decir... quiero "implementar el login activo al nuevo script" pero no he podido encontrar las variables que están usando... está el conf.php pero no veo nada. Y además no puedo cambiar la extensión del index (no puede ser php).
Pensé en cargar variables con javascript para luego pasarlas a php... estoy trabucada
Sigo tratando de entender y vuelvo.
Va un beso
  #5 (permalink)  
Antiguo 22/04/2005, 02:06
 
Fecha de Ingreso: mayo-2004
Ubicación: Argentina
Mensajes: 126
Antigüedad: 13 años, 6 meses
Puntos: 1
Sonrisa Otra idea.

mmmmm, bueno, es un caso un poco "restringido", pero si no hay acceso a las variables, no se puede cambiar nada ni agregar (jaajaj que feo laburar para gente tan estricta) yo propongo que agregues una columna más a tu TABLA "usuarios" y le pongas Admin (tipo tinyint(1), default 0).


Entonces, necesitas si o si, modificar la pagina de login ("...no quieren tener un segundo login...") para averiguar el valor Admin (1 -> Si es admin || Reciproco falso) del usuario.

Login.php
simple formulario donde una vez enviado 'a si mismo', conecta a la BD tabla usuario y se fija cual es el valor que tiene ese usuario con ese pass (datos que se escribieron en el formulario) . Si el resultado del SELECT dio que el valor de Admin es 1, creas una cookie con el valor admin (por ej.) y lo redireccionas a la pagina 'X'.
Donde 'X' también verifica que sea cierto que es admin, Esto es para evitar que entren sin el permiso necesario. ("...impedir que se pueda entrar a esa sección desde afuera...")

X.php
<? if ($_REQUEST['admin']) { //si está seteada la Cookie con el valor admin es correcto ?>
Mostras el panel de Administracion
<? } else { header("Location: ?mod=login");}?>

Espero que te sirva. Saludos.
PD: Tomando mate pensaba... no se puede modificar, pero todo es posible.
  #6 (permalink)  
Antiguo 25/04/2005, 01:05
(Desactivado)
 
Fecha de Ingreso: septiembre-2004
Mensajes: 360
Antigüedad: 13 años, 2 meses
Puntos: 1
Finalmente...

Gracias pincho tus ideas son muy buenas pero...

no las puedo poner en práctica.
El login original no lo puedo modificar porque está encriptado (todo está encriptado con ZendOptimizer y yo de eso ni "jota").
Intenté con http_referer (con esto venía bastante bien pero el server no lo acepta), intenté pasando variables pero el template adminarea.html se puede "ver" desde la web y siempre me quedaba algún "agujero" por donde podían llegar.
Así que quieran o no hay que entrar en un 2do. login para entrar a las opciones nuevas... y lo hice con el esquema que vos me sugeriste pincho porque el tema de los niveles me parece importante.
Seguramente hay una forma de optimizar todo esto pero bue... por ahora es lo que hay
Muchas gracias y va un beso. Si se te ocurre algo chiflame porfi.
---Susana
  #7 (permalink)  
Antiguo 03/05/2005, 18:00
(Desactivado)
 
Fecha de Ingreso: septiembre-2004
Mensajes: 360
Antigüedad: 13 años, 2 meses
Puntos: 1
Por favor pincho o alguien si puede ayudarme

Hola de nuevo.
Estoy otra vez con esto... he podido agregar secciones restringidas (gracias a pincho) pero ahora necesito restringir el acceso a "algunas" de las secciones originales (las que yo no he creado). El problema es que si recuerdan la variable y hacen link directo a una sección pueden acceder.
Para más datos los links son algo así:
http://www.misitio.com/admin.php?p=1... podría reemplazarlo por un alias y restringirlo pero si el usuario recuerda el link puede llegar desde la barra de direcciones.
La idea es que el Panel de Admin se abra pero haya secciones para admin y secciones para superadmin).
Se entendió algo ?
Cómo hago ???

Cariños y muchas gracias.

Última edición por Suyta; 03/05/2005 a las 19:42
  #8 (permalink)  
Antiguo 04/05/2005, 06:34
 
Fecha de Ingreso: mayo-2004
Ubicación: Argentina
Mensajes: 126
Antigüedad: 13 años, 6 meses
Puntos: 1
Susana, como andas?

Pensalo asi, si la recuerdan y tipean entran... como la van a recordar si nunca la vieron?
podes usar otra variable que debe ser comprobada y Listo, pero esta vez que sea invisible para los visitantes, POST, cookie, sesiones.
si estan la variable p (que esta por GET) y otra que generes por post ahi si le permitis el acceso.
La otra y mejor manera te la comente con el uso de Tablas, donde le das el valor que creas para cada usuario (1-> SuperAdmin, 2->Admin)... No probaste al Autentificator? Excelente trabajo de Cluster.
O podes usar campos hidden en un formulario.
Hay muchas formas... espero que tengas acceso al codigo.

Saludos!!
  #9 (permalink)  
Antiguo 04/05/2005, 12:18
(Desactivado)
 
Fecha de Ingreso: septiembre-2004
Mensajes: 360
Antigüedad: 13 años, 2 meses
Puntos: 1
Hola pincho
Le pregunté a Cluster y me dijo que su Autenticador sólo me sirve si tengo acceso a los archivos que quiero restringir.
Y por lo que me estás diciendo vos cualquiera de las variantes exigen los mismo, no ?
Por ej. yo quiero restringir el acceso a http://www.misito.com/admin.php?p=1 pero ni siquiera sé cuál es el archivo real... y si lo supiera... está encriptado... conclusión: imposible ?
En resumen ---> no hay caso ---> si no tengo acceso a esos php no puedo hacer nada ? ---> ni siquiera modificar el login porque estoy en la misma, o estoy mareada y sí puedo ?
Cluster me dice que en ese caso podría usar .htaccess pero estaría en la misma o hablo ganzadas ?
Muchas gracias y beso

Ahora estoy editando porque se me acaba de ocurrir esto y te lo pregunto pincho ---> lo que sí podría es crear un "login paralelo" para el admin, no ?... digo sólo para el admin porque si es un usuario común el que ingresa ya ahí lo deriva a rutinas que todavía son un misterio para mí... pero el proceso que controlar al admin y el superadmin lo puedo manejar (creo) ---> esto podría ser quizás, tal vez, ojalá

Última edición por Suyta; 04/05/2005 a las 13:10
  #10 (permalink)  
Antiguo 05/05/2005, 07:12
 
Fecha de Ingreso: mayo-2004
Ubicación: Argentina
Mensajes: 126
Antigüedad: 13 años, 6 meses
Puntos: 1
De acuerdo y si no queda otra...

Si, como te comentaba, es un caso un poco restringido porque no tenes acceso al codigo fuente. Es una locura querer hacer algo sin poder siquiera modificar o agregar un include (por ejemplo) para ampliar las caracteristicas de un sitio.
Antes me comentabas que no querían otro login, con lo cual tenes que pensar en o modificar el archivo que esta codificado con Zend (No creo, pero habria que averiguar si se puede) para meter las comprobaciones o "adosar" las mismas al codigo con un include al principio del mismo. PERO, si ves que resolves el problema con otro login, Bueno! tampoco es lo peor que puede pasar. (de ultima le podes echar la culpa al que codifico el codigo!! jajaaja y quedas bien.)
En cuanto al .htaccess es una solucion, no me gusta para nada, pero es la 2da solucion que tomaría en cuenta..

Y con lo de el "login paralelo"... buscaste un par de salidas y ninguna sirvio, esta fue la primer idea y si funciona. Asi que dale con el otro login y olvidate... saludos!!

PD: No era mejor Borrar todo y volver a empezar?
  #11 (permalink)  
Antiguo 21/05/2005, 02:06
(Desactivado)
 
Fecha de Ingreso: septiembre-2004
Mensajes: 360
Antigüedad: 13 años, 2 meses
Puntos: 1
!!

Muchísimas gracias por tu tiempo pincho

Y sí... es mejor hacer todo de nuevo pero... hay partes que no tengo ninguna idea de cómo hacerlo
Tal vez más adelante.
Cariños
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 23:55.