|
|
1
4
实现这一点的最简单方法是创建一个服务帐户,您将在系统中显式地使用它来进行这种动态类型的查询。其思想是使用您所吸收的所有SQL安全优势,在服务器上创建一个非常受限的低级别服务帐户,并使用该帐户连接到数据库。 我建议现在就给他们选择访问权限,然后在用户提出请求并且合理的情况下逐步释放控制权。 This 链接将告诉您如何使用grant关键字为登录提供非常具体的帐户安全性。 因此,您所需要做的就是在SQL Server中使用基于SQL Server的安全性(而不是Windows)创建一个新帐户。之后,只需使用上面链接中的信息将您希望他们拥有的特定权限添加到该帐户。然后将应用程序中的连接字符串切换到该特定功能的新帐户。 围绕这一点,任何其他基于编程的安全性都是额外的好处,但仅编程解决方案就不会像数据库级访问限制那样具有防弹性。 |
|
|
2
4
我要在这里买皮带和背带。
高温高压 |
|
|
3
3
使用标记“with encryption”为SQL Server创建所有对象(视图、表、过程、函数)。 例如: 使用加密创建过程bbbb 作为 开始 … 结束 之后,用户将无法查看源代码,也无法对其进行修改。 |
|
|
4
1
除了为这些类型的操作专门创建一个最低权限帐户(我更希望我的所有用户帐户只在某些SP上具有Exec,并在某些实用程序视图上选择Exec(这通常是针对初学者的),您还可以使用视图使数据尽可能简单,并形成某些公共连接。在用户必须提供某种过滤器的情况下,您可以使用存储过程或内联表值函数,例如您不希望它们执行SELECT*FROM VIEW的日期范围。 |