Como desfazer a atribuição de propriedade do esquema db_datareader / db_datawriter?

10

eu pretendia atribuir um logon do SQL Server ao

  • db_datareader
  • db_datawriter

funções de banco de dados . Mas se um momento de dor de barriga e cansaço, acidentalmente dou a esse esquema de usuário a propriedade deles:

insira a descrição da imagem aqui

Ignorando por enquanto o que pode significar conceitualmente para um usuário "possuir" esses dois esquemas internos. E, por um momento, ignorar se é mesmo um problema se um usuário possui esses dois esquemas (por exemplo, se eu quiser excluir os usuários, os esquemas internos irão acompanhá-lo).

Minha pergunta é: Como faço para desfazer isso?


Eu bati aleatoriamente nas teclas do meu teclado, e ele saiu :

ALTERAR A AUTORIZAÇÃO NO ESQUEMA :: [db_datareader] PARA [db_datareader]F5

Mas isso não fez nada; então agora é hora de consultar os especialistas.

Microsoft SQL Server 2005 - 9.00.5057.00 (Intel X86) 25 de março de 2011 13:50:04 Direitos autorais (c) 1988-2005 Microsoft Corporation Standard Edition

Ian Boyd
fonte

Respostas:

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
fonte
Em relação à sua edição, apenas um de cada par deve ser necessário. alter authorizationaltera a propriedade do passível de proteção (neste caso, um esquema) para o principal fornecido. Portanto, você deseja que o dbo seja o proprietário dos esquemas (como estão nos bancos de dados que verifiquei ao meu lado) ou que eles sejam os próprios. A escolha é mutuamente exclusiva (tanto quanto eu sei).
precisa
1

faça o seguinte: facilitará o seu trabalho: abra o SQL Server como conta SA, clique em criar nova consulta e consultas anteriores e clique em executar! feito.

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
fonte