![]() |
![]() |
| Paypal | FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
|
|
#1
|
||||
|
||||
|
Gracias por todas las respuestas,
Vereis todavia no se como voy a hacer todo el programa. Nose si lo voy a hacer en linux o windows, nose que componente usar para firebird, que es con lo que me muevo, porque usaba zeos que es multibase, pero queria usar el que trae por defecto lazarus o bien los componentes ibx que segun, son mas rapidos pero estos ultimos no dejan cambiar el puerto por defecto. Asi que el cliente digamos que soy yo mismo, la verdad, mi mujer con otros socios van a poner una farmacia y lo que van a querer es lo normal para cualquier empresa de ventas de productos, que no lo tengo complicado, ya hice una parecida para una tienda, pero en este caso queria perfeccionarla mas y no andar con parches posteriores. La estructura la tengo mas o menos hecha, pero me falta implementarla. Por eso preguntaba la mejor manera de gestionar usuarios, tanto al solicitar el login y contraseña (que ya me habeis dicho que las encripte, algunos con hash y otros decis que no). Mi idea inicial era esa, tener la base de datos en un servidor, con la base de datos en alias y luego el programa cliente que acceda a ella. Quiza encriptar el archivo ini que es donde va a estar los parametros de conexion para que no se vean. Lo de usar linux es simplemente por experimentar pero me vais a decir que si experimento y no funciona el sistema se podria caer sino lo domino. Asi que bueno, resumiendo las posiblidades que me habeis dado podria hacer lo siguiente: Encriptar los usuarios y las passwords de la base de datos, usar flags en una tabla para ver bien a que pueden acceder los usuarios o que se les permite. De ahi ir viendo las opciones que van saliendo. Si bien es cierto que algunas cosas de este post no debieran de ir aqui, si las comento de pasada. Si estuve buscando tambien la opcion de conectar una terminal bancaria al programa pero creo que es muy complicado y la otra opcion seria la de facturacion; como no estoy registrado en hacienda como generador, tengo que buscar un programa de facturacion registrado para que, con una pasarela o intermediario, le pase los datos para la factura. disculpadme de verdad por tanta pregunta y muchas gracias por todas las respuestas. |
|
#2
|
||||
|
||||
|
Creo que te estás complicando demasiado sin necesidad
![]() Los usuarios los controlas mediante una simple tabla de usuarios: codigo, nombre, login, password. Donde el password lo puedes guardar cifrado, no creo que necesites complicarte más. Luego, lo normal, al iniciar el programa pides login y password, compruebas que son correctas y listo. Además puedes tener una tabla de permisos para cada opción del programa. Por ejemplo, ahí ya puedes extenderte según lo que necesites para cada usuario le permites entrar (o no entrar) en ventas, informes, etc. Tienes montones de formas de hacerlo, algo simple puede ser una tabla de permisos: codigo, opcion, usuario, permitir-sn. Por lo que tendrías registros del tipo: 1, 10, 1, S 2, 20, 1, N 3, 30, 1, S 4, 10, 2, N ... También puedes tener una tabla de las distintas opciones, lo que antes he indicado como 10, 20, 30: tabla opciones: codigo, opcion. 10, Ventas 20, Compras 30, Informes 40, ... Pero todo esto depende de lo que necesites, lo mismo te sobra que te falta, debes evaluarlo tú mismo. Si quieres aprender y tienes tiempo, hazlo con Lazarus en Linux, también existen los componentes IBX para Lazarus en Linux. Si tienes prisa, hazlo con lo que mejor conoces.
__________________
La otra guía de estilo | Búsquedas avanzadas | Etiquetas para código | Colabora mediante Paypal |
|
#3
|
||||
|
||||
|
Cita:
![]() Cita:
Cita:
Como te dije: Tener usuarios y claves no es seguridad. Es TOTALMENTE posible tener una app segura, y no implementar este tema. Si los usuarios que usan un sistema son *confiables*, entonces para que hacer que le den vuelta a todo? Pon la autenticacion a nivle del OS (ie: Que usen las claves del windows/linux como usuarios, y que la tengan al entrar a salvapantallas) e integrar "autenticacion integrada" entre el OS y la BD. Pfff!! Un modulo menos que hacer. ---- Si no te quieres enruedar mucho, te recomiendo que uses una herramienta como https://trello.com/, y pongas una tarea por cada cosa que tengas que hacer en la app. Usas mockups y conversa con la gente como quieres hacer todo. Desahcer/rechacer el programa en esta etapa es trivial. Y lo importante: Preguntate: Esto que voy a hacer es CRUCIAL y provee VALOR al proyecto/usuarios? O es solo una excusa que me estoy poniendo pa irme por las ramas? O es solo algo que *creo* que tengo que hacer *ya* pero que puedo dejar para *luego*? Como este tema, puedes tomarte algo de tiempo para entenderlo bien. MIentras es muy dificil "meter la seguridad" en una app insegura, la realidad es que como te explique "una app segura es una app correcta". Si el codigo es correcto, desacoplado y simple, asegurarlo es trivial. Y con lo de windows o linux: Da igual, excepto si el usar uno u otro impacta negativamente a tus usuarios. Es lo mismo: Es usar sistema operativo X crucial y provee VALOR al proyecto/usuarios, o es solo una excusa que me estoy poniendo pa irme por las ramas?
__________________
El malabarista. |
|
#4
|
||||
|
||||
|
Sobre hash ó encriptar, creo mamcx ha dado sus razones bien fundadas... pues vale, se encripta. En la práctica se resume a llamar a una función que hace un hash o a otra que encripta, así que no hay que darle más vueltas.
No sé si Interbase puede o no cambiarse el puerto. Firebird viene de Interbase 6 y en el archivo Firebird.conf se le puede cambiar el puerto perfectamente. También puedes usar los componentes IBX en Delphi para trabajar con Firebird 2.5 (aunque claro está no puedes usar todas las funcionalidades de Firebird porque IBX no las implementa, te permite hacer un programa completo, con triggers, procedimientos almacenados, eventos, excepciones, etc). El databaseName sería: <servidor><puerto>:<ruta de la base de datos o alias> osea: 192.168.0.10/2525:MiFarmacia donde: - la IP es la del servidor donde el servidor Firebird está instalado - /2525 es el puerto por el que el servidor Firebird está escuchando - "MiFarmacia" es un alias a la base de datos, se define en Firebird.conf también. Así no se sabe en qué carpeta del servidor está la Base de datos. También se puede poner la ruta local de la Base de datos c:\miprograma\BBDD\mifarmacia.fdb Saludos
__________________
Si usted entendió mi comentario, contácteme y gustosamente, se lo volveré a explicar hasta que no lo entienda, Gracias. |
|
#5
|
||||
|
||||
|
Y de ser el caso, el puerto se puede cambiar a nivel de router.
__________________
El malabarista. |
![]() |
| Herramientas | Buscar en Tema |
| Desplegado | |
|
|
Temas Similares
|
||||
| Tema | Autor | Foro | Respuestas | Último mensaje |
| Control de Usuarios segun Tablas | diegonazaruka | Firebird e Interbase | 10 | 22-03-2010 17:46:52 |
| Control de usuarios | KeyMan | HTML, Javascript y otros | 4 | 20-04-2006 10:13:41 |
| Componente para Control de usuarios | El_Chava | Noticias | 3 | 07-09-2005 14:45:52 |
| Control de Usuarios | JamesBond_Mx | Conexión con bases de datos | 2 | 15-07-2005 03:55:51 |
| Control de usuarios concurrentes | Toni | Providers | 2 | 02-08-2004 15:43:17 |
|