Как провести аудит пользователя asp.net/SQL Server - PullRequest
1 голос
/ 15 августа 2011

Я создаю очень простое приложение asp.net, которое будет иметь бэкэнд SQL Server 2008.

Некоторые пользователи будут вводить данные и сохранять их в базе данных, а некоторые пользователи будут просматривать данные.

SQL Server 2008 работает с аутентификацией Windows для каждого пользователя; Однако я не могу заставить ASP.NET работать с аутентификацией Windows. Есть ли простой способ разрешить проверку подлинности Windows с ASP.NET? Я нашел очень запутанный способ, но мне это не нравится.

Мне нужно будет проверять каждое действие, которое выполняют пользователи.

Должен ли я проводить аудит пользователей на уровне приложений или на уровне SQL Server?

Есть ли уже встроенные методы для этого? Если да, то как?

Ответы [ 3 ]

3 голосов
/ 15 августа 2011

Наоборот, я всегда находил аутентификацию Windows довольно простой в настройке и относительно безболезненной. Вот несколько руководств:

Я не осознавал, что вы можете проверять действия пользователей на уровне ASP.NET. Мой ответ будет использовать SQL Server для этого. Вам нужно войти:

  • метки времени и имя пользователя для каждого действия
  • нужно ли регистрировать рабочую станцию ​​или место, где выполнялись действия?
  • могут ли пользователи перейти к муль
  • если несколько приложений используют это приложение, рассмотрите возможность хранения только времени UTC
  • все действия, даже удаления, что означает, что удаление только «скрыто» от пользователя, но никогда не удаляется из базы данных. То же самое для редактирования, старая запись никогда не должна быть изменена или удалена из базы данных.

Лучше всего поговорить с боссом об этом. У аудиторов могут быть очень специфические потребности, и вы определенно не хотите ничего забывать. Каждая ситуация отличается, поэтому обязательно сядьте и перепроверьте все ваши требования и технические характеристики.

2 голосов
/ 15 августа 2011

Две вещи:

  1. Вот пример Win Win для приложения asp.net:

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
1 голос
/ 15 августа 2011

Я бы сделал это из приложения, если это важно, КАК люди получили доступ к данным так же, как ВОЗ, но это сильно отличается от ответа rlb.usa. На моих прошлых работах часто было так же важно знать, из какого приложения человек изменил данные, как, когда и кто. Если это в первую очередь из-за проблем с приложениями, log4net является хорошим вариантом.

...