Serverconfiguratie: ketenvorming van eigenaarschap tussen databases

Van toepassing op:SQL Server

Gebruik de optie voor het cross db ownership chaining configureren van eigendomsketens voor meerdere databases voor een exemplaar van SQL Server.

Met deze serveroptie kunt u eigendomsketens tussen databases beheren op databaseniveau of eigendomsketens tussen databases toestaan voor alle databases:

  • Wanneer cross db ownership chaining uit staat (0) voor het exemplaar, zijn eigendomsketens tussen databases uitgeschakeld voor alle databases.

  • Wanneer cross db ownership chaining is ingeschakeld (1) voor het exemplaar, is eigendomskoppeling tussen databases ingeschakeld voor alle databases.

  • U kunt eigendomskoppeling tussen databases voor afzonderlijke databases instellen met behulp van de SET-clausule van de ALTER DATABASE-instructie. Als u een nieuwe database maakt, kunt u met behulp van de instructie CREATE DATABASE de optie voor ketens van eigendom tussen databases voor de nieuwe database instellen.

    Het instellen van cross db ownership chaining op 1 wordt niet aanbevolen, tenzij alle databases die worden gehost door het SQL Server-exemplaar moeten deelnemen aan ketens van eigendom tussen databases en u zich bewust bent van de beveiligingsimplicaties van deze instelling.

De status van eigendomsketens voor meerdere databases controleren

Voer de volgende query uit om de huidige status van eigendomsketens voor meerdere databases te bepalen:

SELECT is_db_chaining_on,
       name
FROM sys.databases;

Een resultaat van 1 geeft aan dat eigendomsketen tussen databases is ingeschakeld.

Eigendomsketen tussen databases beheren

Voordat u databaseoverschrijdende eigendomsketens in- of uitschakelt:

  • U moet lid zijn van de vaste serverfunctie sysadmin om eigendomsketening tussen databases in of uit te schakelen.

  • Voordat u ketens van eigendom tussen databases uitschakelt op een productieserver, moet u alle toepassingen, inclusief toepassingen van derden, grondig testen om ervoor te zorgen dat de wijzigingen geen invloed hebben op de functionaliteit van de toepassingen.

  • U kunt de cross db ownership chaining optie wijzigen terwijl de server wordt uitgevoerd als u opgeeft RECONFIGURE met sp_configure.

  • Als u databases hebt waarvoor cross-database ownership chaining is vereist, is het raadzaam de optie cross db ownership chaining voor de instantie uit te schakelen met sp_configure; schakel vervolgens cross-database ownership chaining in voor afzonderlijke databases waarvoor dit vereist is met de instructie ALTER DATABASE.

Beveiligingsrisico

Het inschakelen van cross-database eigendomsketens in SQL Server vormt een potentiƫle beveiligingsrisico. Wanneer deze functie actief is, kan een lokale databasegebruiker met verhoogde bevoegdheden gebruikmaken van eigendomsketens om machtigingen te escaleren en mogelijk sysadmin-toegang te krijgen.

U moet vermijden eigendomsketens over meerdere databases op exemplaarniveau mogelijk te maken, en beperk het gebruik ervan tot alleen vertrouwde, gerelateerde databases.