Inicio de mvnForum Bienvenido Guest   | Iniciar sesión
  Búsqueda  
  Indice  | Temas Recientes  | Quién Está en Línea  | Lista de Usuarios  | Nuevo Usuario  | Búsqueda  | Ayuda  | RSS feeds


Ir a »
Estado del tema: Normal
Total de mensajes en este tema: 8
[Añadir a Mis Favoritos] [Añadir un aviso a este tema] [Publicar nuevo tema]
Autor
Tema Anterior Este tema ha sido visto 4661 veces y tiene 7 respuestas Tema Siguiente
Femenino Lorena
Advanced Member



Ingresó: 26-oct-2006
Mensajes: 100
Estado: Desconectados

Acceso a intranet desde extranet Responder a este mensaje
Responder citando

Buenas tardes,

tengo un site que es la extranet donde un usuario se logea y accede a otro site dentro del mismo OpenCms y mis problemas son los siguientes:

- Cuando hago el response.sendRedirect(cmsjsp.link("/index.html")); desde el site de extranet se me va al index de la extranet y no de la intranet (otro site, ya que la url de acceso ahora es la misma, cuando se active el puerto será otra, pero yo quiero probarlo offline y no sé como).

- si alguien no recuerda su password se le da la opcion de que introduzca su nombre de usuario y se le cambie el password por uno aleatorio con el siguiente código:

<%! String cadenaAleatoria(int longitud){

// FUNCIÓN QUE DEVUELVVE UNA CADENA ALEATORIA DE LONGITUD INDICADA EN EL PARÁMETRO

String cadenaaleatoria = new String();

String caracter[] = {"0", "1", "2", "3", "4", "5", "6", "7", "8", "9", "a", "b", "c", "d", "e", "f", "g", "h", "i", "j", "k", "l", "m", "n", "o", "p", "q", "r", "s", "t", "u", "v", "w", "x", "y", "z"};

for (int i=1;cadenaaleatoria.length()< longitud;i++){

cadenaaleatoria= cadenaaleatoria+ caracter[(int)(36*Math.random())];

}

return cadenaaleatoria;

};

%>

<%
String username= request.getParameter("username");

// generador de password

String password = new String();

password = cadenaAleatoria(6);

CmsObject cms = OpenCms.initCmsObject("Guest");

CmsUser user = new CmsUser();

boolean enviomail = false;

try{

user= cms.readUser(username,2);

cms.setPassword(user.getName(),password);
ESTA ES LA INSTRUCCIÓN QUE NO LE GUSTA

enviomail=true;

}

catch (Exception e)

{
out.println("error: "+e);
SIEMPRE SALTA AQUI Y APARECE EL SIGUIENTE ERROR error: org.opencms.security.CmsRoleViolationException: Error setting the password of user "lorena".
//response.sendRedirect("errorremember1.html");

}

