Foros del Web » Programando para Internet » PHP »

cambiar password en Samba y Cuenta del Sistema.

Estas en el tema de cambiar password en Samba y Cuenta del Sistema. en el foro de PHP en Foros del Web. Envió código de cambio de password y su verificación, con la intención de que me aporten con su conocimiento. Además de cambiar password de autentificación ...
  #1 (permalink)  
Antiguo 02/10/2006, 10:36
 
Fecha de Ingreso: octubre-2005
Mensajes: 405
Antigüedad: 19 años, 1 mes
Puntos: 1
cambiar password en Samba y Cuenta del Sistema.

Envió código de cambio de password y su verificación, con la intención de que me aporten con su conocimiento.
Además de cambiar password de autentificación de usuario para la intranet atravez de formulario, utilizarlo tambien para:
• Cambiar cuenta del Sistema.
• Cambiar Samba.

Cambio_password.php
<?
require("aut_verifica.inc.php"); // motor de autentificación.
?>
<html>
<head>
<title>Cambia Password Usuarios</title>
<script lenguaje="Javascript">
function compara()
{
ingreso=new String()
primera=new String()
segunda=new String()
ingreso=this.Password.password1.value
if (ingreso.length==" ")
{
alert("Debe ingresar primera Password")
return false
}
ingreso=this.Password.password2.value
if (ingreso.length==" ")
{
alert("Debe ingresar segunda Password")
return false
}
primera=this.Password.password1.value
segunda=this.Password.password2.value
if (primera != segunda)
{
alert("Ambas Password deben ser iguales")
return false
}
return true
}
</script>
</head>
<body bgcolor="#FFFFFF">
<?
$usuario=$_SESSION['usuario_login'];
$nombre=$_SESSION['usuario_nombre'];
$apellidop=$_SESSION['usuario_apellidop'];
$apellidom=$_SESSION['usuario_apellidom'];
$acceso=$_SESSION['usuario_nivel'];
?>
<form name="Password" method="post" action="verifica_cambio.php" OnSubmit="return compara(this)">
<table width="350" border="1" cellspacing="0" cellpadding="4" align="center">
<tr>
<td colspan="2" height="30" bgcolor="#0099FF">
<div align="center"><b><font size="2" color="#FFFFFF">.:
Cambia Password :.</font></b></div>
</td>
</tr>
<tr bgcolor="#FFFFCC">
<td width="158">
<div align="right"><font size="2">Usuario
: </font></div>
</td>
<td width="170"><b><font size="2"><? echo $usuario; ?>
</font></b></td>
</tr>
<tr bgcolor="#FFFFCC">
<td width="158">
<div align="right"><font size="2">Nombres
: </font></div>
</td>
<td width="170"><b><font size="2"><? echo $nombre; ?>
</font></b></td>
</tr>
<tr bgcolor="#FFFFCC">
<td width="158">
<div align="right"><font size="2">Apellidos
: </font></div>
</td>
<td width="170"><b><font size="2"><? echo $apellidop." ".$apellidom; ?>
</font></b></td>
</tr>
</tr>
<tr bgcolor="#FFFFCC">
<td width="158">
<div align="right"><font size="2">Nivel de Acceso : </font></div>
</td>
<td width="170"><b><font size="2"><? echo $acceso; ?>
</font></b></td>
</tr>
<tr bgcolor="#FFFFCC">
<td width="158">
<div align="right"><font size="2">Nueva Password
: </font></div>
</td>
<td width="170"><b><font size="2">
<input type="password" name="password1" class="imputbox" maxlength="15">
</font></b></td>
</tr>
<tr bgcolor="#FFFFCC">
<td width="158">
<div align="right"><font size="2">Password
(repitala) : </font></div>
</td>
<td width="170"><b><font size="2">
<input type="password" name="password2" class="imputbox" maxlength="15">
</font></b></td>
</tr>
<tr bgcolor="#FFFFCC">
<td colspan="2" height="40">
<div align="center">
<input type="submit" name="Submit" value="Cambia Password">
</div>
</td>
</tr>
</table>
</form>
</BODY>
</HTML>


Verifica_cambio.php
<?
require("aut_verifica.inc.php"); // motor de autentificación.
$usuario=$_SESSION['usuario_login'];
require("aut_config.inc.php"); // motor de configuracion.
$db_conexion= mysql_connect("$sql_host", "$sql_usuario", "$sql_pass") or die("No se pudo conectar a la Base de datos") or die(mysql_error());
mysql_select_db("$sql_db") or die(mysql_error());
$usuario_consulta = mysql_query("SELECT ID,usrlogin,Nombres,PApellido,MApellido,nivel_acce so FROM $sql_tabla") or die("No se pudo realizar la consulta a la Base de datos");
$pass1=$password1;
$pass2=$password2;
$usuario=stripslashes($usuario);
$pass1=md5($pass1);
mysql_query("UPDATE users SET pass='$pass1' WHERE usrlogin='$usuario'") or die(mysql_error());
mysql_close();
header("Location:centroprincipal.html");
?>



Ah!! No sé si es relevante o no pero utilizo Suse 10.1.

De antemano agradezco cualquier colaboración al respecto.
  #2 (permalink)  
Antiguo 02/10/2006, 10:53
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 22 años, 10 meses
Puntos: 129
Lo más sano es que cambies tu sistema de autentificación en Samba, S.O. de tu servidor y de tu aplicación de la "intranet".

Usa "LDAP" para todo .. ese tipo de servidores está diseñado para tal fin: unificar cuentas de usuarios. PHP se puede conectar a un servidor LDAP sin problemas (www.php.net/ldap) y lo mismo tu podrás configurar Samba para que use LDAP y lo mismo con los usuarios de tu S.O.

Un saludo,
__________________
Por motivos personales ya no puedo estar con Uds. Fue grato haber compartido todos estos años. Igualmente los seguiré leyendo.
  #3 (permalink)  
Antiguo 02/10/2006, 11:05
 
Fecha de Ingreso: octubre-2005
Mensajes: 405
Antigüedad: 19 años, 1 mes
Puntos: 1
Disculpa pero no entiendo mucho del tema, es posible que me expliques mas detenidamente lo que me has mencionado.
  #4 (permalink)  
Antiguo 02/10/2006, 11:10
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 22 años, 10 meses
Puntos: 129
Te recomiendo antes de nada leer sobre LDAP:

http://es.wikipedia.org/wiki/LDAP

Se trata de que también cambies los Usuarios de tu S.O. (Suse) a que ahora usen LDAP (cuando lo instales si es que te corresponde a tí hacerlo o a quien lo haga). Lo mismo con Samba y lo más probable con otros servicios que tu servidor corra: servidores FTP, MTA (de mail) .. etc.

Un saludo,
__________________
Por motivos personales ya no puedo estar con Uds. Fue grato haber compartido todos estos años. Igualmente los seguiré leyendo.
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 14:11.