vba - usuarios - ¿Hay alguna forma de autenticar al usuario en una base de datos de acceso ms?
macro con password para varios usuario (7)
Dos soluciones:
Coloque el archivo de acceso en un archivo compartido con los permisos establecidos de forma adecuada. Esto no funciona realmente bien si necesita proporcionar acceso de solo lectura, ya que Access no puede escribir el archivo temporal .ldb que crea al abrir un archivo de Access (.mdb).
Mueva los "datos" del archivo de acceso a una instancia de servidor Sql ... donde puede obtener permisos en el servidor SQL para restringir lo que las personas pueden hacer. Utilizamos este método para proporcionar acceso de solo lectura a todos, y luego a personas específicas con acceso de lectura y escritura. Para mover los datos a SQL, los importaría a una nueva base de datos SQL y luego vincularía las tablas al archivo de Access (renombrando para que los informes / consultas / etc. continúen funcionando).
Tengo una base de datos de acceso a MS. Pero está en la unidad compartida. Y se requiere que solo algunas personas seleccionadas puedan usarlo. ¿Hay alguna forma de autenticar al usuario?
Debido a que Access está impulsado por archivos, ¿por qué no crear una carpeta en la unidad compartida y asignar permisos de carpeta a las personas adecuadas?
La seguridad de nivel de usuario no está disponible en Access 2007.
Comience con las ofertas de seguridad de Access 2007 :
- Confiar (habilitar) el contenido deshabilitado en una base de datos
- Use una contraseña para cifrar o descifrar una base de datos
- Empaquete, firme e implemente una base de datos de Office Access 2007
Sí, abra la base de datos y luego ejecute Tools-> Security-> User-Level Security Wizard. Lo guiará a través del proceso de creación de un nuevo archivo de grupo de trabajo, creando usuarios y grupos, y asegurando los objetos de Access.
Si se encuentra en un dominio, ¿no podría usar la seguridad de nivel de archivo para evitar que los usuarios accedan a él?
Haz ambos. Establezca permisos de acceso en el directorio Y cree un nuevo archivo de seguridad para él.
El directorio es su seguridad de primera línea y limita el acceso a nivel macro
El archivo de seguridad se puede usar para segmentar el acceso a las diversas tablas, formularios, informes, etc. Incluso puede proporcionarle a algunas personas acceso de solo lectura y otras más permisos completos.
Hago todo esto en VBA. En el subformulario Form_Open sub, lea el nombre de usuario en una variable de cadena con una API de Windows, luego verifique si el nombre de usuario está en su lista de usuarios válidos. Si está bien, emita un mensaje de bienvenida, si no está bien salga de Access.
''comprobar usuario Dim usuario como String Dim AuthorizedUser como booleano user = UCase (CurrentUser ())
AuthorizedUser = True
Select Case user
Case "USER_A":
Case "USER_B":
Case "USER_C":
Case Else: AuthorizedUser = False
End Select
If AuthorizedUser = True Then
MsgBox "Welcome authorized user " & user
Else
MsgBox user & "is not Authorized. For access to this database contact User_A"
DoCmd.Quit
End If