首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >用户欺骗域名

用户欺骗域名
EN

Stack Overflow用户
提问于 2011-02-17 06:54:22
回答 2查看 1.2K关注 0票数 5

我们目前有一个winforms应用程序,允许用户登录才能访问系统。身份验证系统是一个定制的杂七杂八。我正在实现一个更改,将用户的NT用户名和域名链接到他们现有的自定义帐户,这样他们就不需要重复登录。我使用WindowsIdentity.GetCurrent().Name,然后将该信息存储在一个数据库表中,该表映射到它们的旧帐户I。我想知道的是,用户是否可以使用与真实域名镜像的计算机名通过vpn进入网络?这可能会让恶意用户访问某人的帐户。我想真正的问题是:是否有一种方法可以区分sql Servers域和用户域,而不只是对名称进行字符串比较。

EN

回答 2

Stack Overflow用户

发布于 2011-02-17 07:02:00

是的,如果您的应用程序使用SQL身份验证来访问数据库,就会发生这种情况。如果将数据库连接更改为使用可信身份验证,则SQL Server将根据域控制器对登录进行身份验证。因此,尽管用户有权访问应用程序,但他们无法访问驱动应用程序的数据库。如果这样做了,还可以将用户名的捕获移动到SQL Server存储过程中,这将确保捕获的名称与域的名称相匹配,而不是与本地用户的名称相匹配。

票数 2
EN

Stack Overflow用户

发布于 2011-02-17 07:05:26

服务器不能信任客户端。

如果客户机能够获得并使用凭据登录到数据库服务器,那么您就完了。

如果您的服务器只是一个数据库服务器,并且您的应用程序不使用可信连接,并且您的应用程序不提示输入数据库凭据,那么您就完蛋了。(请参阅前面的语句。)

我很懒。如果我愿意的话,我会给WindowsIdentity.GetCurrent().Name打补丁以返回“管理员”。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/5023192

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档