U moet deze gebruiker in de msdb-database in SQL Server niet uitschakelen

Vertaalde artikelen Vertaalde artikelen
Artikel ID: 2539091 - Bekijk de producten waarop dit artikel van toepassing is.
Alles uitklappen | Alles samenvouwen

Samenvatting

SQL Server Books Online raadt de gastgebruiker in alle databases uit te schakelen als een aanbevolen procedure voor beveiliging van de databaseserver. Deze aanbeveling geldt niet tomaster-, msdb- en systeemdatabases tempb.Voor sommige functies van Microsoft SQL Server om te werken, de Gast gebruikermoet zijn ingeschakeld in de msdb-database. In dit artikel worden enkele problemen beschreven die optreden kunnen als de gastgebruiker in de msdb-database is uitgeschakeld. Het artikel bevat ook informatie over het oplossen van deze problemen.

Ga naar de volgende website van Microsoft Developer Network (MSDN) voor meer informatie over deze aanbeveling in SQL Server Books Online:

Informatie over het beperken van toegang tot gegevens in SQL Server

Meer informatie

Problemen wanneer de gastgebruiker in de msdb-database is uitgeschakeld

Wanneer de gastgebruiker is uitgeschakeld in de msdb-database, verschijnt fout 916Wanneer het knooppunt Databases in Management Studio wordt uitgebreid of wanneer een serverapplication zoals OCS probeert te verbinden met treden SQL Server.You een of meer van de volgende problemen in uw omgeving wanneer dit probleem optreedt.

NOTEDe tekst van de fout kan enigszins variëren, afhankelijk van het scenario. De onderliggende oorzaak is echter in wezen hetzelfde. Dat wordt veroorzaakt door onvoldoende bevoegdheden in de msdb-database. De eerste twee problemen optreden tijdens het weergeven van de status van beheer op basis van elke database Explorer-Object. Object Explorer via de machtigingen van de huidige aanmelding bij de msdb-database voor deze informatie, die de fout veroorzaakt.

Symptoom 1

In omgevingen met SQL Server 2008 en SQL Server 2008 R2, wanneer een gebruiker die geen lid is van de vaste serverrol in SQL Server en niet anderszins juiste machtigingen in msdb Sysadmin wil Vouw het knooppunt Databases uit of een van de mappen onder dat knooppunt, wordt een foutbericht van de volgende strekking:

Ophalen van gegevens voor deze aanvraag is mislukt. (Microsoft.SqlServer.Manager.Sdk.Sfc)

Meer informatie:

Er is een uitzondering opgetreden tijdens het uitvoeren van een Transact-SQL-instructie of een batch.

(Microsoft.SqlServer.ConnectionInfo)

De <Servername>van de server-principal kan geen toegang tot de database 'msdb' onder de huidige beveiligingscontext. (Microsoft SQL Server, fout: 916)</Servername>

OpmerkingHet knooppunt Database uitbreiden is slechts een van de activiteiten waarvoor machtigingverbindenvoor de gastaccount in de msdbdatabase. Een dergelijke fout kan optreden bij elke activiteit die is vereist ten minste minimale toegang tot themsdb database.

Symptoom 2

In SQL Server 2005, wanneer een gebruiker die geen lid is van de vaste serverrol in SQL Server Sysadmin en de juiste machtigingen in msdb anders niet wordt verleend, uitbreiden het knooppunt Databases. Wanneer de gebruiker probeert om de eigenschappen van een database weer te geven, ontvangen zij het volgende foutbericht weergegeven:

Kan het gevraagde dialoogvenster niet weergeven.

MEER INFORMATIE:
Kan het gevraagde dialoogvenster niet weergeven. (SqlMgmt)
Er is een uitzondering opgetreden tijdens het uitvoeren van een Transact-SQL-instructie of een batch. (Microsoft.SqlServer.ConnectionInfo)
De server-principal Principal name kan geen toegang tot de database 'msdb' onder de huidige beveiligingscontext. (Microsoft SQL Server, fout: 916)

OpmerkingHet foutbericht verschijnt ook als de gebruiker lid van de rol van dbo in die database is.

Probleem 3

Een van de producten die dit probleem optreedt, is Microsoft Office Communications Server 2007 (OCS 2007). De front-end-services niet gestart wanneer u probeert om de server te starten. Bovendien ziet u het volgende foutbericht in Logboeken:

