473,395 Members | 1,571 Online
Bytes | Software Development & Data Engineering Community
Post Job

Home Posts Topics Members FAQ

Join Bytes to post your question to a community of 473,395 software developers and data experts.

User not in Admins - how to circumvent their not being able to create a new user?

MLH
I was running the following code while logged
in as a user belonging only to the Users group.

Set usrNew = .CreateUser(Me!UserID) 'The user ID is in a
control on the form
usrNew.PID = "AAA123456789"
usrNew.Password = "password"
.Users.Append usrNew
Of course, the last line resulted in an error. Not wanting
to put a user in the Admins group just for the sole purpose
of adding a new user, I'm seeking a way around this.

Access 2.0 used to have a query permissions setting
allowing some users to run it with owner privileges. Is
there something akin to this line of thinking that will
let user "Bob" (in the Users group only) run code to
create a new user account?
Nov 13 '05 #1
3 2819
MLH
It must be necessary for many of you to enable a user
login ID that allows the creation of new users without
giving that special user full Admin rights to every other
object in the database. How does one secure his app
but allow one administrative function - the creation of
new users - maintaining the security of the other objects
the the full extent desired? Is that achieved primarily
via the mde file?
Nov 13 '05 #2
On Mon, 06 Jun 2005 19:47:49 -0400, MLH <CR**@NorthState.net> wrote:

I haven't tried this, but I would think you could CreateWorkspace
using the superuser, and then CreateUser in that workspace.

-Tom.

I was running the following code while logged
in as a user belonging only to the Users group.

Set usrNew = .CreateUser(Me!UserID) 'The user ID is in a
control on the form
usrNew.PID = "AAA123456789"
usrNew.Password = "password"
.Users.Append usrNew
Of course, the last line resulted in an error. Not wanting
to put a user in the Admins group just for the sole purpose
of adding a new user, I'm seeking a way around this.

Access 2.0 used to have a query permissions setting
allowing some users to run it with owner privileges. Is
there something akin to this line of thinking that will
let user "Bob" (in the Users group only) run code to
create a new user account?


Nov 13 '05 #3
MLH
On Mon, 06 Jun 2005 19:47:49 -0400, MLH <CR**@NorthState.net> wrote:

I haven't tried this, but I would think you could CreateWorkspace
using the superuser, and then CreateUser in that workspace.

-Tom.

xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
Thanks Tom. How have you been? I will give your suggestion a try
after first trying the following that I found at
http://www.microsoft.com/AccessDev/A...missions_Query
Here's a snippet from that page...
Configuring a Remote Workgroup so that Onsite Administrators Can
Manage User Accounts Without Gaining Permissions to Your Objects
You have built a multiuser application that will be administered by
users at a remote site. You want to lock up your code and other
objects to protect your intellectual property and to prevent users
from inadvertently breaking your application. Different users at the
sites have permissions to different forms in the database because they
are authorized to perform different duties. You don't want to manage
individual user accounts yourself because you are not on site and they
change frequently. How can you grant remote administrators the ability
to manage user accounts without at the same time giving them access to
your code?
Using the Workgroup Administrator, create a secure workgroup named
MySys.mdw. This will be the "master" workgroup for your database.

While logged on with this workgroup, follow the steps to secure a
database above.

Create your own custom groups that correspond to the different levels
of permissions that you will want your remote users to have. Write
down the exact names of these groups (case sensitive) and the personal
identifier (PIDs) you use to create them. You will need these strings
later.

Assign the appropriate permissions to these groups. Make sure you
don't grant Administer permissions to anything -- just grant the Read
Data, Write Data, and Open/Run permissions that are necessary for
users to run your application and perform their appropriate functions.

Use the Workgroup Administrator to create a new system database that
you will distribute with your application. Call it CusSys.mdw. Make
sure you use different strings for the name, company name, and
workgroup ID than the ones you used for MySys.mdw.

Log on under CusSys.mdw and re-create the exact same group names that
now exist in MySys.mdw, using the same case-sensitive names and the
same PIDs.

Create a user account for your remote administrator to use, and add
him to the Admins group of CusSys.mdw. For this example, call him
Fred.

Put a password on the Admin user, and make sure that you have removed
the Admin user from the Admins group. Putting a password on the Admin
user will force the Log on dialog box to appear, and it will make Fred
the effective administrator of the CusSys.mdw workgroup.