try{

if (enviomail)

{

/* Envio del mail */

String host = cms.getConfigurations().get("correo").toString(); // Servidor de Correo definido en opencms.properties

String from = cms.getConfigurations().get("emailAdministrador").toString(); //Dirección del Administrador de Iberolab definido en opencms.properties

String cuerpo = "El Comité Organizador del Tercer Congreso Virtual Iberoamericano sobre Gestión de Calidad en Laboratorios le da la bienvenida. Como congresista, podrá acceder a todas las áreas temáticas del Congreso, asistir y/o participar en los foros de discusión, etc."+"\n"+

"Para acceder a la parte privada, dispone de los siguientes datos, que en unos minutos estarán activos: "+"\n"+

"\n"+"Usuario: "+username+"\n"+

"Contraseña: "+password;

// Obteniendo las propiedades del sistema

Properties props = System.getProperties();

// Configurando el servidor de correo

props.put("mail.smtp.host", host);

// Obtenemos la session

javax.mail.Session session2 = Session.getDefaultInstance(props, null);

// Definimos el mensaje

MimeMessage message = new MimeMessage(session2);

message.setFrom(new InternetAddress(from));

message.addRecipient(Message.RecipientType.TO,new InternetAddress(user.getEmail()));

message.setSubject("Inscripción a Iberolab");
message.setText(cuerpo);

// Send message

Transport.send(message);

}

y a pesar de que soy un usuario no me encuentra dentro de OpenCms por lo comentado en el código.

Muchas gracias por la ayuda.

Saludos

Lorena
[11-abr-2007 12:12:45] Mostrar la Versión Imprimible        Send Private Message [Enlace] Reportar mensaje ofensivo: por favor inicie sesión primero  Ir al inicio 
Masculino sergio
Administrador
Avatar del Miembro

España
Ingresó: 27-sep-2006
Mensajes: 2470
Estado: Desconectados
Re: Acceso a intranet desde extranet Responder a este mensaje
Responder citando

Al primer problema, no veo donde le indicas que se vaya a un index o a otro, tendras que poner la ruta, no???

En el segundo caso, supongo que no te deja cambiar el password pq para ello tendras que logarte como usuario administrador, si no eres admin, no tienes permiso para realizar esa operación. Prueba logarte antes como admin y eso, a ver que tal.
----------------------------------------
---------------------------------------------------
Sergio Rapos Vargas.
Administrador de OpenCmsHispano.
sergio.raposo@opencmshispano.es
[12-abr-2007 5:02:34] Mostrar la Versión Imprimible        Send Private Message [Enlace] Reportar mensaje ofensivo: por favor inicie sesión primero  Ir al inicio 
Femenino Lorena
Advanced Member



Ingresó: 26-oct-2006
Mensajes: 100
Estado: Desconectados

Re: Acceso a intranet desde extranet Responder a este mensaje
Responder citando

Muchas gracias por tu respuesta,

el problema en el primer caso es que al estar los dos sites dentro de la misma aplicacion, los dos tienen la misma ruta:

http://localhost:80/opencms/opencms/index.html

a pesar de que uno esta en la carpeta o site extranet y el otro en la intranet la unica diferencia es el puerto y no quiero poner la url entera para redireccionar, además si la pusiera podría probarlo offline?

gracias por la ayuda

saludos

Lorena
[12-abr-2007 5:20:54] Mostrar la Versión Imprimible        Send Private Message [Enlace] Reportar mensaje ofensivo: por favor inicie sesión primero  Ir al inicio 
Masculino sergio
Administrador
Avatar del Miembro

España
Ingresó: 27-sep-2006
Mensajes: 2470
Estado: Desconectados
Re: Acceso a intranet desde extranet Responder a este mensaje
Responder citando

me imagino, que a todos los efectos, dos sites en opencms son totalmente independientes uno del otro, por lo que para hacer link de uno a otro, tendras que ponerlo como link externo, igual que si lo pones a otra web.

Para probarlo en offline, nose ..., pues supongo que no podrás hacerlo, aunque tampoco lo se con seguridad
----------------------------------------
---------------------------------------------------
Sergio Rapos Vargas.
Administrador de OpenCmsHispano.
sergio.raposo@opencmshispano.es
[12-abr-2007 5:32:02] Mostrar la Versión Imprimible        Send Private Message [Enlace] Reportar mensaje ofensivo: por favor inicie sesión primero  Ir al inicio 
Masculino McKarthY
Member



Ingresó: 11-ene-2007
Mensajes: 94
Estado: Desconectados

Re: Acceso a intranet desde extranet Responder a este mensaje
Responder citando

Hace tiempo que no entro al foro..... y este hilo parece q esta cerrado pero no solucionado, a mi me ha pasado lo mismo y pongo los pasos a seguir por si a alguien más le puede surgir este mismo problema:


// 1º Tienes que logar a un usuario que tenga permisos de administrador con el CmsObject
CmsJspActionElement cms = new CmsJspActionElement( pageContext, request, response );
CmsObject cmso = cms.getCmsObject();

cmso.loginUser("Admin","admin");


// 2º Tienes que saber cual es el usuario que quieres resetear su contraseña
String nombre_usuario = request.getParameter("nombre_usuario");


// 3º Generas la nueva contraseña
String nuevaPass = generaNuevaContrasena();


// 4º Modificas su contraseña
try
{
cmso.setPassword(nombre_usuario, nuevaPass);
}
catch (Exception e)
{
out.println("Error, el usuario especificado no existe");
}


// 5º Cierras la sesión del usuario administrador
session.invalidate();



Un saludo.
[05-dic-2007 11:32:27] Mostrar la Versión Imprimible        Send Private Message [Enlace] Reportar mensaje ofensivo: por favor inicie sesión primero  Ir al inicio 
Masculino lagarteando
Stranger



Ingresó: 11-dic-2007
Mensajes: 9
Estado: Desconectados

Re: Acceso a intranet desde extranet Responder a este mensaje
Responder citando

 
Hace tiempo que no entro al foro..... y este hilo parece q esta cerrado pero no solucionado, a mi me ha pasado lo mismo y pongo los pasos a seguir por si a alguien más le puede surgir este mismo problema:


// 1º Tienes que logar a un usuario que tenga permisos de administrador con el CmsObject
CmsJspActionElement cms = new CmsJspActionElement( pageContext, request, response );
CmsObject cmso = cms.getCmsObject();

cmso.loginUser("Admin","admin");


// 2º Tienes que saber cual es el usuario que quieres resetear su contraseña
String nombre_usuario = request.getParameter("nombre_usuario");


// 3º Generas la nueva contraseña
String nuevaPass = generaNuevaContrasena();


// 4º Modificas su contraseña
try
{
cmso.setPassword(nombre_usuario, nuevaPass);
}
catch (Exception e)
{
out.println("Error, el usuario especificado no existe");
}


// 5º Cierras la sesión del usuario administrador
session.invalidate();



Un saludo.



no te preocupes, ya vendrán, andan un poco lento estos días
[13-dic-2007 5:53:58] Mostrar la Versión Imprimible        Send Private Message    Oculto a Invitados [Enlace] Reportar mensaje ofensivo: por favor inicie sesión primero  Ir al inicio 
Masculino andynedine
Member
Avatar del Miembro


Ingresó: 13-jul-2009
Mensajes: 85
Estado: Desconectados
Re: Acceso a intranet desde extranet Responder a este mensaje
Responder citando

 
Hace tiempo que no entro al foro..... y este hilo parece q esta cerrado pero no solucionado, a mi me ha pasado lo mismo y pongo los pasos a seguir por si a alguien más le puede surgir este mismo problema:


// 1º Tienes que logar a un usuario que tenga permisos de administrador con el CmsObject
CmsJspActionElement cms = new CmsJspActionElement( pageContext, request, response );
CmsObject cmso = cms.getCmsObject();

cmso.loginUser("Admin","admin");


// 2º Tienes que saber cual es el usuario que quieres resetear su contraseña
String nombre_usuario = request.getParameter("nombre_usuario");


// 3º Generas la nueva contraseña
String nuevaPass = generaNuevaContrasena();


// 4º Modificas su contraseña
try
{
cmso.setPassword(nombre_usuario, nuevaPass);
}
catch (Exception e)
{
out.println("Error, el usuario especificado no existe");
}


// 5º Cierras la sesión del usuario administrador
session.invalidate();



Un saludo.


¿Qué ocurre si se le cambia el password y eso otro? ¿Se podría meter esos datos de alguna forma por la API, sin tener que usar directamente en cadena "visible" esos datos? He probado leer el passord usando CmsUser pero la cadena que devuelve es la clave encpriptada en MD5 (creo)
----------------------------------------

[08-jun-2011 12:50:44] Mostrar la Versión Imprimible        Send Private Message    Oculto a Invitados    http://disfrutandolapaternidad.blogspot.com [Enlace] Reportar mensaje ofensivo: por favor inicie sesión primero  Ir al inicio 
Masculino sergio
Administrador
Avatar del Miembro

España
Ingresó: 27-sep-2006
Mensajes: 2470
Estado: Desconectados
Re: Acceso a intranet desde extranet Responder a este mensaje
Responder citando

La clave nunca se puede leer, precisamente por temas de seguridad no se puede. La cosa es que la clave se encripta en md5 y ya no se puede recuperar ... ni con la api ni con nada
----------------------------------------
---------------------------------------------------
Sergio Rapos Vargas.
Administrador de OpenCmsHispano.
sergio.raposo@opencmshispano.es
[09-jun-2011 22:02:16] Mostrar la Versión Imprimible        Send Private Message [Enlace] Reportar mensaje ofensivo: por favor inicie sesión primero  Ir al inicio 
[Versión imprimible] [Publicar nuevo tema]