我们在使用SQL Server 2008的审核服务对数据库服务器端进行监控日志,一般有两种设计架构:
1.主从架构(lient-server)
2.多层架构(ulti-tier)
当然使用主从架构可以记录登陆账户是来自哪一台工作主机的IP地址,但是多层架构多以WEB架构为主,则可能会造成审核日志的盲点,在WEB架构下,创建登陆事件的审核,但是因为所有的登陆账户的操作都是由网页服务器所发起的执行。仅能记录到网页服务器的IP地址,无法记录到客户端的IP地址。所以我们在多层架构上,若需要对客户端进行安全审核,要自行利用前台应用程序获得客户端IP地址(这个应该很简单的),然后将IP地址等数据存到数据库内。
我想问一下各位大牛,拿到客户端IP地址如何存到数据库内与审核服务结合使用?使得在查看审核日志的时候能看到客户端的IP地址。

解决方案 »

  1.   

    你已经知道了:
    1,审核服务拿到的是web应用服务器的地址
    2,而应用程序拿的客户端ip只能存放在你的数据库里那你现在的问题实际上是 如何把审核服务与用户数据(你拿到的存放于数据库的客户端ip)联系起来。
    但是遗憾的是操作系统并没有提供这样的接口。
    如果你是想把用户数据交给你的应用程序(而非审核服务)来做,实际上就是一般的web应用系统中的常见的一项功能,即来访记录查询/IP屏蔽之类的功能。  这与你dba的审核工作相差甚远, 应该是web系统管理者应做的事。