Distribute CusSys.mdw with your application. Make sure that the user
profile file used to start Microsoft Access for your application
points to CusSys.mdw. The Setup Wizard available in the Microsoft
Access Developer's Toolkit can help automate this process.
Now Fred will be able to create new user accounts, reset passwords,
and add users to the groups that you have already created. As users
are added to these groups, they will automatically gain the
permissions that you assigned to these group accounts in step 4. This
is because the SIDs of the group accounts in MySys.mdw are identical
to the SIDs of the custom group accounts in CusSys.mdw. However, the
SIDs of the Admins group in the two workgroups are different.
(Remember that these SIDs are generated from the strings fed into the
Workgroup Administrator, and you used different strings in step 5.)
Because the database was originally secured under MySys.mdw, not
CusSys.mdw, the Admins group in MySys.mdw has ultimate permission
setting privileges over all the objects in the database. The Admins
group of CusSys.mdw does not. So while Fred can add and delete users
from the groups you created, he does not have any special privileges
to your objects, and he therefore cannot see or modify the design of
any of the objects to which you haven't granted him permissions.
Nov 13 '05 #4

This thread has been closed and replies have been disabled. Please start a new discussion.

Similar topics

2
by: Richard Sherratt | last post by:
I create a new user and make them a member of Admins. I then log on as that user and try to modify an existing query. I'm told that I don't have the necessary permissions. The Admins group has full...
1
by: Access | last post by:
Here is my function to change a users permission level in the database. This relates to an Access database secured using Access security. This function is called if the end user changes a staff...
4
by: James | last post by:
I have a VB windows forms application that accesses a Microsoft Access database that has been secured using user-level security. The application is being deployed using No-Touch deployment. The...
0
by: James | last post by:
I have a VB windows forms application that accesses a Microsoft Access database that has been secured using user-level security. The application is being deployed using No-Touch deployment. The...
5
by: Rocky | last post by:
Hi, I have a webform, with 2 textboxs and a submit button. In the text box1, i enter a username and in textbox2 I enter the computer name. Both the username and computer name is in active...
31
by: zdenko | last post by:
I have a multi user database and users were created by user level security wizzard - as I mentioned in message before. Everything works fine for those users, but now I have another problem. I have...
2
by: Jim in Arizona | last post by:
I'm trying to do a check to see if a specific active directory user account exists in active directory AND a specific group. I can't seem to get the filter down right. I can do this to find a...
20
by: =?Utf-8?B?QnJpYW4gTmljaG9sc29u?= | last post by:
Hello, I'm trying to create an admin page that can run miscellaneous scripts for our IT department. Currently, I'm trying to create a script that can map a network drive for a user (e.g. a form...
0
by: Charles Arthur | last post by:
How do i turn on java script on a villaon, callus and itel keypad mobile phone
0
by: ryjfgjl | last post by:
In our work, we often receive Excel tables with data in the same format. If we want to analyze these data, it can be difficult to analyze them because the data is spread across multiple Excel files...
0
BarryA
by: BarryA | last post by:
What are the essential steps and strategies outlined in the Data Structures and Algorithms (DSA) roadmap for aspiring data scientists? How can individuals effectively utilize this roadmap to progress...
0
by: Hystou | last post by:
There are some requirements for setting up RAID: 1. The motherboard and BIOS support RAID configuration. 2. The motherboard has 2 or more available SATA protocol SSD/HDD slots (including MSATA, M.2...
0
marktang
by: marktang | last post by:
ONU (Optical Network Unit) is one of the key components for providing high-speed Internet services. Its primary function is to act as an endpoint device located at the user's premises. However,...
0
by: Hystou | last post by:
Most computers default to English, but sometimes we require a different language, especially when relocating. Forgot to request a specific language before your computer shipped? No problem! You can...
0
Oralloy
by: Oralloy | last post by:
Hello folks, I am unable to find appropriate documentation on the type promotion of bit-fields when using the generalised comparison operator "<=>". The problem is that using the GNU compilers,...
0
by: Hystou | last post by:
Overview: Windows 11 and 10 have less user interface control over operating system update behaviour than previous versions of Windows. In Windows 11 and 10, there is no way to turn off the Windows...
0
agi2029
by: agi2029 | last post by:
Let's talk about the concept of autonomous AI software engineers and no-code agents. These AIs are designed to manage the entire lifecycle of a software development project—planning, coding, testing,...

By using Bytes.com and it's services, you agree to our Privacy Policy and Terms of Use.

To disable or enable advertisements and analytics tracking please visit the manage ads & tracking page.