需要有关.Net登录过程的帮助(适用于本地计算机,而不是远程计算机)

需要有关.Net登录过程的帮助(适用于本地计算机,而不是远程计算机),.net,asp.net,asp.net-membership,.net,Asp.net,Asp.net Membership,我有一个很愚蠢的问题,但已经一个星期了,我不能前进了。 我有一个受身份验证保护的小应用程序。一切都在本地工作,你们可以登录,等等。在远程机器上,你们不能登录,它告诉你们你们的登录无法识别。现在,我认为可能是db连接等,所以我制作了一个小测试页面,列出asp_用户表,通过对用户进行更改,我可以看到本地和远程用户通过该连接看到相同的表,我无法理解为什么用户身份验证不起作用 为了澄清,这是asp.net应用程序和表单身份验证,db连接正在基于我创建的列出asp_用户表的测试页面工作 它实际上没有报告任

我有一个很愚蠢的问题,但已经一个星期了,我不能前进了。 我有一个受身份验证保护的小应用程序。一切都在本地工作,你们可以登录,等等。在远程机器上,你们不能登录,它告诉你们你们的登录无法识别。现在,我认为可能是db连接等,所以我制作了一个小测试页面,列出asp_用户表,通过对用户进行更改,我可以看到本地和远程用户通过该连接看到相同的表,我无法理解为什么用户身份验证不起作用

为了澄清,这是asp.net应用程序和表单身份验证,db连接正在基于我创建的列出asp_用户表的测试页面工作

它实际上没有报告任何错误,只是说 '您的登录尝试未成功。请再试一次 这一定很简单,我现在太沮丧了,看不到它,这就是为什么我要寻求帮助。救命!:)

好的,所以我试着发布web.config的部分内容,但它就是没有显示出来。它实际上是基本的配置,包含连接字符串、成员资格和角色部分(无配置文件)。所以问题是你们会怎么做,你们会检查什么

提前感谢您提出的任何建设性意见


泽利科

你有域名吗?如果不这样做,则必须以运行asp.net应用程序的系统的用户身份登录

如果您确实有域,请尝试以身份登录

域名\用户名


只是把它扔出去。

不清楚您使用的是什么类型的身份验证,但如果是Windows身份验证,则可能是您正在从本地计算机读取登录的用户,而该用户在远程计算机上不存在

如果您正确地实现了表单身份验证,那么听起来可能是数据库连接问题,您应该从那里开始进行故障排除


  • 可能首先尝试从sql management studio从远程计算机连接到db(使用web.config中的连接信息)

IIS的目录安全设置是什么?确保“匿名访问和身份验证控制”对话框的设置相同。此处的无效设置很可能是导致此特定错误的原因。

我们遇到了类似的情况,即虽然我们可以登录,但该站点在选择时拒绝“记住我”。它归结为确保成员资格和角色提供者指向相同的资源。是的,那对我来说是一个“Doh!”的时刻

您是在尝试在远程服务器上使用SQLExpress,还是指向完整的SQLServer实例?根据我的经验,大多数共享托管环境都不允许在App_数据文件夹中使用.MDF。。。不管怎样,知道这一点将为你指明正确的方向

这里有一些东西可以尝试:

  • 确保您的登录id未被锁定;其实可能就这么简单

  • 确保包含登录页面的文件夹上没有任何安全修整

  • 在web.config文件中检查相应的提供程序设置,并确保

    • 对于“应用程序”属性,所有提供程序都需要具有相同的值

    • 所有提供程序都需要使用相同的连接字符串和提供程序“set”

      • 这很可能意味着使用SqlMembershipProviderSqlRoleProvider
      • 如果您的应用程序不是v3.5应用程序,则可能必须添加对System.Web.Security的引用。这就是您实际需要的名称空间
    • 如果您确定您的站点可以使用SQLExpress,请使用AspNetMembershipProviderAspNetRoleProvider

  • 如果你能发布web.config的相关内容,那就太好了。只需使用编辑器中的代码示例框。代码示例按钮就是上面有1010101的按钮。。。只需粘贴代码,在编辑器中突出显示它,然后点击该按钮。这是一个带有表单身份验证的asp.net应用程序,我验证了db连接,它们工作正常,我还将所有连接名称(在角色、成员身份中)重命名为相同名称,这样错误就不会滑到那里。奇怪的是,它在本地工作,而不是在与同一个db通信时远程工作。也许可以从尝试从sql management studio从远程计算机连接到db开始(使用web.config中的连接信息)是的,我做到了,它工作,这就是为什么这是一个奇怪的问题。我正在尝试获取远程桌面登录以查看Bryan建议查看的IIS设置。谢谢,我将检查此设置。远程sql server已满,而不是express。我确实是从express开始的,最初看起来命名是个问题。我认为这可能是应用程序属性的问题。我现在正在试验它。好的,它肯定是提供者中的应用程序名称,一个有,其他(角色)没有。真奇怪!谢谢你的建议,谢谢你和其他试图帮助你的人。我知道这一定是件傻事。