Solved

permission to hit instance from ssms

Posted on 2010-09-16
15
331 Views
Last Modified: 2012-05-10
even though the user has read permissions to the database, what is the basic permissions required for that domain login user to be able to successfully make a connection to the instance through the SSMS engine? is that a OS setting or ports?

Thanks
0
Comment
Question by:anushahanna
  • 9
  • 6
15 Comments
 
LVL 57

Expert Comment

by:Raja Jegan R
Comment Utility
Login should be active and has CONNECT privileges to the server ie., Master database.

>> is that a OS setting or ports?

Nothing with respect to OS or port but the permission granted to the user or login.
0
 
LVL 6

Author Comment

by:anushahanna
Comment Utility
OK. Thanks.

Is it a grant statement that can give connect to a login? can you please suggest the syntax?

i tried something like grant connect to login [SRBSV\jimw], but it is not right..
0
 
LVL 57

Expert Comment

by:Raja Jegan R
Comment Utility
>> Is it a grant statement that can give connect to a login? can you please suggest the syntax?

Forgot to explain in more detail.
When you create a login, it would by having access to master database. In the same way, login can be assigned to some other database as default instead of master.

In that case, you need to have GRANT CONNECT granted to the particular user to connect to user databases.

>> grant connect to login [SRBSV\jimw]

Below should work:
USE ur_user_db_name
GO
GRANT CONNECT SQL TO [someuser]
0
 
LVL 6

Author Comment

by:anushahanna
Comment Utility
OK. Thank you.

When i did your code, it says

Permissions at the server scope can only be granted when the current database is master
0
 
LVL 6

Author Comment

by:anushahanna
Comment Utility
to recap, i created a login and then the user at the database for this login.

then i said

use tracker
grant connect sql to jimw, and then it gave the above message.
0
 
LVL 57

Expert Comment

by:Raja Jegan R
Comment Utility
Sorry for the confusion, Script to prevent user from those databases should be

USE ur_user_db_name
GO
REVOKE VIEW ANY DATABASE FROM [SRBSV\jimw]
0
 
LVL 6

Author Comment

by:anushahanna
Comment Utility
The above fails with
USE ur_user_db_name
but works ok with
USE master
0
How your wiki can always stay up-to-date

Quip doubles as a “living” wiki and a project management tool that evolves with your organization. As you finish projects in Quip, the work remains, easily accessible to all team members, new and old.
- Increase transparency
- Onboard new hires faster
- Access from mobile/offline

 
LVL 6

Author Comment

by:anushahanna
Comment Utility
GRANT VIEW ANY DATABASE TO [SRBSV\jimw]
works from master too..

but can we just specify the database and not do 'any'
0
 
LVL 57

Expert Comment

by:Raja Jegan R
Comment Utility
>> GRANT VIEW ANY DATABASE TO [SRBSV\jimw]
works from master too..

Yes, Grant will work from Master only.
In order to prevent users from viewing other databases, they have to be revoked from the user databases using REVOKE statement provided above in the user databases..
Hope this is what I understood your problem is else kindly clarify..
0
 
LVL 6

Author Comment

by:anushahanna
Comment Utility
like GRANT, REVOKE also says it can work only from MASTER database; how then can we specify which database we want to revoke VIEW ANY DATABASE?
0
 
LVL 57

Expert Comment

by:Raja Jegan R
Comment Utility
Tired a little bit on that day and hence confused you out:

1. In order to deny users viewing any user databases, then issue the below

use master
GO
REVOKE VIEW ANY DATABASE from public
GO

2. Once issued, users would be able to see only master and tempdb databases alone. If you want users (your login) to see any user databases then issue
use ur_db_name
GO
GRANT CONNECT SQL TO user_name
GO

Hope this clarifies
0
 
LVL 6

Author Comment

by:anushahanna
Comment Utility
Thanks. I could see the effect of
REVOKE VIEW ANY DATABASE from public
very clearly.

Could I have just did that to the login, instead of public?
0
 
LVL 6

Author Comment

by:anushahanna
Comment Utility
>>
use ur_db_name
GO
GRANT CONNECT SQL TO user_name
GO

it says
"Permissions at the server scope can only be granted when the current database is master"
0
 
LVL 57

Accepted Solution

by:
Raja Jegan R earned 500 total points
Comment Utility
>> Could I have just did that to the login, instead of public?

Yes, just use the login name instead of public which should do:
use master
GO
REVOKE VIEW ANY DATABASE from login_name
GO

>> "Permissions at the server scope can only be granted when the current database is master"

Sorry for the confusion again..
Once VIEW ANY DATABASE is revoked, only the databases where the particular login have users created will be visible in SSMS.
0
 
LVL 6

Author Comment

by:anushahanna
Comment Utility
Thanks very much.
0

Featured Post

Enabling OSINT in Activity Based Intelligence

Activity based intelligence (ABI) requires access to all available sources of data. Recorded Future allows analysts to observe structured data on the open, deep, and dark web.

Join & Write a Comment

Introduction In my previous article (http://www.experts-exchange.com/Microsoft/Development/MS-SQL-Server/SSIS/A_9150-Loading-XML-Using-SSIS.html) I showed you how the XML Source component can be used to load XML files into a SQL Server database, us…
The Delta outage: 650 cancelled flights, more than 1200 delayed flights, thousands of frustrated customers, tens of millions of dollars in damages – plus untold reputational damage to one of the world’s most trusted airlines. All due to a catastroph…
This video shows how to set up a shell script to accept a positional parameter when called, pass that to a SQL script, accept the output from the statement back and then manipulate it in the Shell.
Via a live example combined with referencing Books Online, show some of the information that can be extracted from the Catalog Views in SQL Server.

772 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question

Need Help in Real-Time?

Connect with top rated Experts

10 Experts available now in Live!

Get 1:1 Help Now