Ms-access – Allow access to enter data through forms, but not full database access

database-designms accessSecuritysharepointusers

Using Access 2013 or Sharepoint 2013 is it possible to give someone access to data entry forms that work with a back-end database whether Access database or Sharepoint SQL.

But from everything I've looked at I can't find a way to separate someone from entering data and viewing all data?

For example in Access even if I split the database to a back end, it still has all the tables linked, and fully accessible from the "front end" this seems to be needed to allow Write access, it seems that you can have no access, read-only access and Read/Write access but no write-only access (this might be where I am wrong).

I don't want the people entering data to see the back end data (regardless if they are on Sharepoint or in access) and certainly do not want them to be able to modify the database directly (they should only be able to enter data via a form that can be validated before entered.)

Now I come from a Windows Forms and ASP.NET MVC background. I am used to hosting a SQL server and simply not writing code that pulls data from the database, and if I did I could set parameters on what data they could access. I could also set up server-side validation based on users and groups.

I can't seem to find any documentation on how to do this in either Access or on Sharepoint. I have read every article I could find on these topics via google and Support.Office.com for starters:

Introduction to integrating data between Access and a SharePoint site

Ways to share an Access desktop database

SharePoint Online environment

and a multitude of other articles both on TechNet and various third-party sites. While some do touch base on user access rights, they seem to allow only access to a specific site or database, not parts of, as my needs are allowed access to a way to enter data but not access to the data.

The client I am working with is addiment on using Access and Sharepoint. And before telling them I can't limit a user to data entry only, I wanted to check here first.

I did read a site that stated an issue with Access 2013 and Sharepoint is

Security setup is basic and somewhat limited. Item (or row) level security is not possible and edit access appears to allow users to edit information across all tables – not just one.

this was found here: http://blogs.perficient.com

but this seems to state that when you give someone table access they have all tables, and NOT that you can't restrict table access.

It does seem to state however that the only true options are HTML or developing something stand alone in Visual Studios.

Best Answer

Use stored procedures, which can validate input before issuing the SQL commands. The user can be given rights to the stored procedure without any other access.