Comment annuler l'attribution de la propriété du schéma db_datareader / db_datawriter?

10

je voulais attribuer une connexion SQL Server au

  • db_datareader
  • db_datawriter

rôles de base de données . Mais si un moment de ventre douloureux et de fatigue, je leur donne accidentellement la propriété du schéma utilisateur:

entrez la description de l'image ici

Ignorant pour le moment ce que cela peut signifier conceptuellement pour un utilisateur de «posséder» ces deux schémas intégrés. Et ignorer pour le moment si c'est même un problème si un utilisateur possède ces deux schémas (par exemple, si je veux supprimer les utilisateurs, les schémas intégrés vont avec).

Ma question est: comment puis-je l'annuler?


j'ai frappé au hasard des touches de mon clavier, et il est sorti :

ALTER AUTHORIZATION ON SCHEMA :: [db_datareader] TO [db_datareader]F5

Mais cela n'a rien fait; il est donc temps de consulter les experts.

Microsoft SQL Server 2005 - 9.00.5057.00 (Intel X86) 25 mars 2011 13:50:04 Copyright (c) 1988-2005 Microsoft Corporation Standard Edition

Ian Boyd
la source

Réponses:

13
alter authorization on schema::[db_datareader] to [dbo]
alter authorization on schema::[db_datareader] to [db_datareader]

alter authorization on schema::[db_datawriter] to [dbo]
alter authorization on schema::[db_datawriter] to [db_datawriter]
Ben Thul
la source
Concernant votre montage, un seul de chaque paire devrait être nécessaire. alter authorizationchange la propriété du sécurisable (dans ce cas, un schéma) en principal donné. Donc, soit vous voulez que dbo soit propriétaire des schémas (comme ils se trouvent dans les bases de données que j'ai vérifiées de mon côté), soit vous voulez qu'ils se possèdent eux-mêmes. Le choix s'exclut mutuellement (pour autant que je sache).
Ben Thul
1

procédez comme suit, cela vous facilitera le travail: ouvrez SQL Server en tant que compte SA, cliquez sur créer une nouvelle requête et des requêtes de soufflage passées et cliquez sur exécuter! terminé.

alter authorization on schema::[db_datareader] to [dbo]
alter authorization on schema::[db_datareader] to [db_datareader]
alter authorization on schema::[db_datawriter] to [dbo]
alter authorization on schema::[db_datawriter] to [db_datawriter]
alter authorization on schema::[db_securityadmin] to [dbo]
alter authorization on schema::[db_securityadmin] to [db_securityadmin]
alter authorization on schema::[db_accessadmin] to [dbo]
alter authorization on schema::[db_accessadmin] to [db_accessadmin]
alter authorization on schema::[db_backupoperator] to [dbo]
alter authorization on schema::[db_backupoperator] to [db_backupoperator]
alter authorization on schema::[db_ddladmin] to [dbo]
alter authorization on schema::[db_ddladmin] to [db_ddladmin]
alter authorization on schema::[db_owner] to [dbo]
alter authorization on schema::[db_owner] to [db_owner]
MJVM
la source