【问题标题】:How to audit an asp.net/SQL Server user如何审核 asp.net/SQL Server 用户
【发布时间】:2011-08-15 16:15:03
【问题描述】:

我正在构建一个非常简单的 asp.net 应用程序,它将有一个 SQL Server 2008 后端。

一些用户将输入数据并存储在数据库中,而一些用户将查看数据。

SQL Server 2008 对每个用户都使用 Windows 身份验证;但是,我还无法让 ASP.NET 与 Windows 身份验证一起使用。有没有一种简单的方法来允许使用 ASP.NET 进行 Windows 身份验证?我找到了一个非常复杂的方式,但我不喜欢它。

我需要审核用户执行的每个操作。

我应该在应用程序级别还是在 SQL Server 级别审核用户?

是否已经有内置方法可以做到这一点?如果有,怎么做?

【问题讨论】:

  • 是否有一些具体的事情让您感到费解,以便我们更好地帮助您? Windows 身份验证对我来说一直很简单。
  • @rib。不同的人需要查看 asp.net 网站的不同部分。
  • 我如何允许所有人使用 default.aspx,但只阻止某些用户访问 page.aspx?>
  • 阅读 SQL Server 2008 Auditing 以开始在 SQL Server 级别进行审计
  • @marc 你觉得这个解决方案怎么样? weblogs.asp.net/jgalloway/archive/2008/01/27/…

标签: c# .net asp.net sql sql-server-2008


【解决方案1】:

相反,我一直发现 Windows 身份验证非常容易设置并且相对轻松。以下是一些指南:

我没有意识到您可以审计用户在 ASP.NET 级别所做的事情。我的答案是为此使用 SQL Server。您需要登录:

  • 每个操作的时间戳和用户名
  • 您是否需要记录执行操作的工作站或位置?
  • 用户可以去mul吗
  • 如果多个位置使用此应用程序,请考虑仅存储 UTC 时间
  • 所有操作,甚至删除,这意味着删除只会对用户“隐藏”,但不会从数据库中删除。编辑也是如此,不应更改旧记录或将其从数据库中取出。

你最好的选择是和你的老板谈谈这件事。审核员可能有非常具体的需求,您绝对不想忘记任何事情。每种情况都不同,因此请务必坐下来仔细检查您的所有要求和规格。

【讨论】:

  • @rub。非常感谢,。我将如何在数据库级别进行审计?
  • 不幸的是,没有什么神奇的程序可以为您完成这一切。你必须自己写。一定要在规划阶段多花一些时间。
  • @rub 还要注意,从 IIS 到 SQL Server 的受信任连接不是一个选项。
【解决方案2】:

两件事:

  1. 以下是在 asp.net 应用上 Win auth 的示例:

http://weblogs.asp.net/scottgu/archive/2006/07/12/Recipe_3A00_-Enabling-Windows-Authentication-within-an-Intranet-ASP.NET-Web-application.aspx

  1. 我建议您实现一个像 log4net 这样的日志框架来记录您的应用程序。简单易用http://logging.apache.org/log4net/download.html

【讨论】:

  • 非常感谢 - 我如何允许每个人使用 default.aspx,但只阻止某些用户访问 page.aspx?
  • 你可以用角色来做。使用角色控制对不同页面的访问。这是 asp.net 4guysfromrolla.com/articles/120705-1.aspx 中关于成员资格和角色提供者的一个非常好的教程。如果您对我的回答感到满意,请接受它作为解决方案
【解决方案3】:

如果人们访问数据的方式与世界卫生组织一样重要,我会从应用程序中执行此操作,但这与 rlb.usa 的答案完全不同。在我过去的工作中,了解该人从哪个应用程序更改数据通常与了解何时/谁更改数据一样重要。如果主要是针对应用程序问题,log4net 是一个不错的选择。

【讨论】:

  • 我将如何允许所有人使用 default.aspx,但只阻止某些用户访问 page.aspx?
  • 您可以使用权限来执行此操作,无论是在应用程序范围内还是在每个页面上。见这里:msdn.microsoft.com/en-us/library/ff647405.aspx
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2010-09-26
  • 2010-11-07
  • 2014-12-09
  • 2013-12-19
  • 2016-09-18
  • 1970-01-01
  • 2011-07-21
相关资源
最近更新 更多