Sign Up

Sign Up to our social questions and Answers Engine to ask questions, answer people’s questions, and connect with other people.

Have an account? Sign In

Have an account? Sign In Now

Sign In

Login to our social questions & Answers Engine to ask questions answer people’s questions & connect with other people.

Sign Up Here

Forgot Password?

Don't have account, Sign Up Here

Forgot Password

Lost your password? Please enter your email address. You will receive a link and will create a new password via email.

Have an account? Sign In Now

You must login to ask a question.

Forgot Password?

Need An Account, Sign Up Here

Please briefly explain why you feel this question should be reported.

Please briefly explain why you feel this answer should be reported.

Please briefly explain why you feel this user should be reported.

Sign InSign Up

The Archive Base

The Archive Base Logo The Archive Base Logo

The Archive Base Navigation

  • SEARCH
  • Home
  • About Us
  • Blog
  • Contact Us
Search
Ask A Question

Mobile menu

Close
Ask a Question
  • Home
  • Add group
  • Groups page
  • Feed
  • User Profile
  • Communities
  • Questions
    • New Questions
    • Trending Questions
    • Must read Questions
    • Hot Questions
  • Polls
  • Tags
  • Badges
  • Buy Points
  • Users
  • Help
  • Buy Theme
  • SEARCH
Home/ Questions/Q 934617
In Process

The Archive Base Latest Questions

Editorial Team
  • 0
Editorial Team
Asked: May 15, 20262026-05-15T21:01:58+00:00 2026-05-15T21:01:58+00:00

My company hired a contractor to do a small project for us, for which

  • 0

My company hired a contractor to do a small project for us, for which he needs to select data from one single view in our main database (SQL Server 2005).

I wanted to create a locked-down SQL Server login for him, with permissions just to SELECT from “his” view…and nothing else.

So I created a new user on the server, and then I gave him permission just on this one view:

grant select on SpecialView to SpecialUser;

Basically, this works – he can’t see any of our tables and stored procedures, neither any views except “his” one.

But:

  • he can access all system views
  • he can access all system stored procedures.

Apparently his permissions are automatically locked down (sys.objects shows only the objects on which he has permissions, sp_who shows only his own processes and so on).

So, my question is:

Is it possible to create an user without access to system views and stored procedures?
(and if yes, what am I doing wrong?)

Or is there some reason why even locked-down users need to have access to system views and stored procedures?

EDIT:
kevchadders, the user has no access to master, model or msdb – only to the database with the view he is supposed to see.

But, to make one thing clear: The system views/procs which the user can see are in the database where “his” view is…not in the master database.
So I can’t disable all his access, since he needs to select from one view in the same database.
The point is, even if I explicitly set permission only for the single view that he is supposed to see, why does he still see the system views/procs as well?

  • 1 1 Answer
  • 0 Views
  • 0 Followers
  • 0
Share
  • Facebook
  • Report

Leave an answer
Cancel reply

You must login to add an answer.

Forgot Password?

Need An Account, Sign Up Here

1 Answer

  • Voted
  • Oldest
  • Recent
  • Random
  1. Editorial Team
    Editorial Team
    2026-05-15T21:01:59+00:00Added an answer on May 15, 2026 at 9:01 pm

    Use DENY VIEW DEFINITION. You cannot remove the user’s ability to see the existence of the views and stored procedures, but you can remove the ability to view (most) of the contents in them.

    deny view definition to smallperms_role 
    go
    sp_addrolemember 'smallperms_role ', 'smallperms_user'
    go
    sp_addrolemember 'db_datareader', 'smallperms_user'
    go
    

    For example:
    EXEC sys.sp_databases returns nothing, but executes.
    SELECT * FROM INFORMATION_SCHEMA.TABLES returns nothing, but does not return an error.

    • 0
    • Reply
    • Share
      Share
      • Share on Facebook
      • Share on Twitter
      • Share on LinkedIn
      • Share on WhatsApp
      • Report

Sidebar

Related Questions

I'm working for small company, which operates in the automation industry. The boss hired
So we've hired a company to migrate our three websites from custom built CMS
My company receives data from an external company via Excel. We export this into
Recently a new co-op was hired at our company and has been tasked to
My company is engaging with a multivariate testing vendor (I can't disclose which one
I'm working as a tester on a project for a small finance company. While
Our company uses an IBM iSeries for a majority of our data processing. All
our company has made a website for our client. The client hired a webs
I created a view that gets data from several tables, whenI go to compile
Company I work for will be receiving scanned images of forms from which we

Explore

  • Home
  • Add group
  • Groups page
  • Communities
  • Questions
    • New Questions
    • Trending Questions
    • Must read Questions
    • Hot Questions
  • Polls
  • Tags
  • Badges
  • Users
  • Help
  • SEARCH

Footer

© 2021 The Archive Base. All Rights Reserved
With Love by The Archive Base

Insert/edit link

Enter the destination URL

Or link to existing content

    No search term specified. Showing recent items. Search or use up and down arrow keys to select an item.