sql >> Database >  >> RDS >> Sqlserver

Verberg SQL-database van Management Studio

Na uren proberen uit te zoeken hoe je een gebruikersaccount kunt maken die alleen toegang heeft tot 1 DB en alleen die DB kan zien. Ik denk dat ik het door heb!!!!

  1. Maak een gebruikersaccount aan (zorg ervoor dat het niet is toegewezen aan een database, anders krijgt u de laatste foutmelding Msg 15110, Level 16, State 1 en noteer de voorgestelde oplossing )

    USE [master]
    GO
    CREATE LOGIN [us4] 
        WITH PASSWORD=N'123', 
        DEFAULT_DATABASE=[master], 
        CHECK_EXPIRATION=OFF, 
        CHECK_POLICY=OFF
    
  2. Klik met de rechtermuisknop op het bovenste gedeelte van de SQL (SQLSERVER-naam)>Properties>Permissions>Klik op het user account en selecteer Deny om databases te bekijken.

    use [master]
    GO
    DENY VIEW ANY DATABASE TO [us4]
    
  3. Klik met de rechtermuisknop op de nieuw aangemaakte DB, Eigenschappen, Bestanden en verander de Eigenaar in het nieuw aangemaakte account. (belangrijke opmerking :ALTER ROLE [db_owner] ADD MEMBER [us4] werkt niet )

    USE [dbname]
    GO
    EXEC dbo.sp_changedbowner @loginame = N'us4', @map = false
    

Op dit punt, zodra de gebruiker zich aanmeldt, ziet hij de Master,tempdb en ziet hij ook de nieuwe DB waarvan hij een DB-eigenaar is. Misschien wilt u naar Tools>Option gaan en schakelde de optie in om systeemobjecten te verbergen, zodat u de master, tempdb, enz. niet toont. Mogelijk hebt u SP1 ook nodig als deze optie niet werkt

Msg 15110, Level 16, State 1, Line 1
The proposed new database owner is already a user or aliased in the database.

voorgestelde oplossing voor Msg 15110: om bovenstaande fout op te lossen, verwijdert u eenvoudig de gebruiker van het databasebeveiligingsknooppunt en probeert u het opnieuw

Ik hoop dat dat helpt...

Nikhil



  1. Oracle:rekenkundige bewerking resulteerde in een overloop

  2. Hoe de meest voorkomende woorden in een MySQL-database te vinden en een tweede kolom te berekenen?

  3. Laravel Homestead SQLSTATE [HY000] [2002] Verbinding geweigerd na serververplaatsing

  4. Knooppuntdatabase-aanroepen ongedaan maken