Mega Code Archive

 
Categories / VisualBasic Script / Access
 

Setting User Permissions for an Object

Sub Set_UserObjectPermissions()      Dim conn As ADODB.Connection      Dim cat As ADOX.Catalog      Dim strDB As String      Dim strSysDb As String      On Error GoTo ErrorHandle      strDB = CurrentProject.Path & "\mydb.mdb"      strSysDb = CurrentProject.Path & "\mydb.mdw"      Set conn = New ADODB.Connection          With conn              .Provider = "Microsoft.Jet.OLEDB.4.0"              .Properties("Jet OLEDB:System Database") = strSysDb              .Properties("User ID") = "Developer"              .Properties("Password") = "mypass"              .Open strDB          End With      Set cat = New ADOX.Catalog      cat.ActiveConnection = conn      cat.Users.Append "PowerUser", "star"      cat.Users("PowerUser").SetPermissions "Customers", _          adPermObjTable, _          adAccessSet, _          adRightRead Or _          adRightInsert Or _          adRightUpdate Or _          adRightDelete  ExitHere:      Set cat = Nothing      conn.Close      Set conn = Nothing      Exit Sub  ErrorHandle:      If Err.Number = -2147467259 Then          Debug.Print "PowerUser user already exists."          Resume Next      Else          Debug.Print Err.Description          Resume ExitHere      End If  End Sub