INF:
        Changes in Security in Microsoft Access Version 2.0
        MS KB Article ID:
        Q112121  
        Creation Date: 07-NOV-1995 
        Revision Date: 19-SEP-1996  
        Original article is here: http://www.microsoft.com/kb/articles/q112/1/21.htm 
        The information in this
        article applies to:  
        
            - Microsoft Access
                version 2.0 
 
         
        SUMMARY  
        Advanced: Requires expert
        coding, interoperability, and multiuser skills.  
        This article describes the
        changes in the Microsoft Access security model from
        version 1.x to version 2.0.  
        MORE INFORMATION  
        The security model is
        essentially unchanged from version 1.x to version 2.0.
        The following internal items are changed in version 2.0
        security:  
        
            - The SID column of the
                MSysACEs table is no longer directly readable
                through the Microsoft Access user interface. This
                prevents users from directly reading the user
                SIDs and using them to breach security. To view
                and update permissions, you must use Access
                Basic. 
 
            - In Microsoft Access
                version 1.x, users had permission to open any
                database that was not protected by the file
                system. In Microsoft Access version 2.0, there
                are two new database-level permissions to control
                this: Open/Run and Open Exclusive. You can use
                the Open/Run permission to lock unauthorized
                users out of your database entirely. You can use
                the Open Exclusive permission to prevent users
                from inadvertently locking each other out of
                multiuser applications by opening the database
                exclusively. 
As in Microsoft Access 1.x, once a
                user has opened a database there is no way, using
                the user interface, to prevent that user from
                creating new objects in the database. However,
                you can use Access Basic code to prevent users
                from creating new tables or queries in a database
                by revoking permissions on the Tables Container
                object.  
             
            - The Microsoft Access
                2.0 Setup program uses only the user and company
                names as seeds for the Admins group's SID. The
                version 1.x Setup program uses the user and
                company names, as well as the serial number from
                the installation disks. 
 
            - Query permissions can
                cross database boundaries. This means you can use
                owner's permissions security with attached
                tables, as well as with local tables. The Run
                With Owner's Permissions query property in
                version 1.x has been replaced in version 2.0 by a
                query property called RunPermissions that can be
                set to User's or Owner's. 
 
            - There was a known and
                documented hole in Microsoft Access version 1.x
                security whereby an unauthorized user could read
                a SID from a database and paste it over a SID in
                the MSysAccounts table in the SystemDB, thereby
                masquerading as a different user. The following
                changes were made to version 2.0 security to
                correct this problem: 
                        - System tables in version 2.0 are not updatable.
 
                 
                
                        - The SID columns in the MSysACEs and MSysObjects tables are
      unreadable in version 2.0.
                 
                
                        - The file encryption algorithm is enhanced. SIDs are readable by
      members of the Admins group only, and are not writable at all in
      version 2.0.
                 
                Microsoft Access
                version 2.0 can run version 1.x databases, but
                they are still vulnerable to the version 1.x
                security hole. This is so that sites can run a
                mixed environment, with some users running
                Microsoft Access version 2.0 and others running
                Microsoft Access version 1.x. Microsoft Access
                version 2.0 cannot make changes to security in a
                version 1.x database unless the database is
                converted to version 2.0 format.  
                Administrators of
                version 1.x sites that are upgrading to version
                2.0 should be aware that in order to prevent
                unauthorized users from exploiting the version
                1.x security hole to break into a secure version
                2.0 system, it is necessary to re-create user and
                group accounts with the new longer PIDs, and to
                reassign permissions. If this is not done, it is
                possible for an unauthorized user to read a
                user's SID from an old version 1.x copy of the
                database and paste it over their own account's
                SID using Microsoft Access version 1.x and a
                version 1.x SystemDB. If the users' SIDs are
                re-created using Microsoft Access version 2.0,
                there is no way for an unauthorized user to ever
                read a user's SID.  
                If you are not
                concerned about the possibility of an
                unauthorized user exploiting the 1.x security
                hole to break into a secure version 2.0 system
                (perhaps because you are using security only to
                protect well- meaning users from inadvertently
                destroying data or applications, rather than
                protecting yourself from unauthorized intrusion),
                then you do not need to re-create your user and
                group accounts. Version 2.0 security will work
                properly with the old SIDs. Although the security
                in Microsoft Access version 2.0 is enhanced to
                protect your databases from unwanted intrusion,
                Microsoft recommends that you convert your
                databases to use version 2.0 security.  
                When you are using
                the Microsoft Access 2.0 Upgrade disks to upgrade
                an existing version 1.0 or 1.1 installation to
                version 2.0, a new SystemDB is created. The old
                SystemDB is not changed in any way. If you want
                to use your old SystemDB and your old SIDs, use
                the Workgroup Administrator to join your old
                workgroup.  
             
            - In Microsoft Access
                version 1.x, the Guests group is given read
                permissions on all objects by default. In
                Microsoft Access 2.0, the Guests group has no
                default permissions on newly created objects. 
 
         
        
            THE INFORMATION
            PROVIDED IN THE MICROSOFT KNOWLEDGE BASE IS PROVIDED
            "AS IS" WITHOUT WARRANTY OF ANY KIND.
            MICROSOFT DISCLAIMS ALL WARRANTIES, EITHER EXPRESS OR
            IMPLIED, INCLUDING THE WARRANTIES OF MERCHANTABILITY
            AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT
            SHALL MICROSOFT CORPORATION OR ITS SUPPLIERS BE
            LIABLE FOR ANY DAMAGES WHATSOEVER INCLUDING DIRECT,
            INDIRECT, INCIDENTAL, CONSEQUENTIAL, LOSS OF BUSINESS
            PROFITS OR SPECIAL DAMAGES, EVEN IF MICROSOFT
            CORPORATION OR ITS SUPPLIERS HAVE BEEN ADVISED OF THE
            POSSIBILITY OF SUCH DAMAGES. SOME STATES DO NOT ALLOW
            THE EXCLUSION OR LIMITATION OF LIABILITY FOR
            CONSEQUENTIAL OR INCIDENTAL DAMAGES SO THE FOREGOING
            LIMITATION MAY NOT APPLY.  
         
        ©1997 Microsoft Corporation. All rights
        reserved. Legal
        Notices. 
         
        Additional reference words: 2.00 security 
        KBCategory: kbusage 
        KBSubcategory: ScrtOthr  
         |