public async Task <string> cambiarPass(string usuario, string passActual, string passNueva) { string passActualEncriptada = ""; //Peticion para que nos devuelva una respuesta con la sal que necesitamos Respuesta respConSal = await this.enviarPeticion("requestSalt", usuario, null, null, null); //Si al hacer la peticion el servidor esta caido devuelve un null if (respConSal != null) { if (respConSal.respuesta.Equals("usuarioEncontrado")) { // Encripta clave con la "sal" recibida passActualEncriptada = Clave.encriptarClaveConexion(passActual, respConSal.salt); // Se encripta la nueva pass para guardarla en la BD string passNuevaEncriptada = Clave.encriptarClaveRegistro(passNueva); // Se envia la petición con las dos pass encriptadas, por eso no hace falta token aquí Respuesta respuesta = await enviarPeticion("cambiarPass", usuario, passActualEncriptada, passNuevaEncriptada, null); return(respuesta.respuesta); } else { return("passNoCambiada"); } } else { return("servidorOffline"); } }
/************************** * Peticiones del cliente * **************************/ // Este método se encarga de loguear al usuario en la app public async Task <string> comenzarLogin(string usuario, string clave) { //Peticion para que nos devuelva una respuesta con la sal que necesitamos Respuesta respConSal = await this.enviarPeticion("requestSalt", usuario, null, null, null); //Si al hacer la peticion el servidor esta caido devuelve un null if (respConSal != null) { if (respConSal.respuesta.Equals("noExisteUsuario")) { return("El nombre de usuario no se encuentra en nuestra base de datos"); } else // if(respActual.respuesta.Equals("usuarioEncontrado")) { // Encripta clave con la "sal" recibida string PassEncriptado = Clave.encriptarClaveConexion(clave, respConSal.salt); // Petición enviando clave encriptada si es correcta nos devolvera el "Token" Respuesta respConToken = await this.enviarPeticion("login", usuario, PassEncriptado, null, null); // Asignamos nuestro token if (respConToken.respuesta.Equals("passValida")) { token = respConToken.token; return("Acceso concedido"); } else if (respConToken.respuesta.Equals("usuarioYaConectado")) { return("usuarioYaConectado"); } else { return("La contraseña no parece válida"); } } } else { //Mensaje por si el servidor esta caido ---------------------->esto hay que cambiarlo return("El servidor no responde, revisa que tengas una conexión a internet"); } }