Gebeurtenistype: fout
Bron: OCS User Services
Categorie: (1006)
Gebeurtenis-ID: 30962
Datum: datum
Tijd: tijd
Gebruiker: N.V.T.
De computer: computernaam
Beschrijving: Verbinding met de back-enddatabase is geslaagd, maar kan niet opgeslagen registratieprocedure uitvoeren op de back-end. Deze fout mag onder normale omstandigheden niet optreden. Neem contact op met productondersteuning.
Back-end-Server: Servernaam Database: rtc native Sql-fout: 916 verbindingsreeks van: stuurprogramma = {SQL Native Client};Trusted_Connection = yes;AutoTranslate = no; server =servernaam; database = rtc;
Oorzaak: Mogelijke problemen met back-end-database.
Resolutie:
Controleer dat de back-end goed functioneert.
Zie voor meer informatie Help en ondersteuning op http://go.Microsoft.com/fwlink/events.asp.

Zie voor meer informatie de volgende thread in het forum OCS ondersteuning:

http://social.Microsoft.com/forums/en-us/communicationsserversetup/thread/8b428bd3-0509-4859-ac11-122bdbef06cc

Het probleem vaststellen

Om te bepalen of deze gebruiker juist is geconfigureerd in de msdb-database, de volgende query worden uitgevoerd als lid van de vaste serverrol sysadmin:

USE msdb;

SELECT prins.name AS grantee_name, perms.*

FROM sys.database_permissions AS perms

JOIN sys.database_principals AS prins

ON perms.grantee_principal_id = prins.principal_id

WHERE prins.name = 'guest' AND perms.permission_name = 'CONNECT';

GO

Als u een resultaatset ontvangt die lijkt op het volgende, deze gebruiker de benodigde machtigingen heeft.
Deze tabel samenvouwenDeze tabel uitklappen
grantee_nameklasseclass_descmajor_idminor_idgrantee_principal_idgrantor_principal_idtypepermission_namestaatstate_desc
Gast0DATABASE0021COVERBINDING MAKENGSUBSIDIE

Als u een lege resultaatset ontvangt of als de state_desc weigeren in het resultaat wordt ingesteld die wordt vermeld, dat de gastgebruiker is uitgeschakeld in de msdb-database. Foutbericht 916 wanneer u verbinding met een database maakt.

Het oplossen van het probleem

Het probleem op te lossen moet u de volgende query uitvoeren in SQL Server Management Studio als lid van de vaste serverrol sysadmin:

USE msdb;

GRANT connect TO guest;

GO


Eigenschappen

Artikel ID: 2539091 - Laatste beoordeling: dinsdag 24 juni 2014 - Wijziging: 6.0
De informatie in dit artikel is van toepassing op:
  • Microsoft SQL Server 2008 Standard
  • Microsoft SQL Server 2008 Developer
  • Microsoft SQL Server 2008 Enterprise
  • Microsoft SQL Server 2008 Express
  • Microsoft SQL Server 2008 R2 Standard
  • Microsoft SQL Server 2008 R2 Developer
  • Microsoft SQL Server 2008 R2 Enterprise
  • Microsoft SQL Server 2008 R2 Express
  • Microsoft SQL Server 2005 Standard Edition
  • Microsoft SQL Server 2005 Developer Edition
  • Microsoft SQL Server 2005 Enterprise Edition
  • Microsoft SQL Server 2005 Express Edition
Trefwoorden: 
kbsurveynew kbexpertiseadvanced kbtshoot kbprb kbmt KB2539091 KbMtnl
Automatisch vertaald artikel
BELANGRIJK: Dit artikel is vertaald door middel van automatische vertalingssoftware van Microsoft en is mogelijk nabewerkt door de Microsoft Community via CTF-technologie (Community Translation Framework) of door een menselijke vertaler. Microsoft biedt zowel automatisch vertaalde, door mensen vertaalde en door de community nabewerkte artikelen aan, zodat er in meerdere talen toegang is tot alle artikelen in onze Knowledge Base. Een vertaald of bewerkt artikel kan fouten bevatten in vocabulaire, syntaxis of grammatica.. Microsoft is niet verantwoordelijk voor eventuele onjuistheden, fouten of schade ten gevolge van een foute vertaling van de inhoud van een bericht of het gebruik van deze vertaalde berichten door onze klanten.
De Engelstalige versie van dit artikel is de volgende: 2539091

Geef ons feedback

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com