|
security
newsgroups
|
|||||||||||||||||||||||
|
|||||||||||||||||||||||
Record level accessanyone know how I can give certain users access only to certain records
within a database...too many forms and reports to redo for each user!... On Wed, 12 Jul 2006 08:21:02 -0700, Vanessa Jennings <VanessaJenni***@discussions.microsoft.com> wrote:
>anyone know how I can give certain users access only to certain records Enable User Level Security, add appropriate users and groups, allow access to the data only through your forms (i.e.>within a database...too many forms and reports to redo for each user!... don't allow users direct access to the tables or queries), then filter the data based on user logins and group membership. For example, if you have a DataEntry group who shouldn't see data relevant to Managers (which is indicated, perhaps, by setting a table column named blnIsManager=True), then you'd something like this if the Open or Load event of a form: Sub Form_Open() If faq_IsUserInGroup("DataEntry", CurrentUser) Then Me.RecordSource = "SELECT Field1, Field2 etc FROM SomeTable WHERE blnIsManager=False" Else Me.RecordSource = "SELECT Field1, Field2 etc FROM SomeTable" End If End Sub '/Note: the below was copied from the MS Access Security FAQ here: http://support.microsoft.com/?id=148555http://support.microsoft.com/default.aspx?scid=%2Fsupport%2Faccess%2Fcontent%2Fsecfaq.asp Function faq_IsUserInGroup (strGroup As String, strUser as String) As Integer ' Returns True if user is in group, False otherwise ' This only works if you're a member of the Admins group. Dim ws As WorkSpace Dim grp As Group Dim strUserName as string Set ws = DBEngine.Workspaces(0) Set grp = ws.Groups(strGroup) On Error Resume Next strUserName = ws.groups(strGroup).users(strUser).Name faq_IsUserInGroup = (Err = 0) End Function Scott McDaniel scott@takemeout_infotrakker.com www.infotrakker.com ok thanks for this, will give it a go!
Show quoteHide quote "Scott McDaniel" wrote: > On Wed, 12 Jul 2006 08:21:02 -0700, Vanessa Jennings <VanessaJenni***@discussions.microsoft.com> wrote: > > >anyone know how I can give certain users access only to certain records > >within a database...too many forms and reports to redo for each user!... > > Enable User Level Security, add appropriate users and groups, allow access to the data only through your forms (i.e. > don't allow users direct access to the tables or queries), then filter the data based on user logins and group > membership. For example, if you have a DataEntry group who shouldn't see data relevant to Managers (which is indicated, > perhaps, by setting a table column named blnIsManager=True), then you'd something like this if the Open or Load event of > a form: > > Sub Form_Open() > > If faq_IsUserInGroup("DataEntry", CurrentUser) Then > Me.RecordSource = "SELECT Field1, Field2 etc FROM SomeTable WHERE blnIsManager=False" > Else > Me.RecordSource = "SELECT Field1, Field2 etc FROM SomeTable" > End If > > End Sub > > '/Note: the below was copied from the MS Access Security FAQ here: > http://support.microsoft.com/?id=148555http://support.microsoft.com/default.aspx?scid=%2Fsupport%2Faccess%2Fcontent%2Fsecfaq.asp > > Function faq_IsUserInGroup (strGroup As String, strUser as String) As Integer > ' Returns True if user is in group, False otherwise > ' This only works if you're a member of the Admins group. > Dim ws As WorkSpace > Dim grp As Group > Dim strUserName as string > > Set ws = DBEngine.Workspaces(0) > Set grp = ws.Groups(strGroup) > On Error Resume Next > strUserName = ws.groups(strGroup).users(strUser).Name > faq_IsUserInGroup = (Err = 0) > End Function > > > Scott McDaniel > scott@takemeout_infotrakker.com > www.infotrakker.com > Scott McDaniel wrote:
> You need to use> '/Note: the below was copied from the MS Access Security FAQ here: > http://support.microsoft.com/?id=148555http://support.microsoft.com/default.aspx?scid=%2Fsupport%2Faccess%2Fcontent%2Fsecfaq.asp > http://support.microsoft.com/?id=207793 as the above link has been removed. -- Joan Wild Microsoft Access MVP
Adv/disadv of using Access built-in security tools vs build in db
Network Security multiple users, Getting rid of the warning messag corrupt files Installed updates, now macros don't work! Creating security for MS Access application log in problems Startup problem with runtime and no-runtime apps Unable to merge after sharing database Missing User data on some macros stops conversion of Access97 to Access2003 logon |
|||||||||||||||||||||||