SQL Server 2008 - Suppression de propriété du schéma
Je viens de créer une nouvelle application web qui accepte une certaine forme basé sur les entrées de l'utilisateur et l'insère dans la base de données. Pour aller avec ce que j'ai créé un nouvel utilisateur dans la base de données et d'abord affecté à l'utilisateur de deux rôles et schémas ...
db_datareader
db_datawriter
Après en réfléchissant, j'ai réalisé que l'utilisateur n'a pas besoin d'être partie de la db_datareader
rôle, car l'utilisateur uniquement les données insérées dans la base de données et de ne jamais lire. Je suis donc retourné et a supprimé le rôle de db_datareader
et a remarqué que le schéma options ont été grisé. Je ne pouvais pas supprimer l'utilisateur de propriété du schéma de db_datareader
.
Comment fait-on pour supprimer un utilisateur de la propriété d'un schéma spécifique? Dois-je ont même attribué propriété du schéma en premier lieu?
Je suis connecté en tant qu'administrateur de SQL Server et du système d'exploitation Windows 7.
OriginalL'auteur webworm | 2011-03-04
Vous devez vous connecter pour publier un commentaire.
Non, vous ne devriez pas avoir cédé la propriété du schéma de l'utilisateur. Vous devriez avoir seulement l'utilisateur, un membre de la du schéma. Revenir à la propriété de dbo et vérifiez que le compte d'utilisateur n'est pas encore membre de la du schéma.
Eh bien, j'ai assisté à un cours de formation pour SQL Server 2008. Avant, j'étais confus au sujet de ce que les schémas sont tout au sujet. Ce que j'ai vraiment découvert, c'est que si vous avez besoin d'granulaire des autorisations sur les objets (c'est à dire plus d'un utilisateur peut accéder (ou de ne pas l'accès à des objets dans un schéma), puis les schémas vraiment devenir rien de plus que des conteneurs logiques comme des espaces de noms - utile que pour les développeurs. Si, au contraire, un compte peut accéder à tous les objets dans un schéma, ajout de plusieurs objets pour le schéma donne implicitement le schéma membre de la configuration des droits d'accès.
Personnellement, pour mon interne de l'entreprise applications à l'aide d'Active Directory de sécurité, je trouve que les schémas ne sont utiles que des espaces de noms pour nous les développeurs. J'ai créer une base de données (ou de l'application à partir de maintenant) les rôles et attribuer les rôles des autorisations aux objets.
OriginalL'auteur HardCode
J'ai eu le même problème aujourd'hui et a trouvé un moyen de supprimer l'utilisateur en tant que propriétaire de schéma. Ouvrir le Schéma nœud en dessous de Sécurité dans la base de données et de changer le propriétaire de l'utilisateur que vous avez utilisé à tort avec le propriétaire par défaut. Par exemple, si certains excentrique nom d'utilisateur est répertorié en tant que propriétaire de schéma pour db_datareader, de le modifier pour db_reader et ainsi de suite.
OriginalL'auteur Doreen