ASP.NET 应用程序连接字符串和 SQL Server 安全/权限

ASP.NET 应用程序连接字符串和 SQL Server 安全/权限

我正在部署一个 ASP.NET 应用程序和 SQL Server(2008)数据库实时(生产)服务器. 物理服务器是同时运行SQL Server 2008 和 IIS 7 - 由托管公司提供,并且不是我们内部网络的一部分

我有几个关于数据库安全性和 ASP.NET 应用程序的连接字符串的问题。

以前,我会创建一个数据库用户并为每个表指定 SELECT/INSERT 等权限 - 但我的问题是50+ 张桌子在这个数据库中,因此执行此操作需要很久

应用程序需要对每个表进行 SELECT/INSERT/DELETE/UPDATE。

  • 有没有比为每个表指定权限更好的方法单独地
  • 有没有等同于集成安全对于实时网络服务器来说 - 有什么缺点?
  • 或者有办法提升特定用户的访问权限对特定数据库的完全访问权限

连接字符串还会如何改变?

我只是想找一些专家建议,只是有人指出我的正确方向以及一些链接文档如何找到更好的方法。

非常感谢。

答案1

听起来你可以让用户成为数据库所有者,因为你没有列出非常严格的安全规则。我为所有需要基本数据库访问的简单网站都这样做。如果你需要更严格的策略(即一些数据库用户是只读的,一些只能访问某些表),那么这不是你的选择。

在 SQL Server Management Studio 中,展开Security>Logins并右键单击用户,然后转到Properties,然后User Mapping。在顶部窗格中,选中数据库旁边的框。然后db_owner在底部窗格中找到并选中该框。现在用户可以在此数据库上执行所有功能,包括 INSERT、SELECT、UPDATE、DELETE。

在此处输入图片描述

数据库级别角色了解每个角色的含义的更多详细信息。

相关内容