Results 1 to 14 of 14
  1. #1
    Join Date
    Jan 2003
    Posts
    2

    Angry Unanswered: Can tables be protected from importing

    I have a program which is being used out of the office. We want to secure several tables. I have hidden the specified tables and removed all access to the back end of the program, and included coding to set the Show Hidden Objects option to FALSE every time the program is opened.

    However, I realize that if the User opens another .mdb and changes his Show Hidden Objects to TRUE, that allows him to see tables in ALL Access Programs. Therefore, if he uses the import wizard, he can "see" and import the tables I want to protect. What are my options? Does such protection exist?

  2. #2
    Join Date
    Dec 2002
    Location
    Préverenges, Switzerland
    Posts
    3,740
    you can encrypt the database (hits the entire .mdX ) to stop back-door snooping by linking/importing via a new db...... you take a performance hit on _everything_ in the encrypted database. i hear of 15% degradation but i never measured it.

    izy

  3. #3
    Join Date
    Jan 2003
    Posts
    2

    Unhappy Can I protect tables from being imported?

    Unfortunately, encrypting made no difference. Will compiling make a difference? I can't get the .MDE function to work, and I since this is a work in progress, I haven't compiled it.

  4. #4
    Join Date
    Oct 2002
    Location
    Leicester - UK
    Posts
    820
    this is something i'm interested in, i've got a database linked with excel and i want to block access to the tables while still letting excel in to look at it's queries

    to date i have had 0 success
    Definition of a Beginner, Someone who doesn't know the rules.

    Definition of an Expert, Someone who knows when to ignore the rules.

  5. #5
    Join Date
    Apr 2002
    Posts
    139
    Think you will need a secure workgroup to really protect your data.
    Remember: Setting up Access security with mdw workgroup files requires some study and practice.

  6. #6
    Join Date
    Nov 2003
    Location
    Slovenia, EU
    Posts
    16

    Question Securing the tables

    So,

    I am interested too, is there an easy possibility to protect your tables (importing to another .mdb) inside acess?

  7. #7
    Join Date
    Oct 2003
    Location
    Ger
    Posts
    1,969
    Provided Answers: 1

    Lightbulb

    You can prevent the user to press the Function keys espcially the F11 which allows him to see the tables also prevent him to manipulate full menues:

    Just look up AllowBypassKey
    AllowBuiltinToolbars
    StartupShowStatusBar
    AllowSpecialKeys
    StartupShowDBWindow

    Something else: If you hide your tabels (if you use Access97) and then compressed your dataBase, then you will have a big surprise, which is, the hidden files will be deleted.

  8. #8
    Join Date
    Nov 2003
    Location
    Slovenia, EU
    Posts
    16
    Thank you for reply hammbakka,

    I know how to deal with Function keys, but can you be a little bit more detailed in description about hiding and compressing the database?!

    I use MS Acess 2002 and WinXP. Is there a problem?

  9. #9
    Join Date
    Oct 2003
    Location
    Ger
    Posts
    1,969
    Provided Answers: 1

    Lightbulb

    Originally posted by primus
    Thank you for reply hammbakka,

    I know how to deal with Function keys, but can you be a little bit more detailed in description about hiding and compressing the database?!

    I use MS Acess 2002 and WinXP. Is there a problem?
    Sorry I don't use Access 2000, I use Access97 also I use a German Access

    About compressing the database, you can make it manually form the menu, I think under Tools/compress and repair

    By hiding a database I ment, hide the DB window, you can do that by changing the Property StartupShowDBWindow to TRUE and at sthe same time you must set the AllowSpecialKeys to FALSE

    Here is an Example but in German, I think you'll have it in English


    Sub EinstellenStarteigenschaften()
    ÄndernEigenschaft "StartupForm", dbText, "Kunden"
    ÄndernEigenschaft "StartupShowDBWindow", dbBoolean, False
    ÄndernEigenschaft "StartupShowStatusBar", dbBoolean, False
    ÄndernEigenschaft "AllowBuiltinToolbars", dbBoolean, False
    ÄndernEigenschaft "AllowFullMenus", dbBoolean, True
    ÄndernEigenschaft "AllowBreakIntoCode", dbBoolean, False
    ÄndernEigenschaft "AllowSpecialKeys", dbBoolean, True

    ÄndernEigenschaft "AllowBypassKey", dbBoolean, True
    End Sub

    Function ÄndernEigenschaft(strEigenschaftenname As String, varEigenschaftentyp As Variant, varEigenschaftenwert As Variant) As Integer
    Dim dbs As Database, prp As Property
    Const conPropNotFoundError = 3270

    Set dbs = CurrentDb
    On Error GoTo Ändern_Fehler
    dbs.Properties(strEigenschaftenname) = varEigenschaftenwert
    ÄndernEigenschaft = True

    Ändern_Ende:
    Exit Function

    Ändern_Fehler:

    If Err = conPropNotFoundError Then ' Eigenschaft nicht gefunden.
    Set prp = dbs.CreateProperty(strEigenschaftenname, _
    varEigenschaftentyp, varEigenschaftenwert)
    dbs.Properties.Append prp
    Resume Next
    Else
    ' Unbekannter Fehler.
    ÄndernEigenschaft = False
    Resume Ändern_Ende
    End If
    End Function

  10. #10
    Join Date
    Nov 2003
    Location
    Slovenia, EU
    Posts
    16
    Originally posted by hammbakka
    Sorry I don't use Access 2000, I use Access97 also I use a German Access

    About compressing the database, you can make it manually form the menu, I think under Tools/compress and repair

    By hiding a database I ment, hide the DB window, you can do that by changing the Property StartupShowDBWindow to TRUE and at sthe same time you must set the AllowSpecialKeys to FALSE

    Here is an Example but in German, I think you'll have it in English


    Sub EinstellenStarteigenschaften()
    ÄndernEigenschaft "StartupForm", dbText, "Kunden"
    ÄndernEigenschaft "StartupShowDBWindow", dbBoolean, False
    ÄndernEigenschaft "StartupShowStatusBar", dbBoolean, False
    ÄndernEigenschaft "AllowBuiltinToolbars", dbBoolean, False
    ÄndernEigenschaft "AllowFullMenus", dbBoolean, True
    ÄndernEigenschaft "AllowBreakIntoCode", dbBoolean, False
    ÄndernEigenschaft "AllowSpecialKeys", dbBoolean, True

    ÄndernEigenschaft "AllowBypassKey", dbBoolean, True
    End Sub

    Function ÄndernEigenschaft(strEigenschaftenname As String, varEigenschaftentyp As Variant, varEigenschaftenwert As Variant) As Integer
    Dim dbs As Database, prp As Property
    Const conPropNotFoundError = 3270

    Set dbs = CurrentDb
    On Error GoTo Ändern_Fehler
    dbs.Properties(strEigenschaftenname) = varEigenschaftenwert
    ÄndernEigenschaft = True

    Ändern_Ende:
    Exit Function

    Ändern_Fehler:

    If Err = conPropNotFoundError Then ' Eigenschaft nicht gefunden.
    Set prp = dbs.CreateProperty(strEigenschaftenname, _
    varEigenschaftentyp, varEigenschaftenwert)
    dbs.Properties.Append prp
    Resume Next
    Else
    ' Unbekannter Fehler.
    ÄndernEigenschaft = False
    Resume Ändern_Ende
    End If
    End Function
    OK,
    I understand now what you meant, but this is not actually the main security problem. I am trying to find the right way to protect tables in .mdb or .mde file being imported into other open acess DB. For example: It is working really fine when I hide my VB script with saving DB as a .mde file. Doing that no one can import query or form, etc. But the tables are still free to deal with it. I tryed on my computer with .mde and .mdb database and there was no problem. So this is my basic problem - how to block that in acess. Is that possible?

  11. #11
    Join Date
    Oct 2003
    Location
    Roanoke, Va
    Posts
    445

    Question

    Originally posted by primus
    OK,
    I understand now what you meant, but this is not actually the main security problem. I am trying to find the right way to protect tables in .mdb or .mde file being imported into other open acess DB. For example: It is working really fine when I hide my VB script with saving DB as a .mde file. Doing that no one can import query or form, etc. But the tables are still free to deal with it. I tryed on my computer with .mde and .mdb database and there was no problem. So this is my basic problem - how to block that in acess. Is that possible?
    Browsing through the posts on this. Am I correct in assuming that you don't have user level security set up?

    Gregg

  12. #12
    Join Date
    Mar 2004
    Posts
    10
    I'm curious as to how encryption wasn't a viable solution???

  13. #13
    Join Date
    Dec 2002
    Location
    Préverenges, Switzerland
    Posts
    3,740
    another thought:

    rename your tables from:
    tblWhatever

    to:
    UsysTblWhatever

    ...and after you have locked everything up more or less as hammbakka suggests, try linking to the tables from another db.

    (not bulletproof i'm afraid - you can find the tables with some clever code, but it keeps the innocents honest)

    izy
    currently using SS 2008R2

  14. #14
    Join Date
    Sep 2003
    Location
    MI
    Posts
    3,713
    Password protect the DB? With a password set you cannot import without the password ... Problem: There are crackers out there for access passwords ...

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •