2012-03-23 68 views
1

我正在开发将由域和非域计算机使用的Intranet MVC3应用程序。
每个人都有一个域帐户,所以每当非域计算机打开网站时,预计会出现Windows凭据提示输入框。

如果我理解正确,这将是标准的浏览器行为,因为他们不会将Windows凭据传递给网站,除非他们在同一个域中。
但问题是,无论何时我在我的本地主机上调试,我都与服务器在同一个域中(因为我明显是服务器)。这导致我用我的工作组Windows帐户“登录”而不是我的域帐户。

我在寻找的是一种触发提示框的方法,这样我就可以使用我的域帐户登录,而无需使用我的工作组帐户进行无用的访问。在本地主机上浏览时禁用集成的Windows安全性

回答

1

您可以使用表单认证与ActiveDirectoryMembershipProvider

看看本教程在MSDN上:http://msdn.microsoft.com/en-us/library/ms998360.aspx和这篇文章:http://support.microsoft.com/kb/326340/en-us(对不起,这是VB代码)。

附录:如果您只想测试其他用户凭证,您可以使用模拟,只需设置您的web.config。

+0

如果我切换到形式认证用户将不得不每次登录或我必须创建一个自动登录,如果他们在域中。对于那些应该开箱即用的东西来说,这看起来很麻烦。我喜欢冒充其他用户的声音,但我认为impersionation只会切换运行应用程序池的用户,而不是浏览网站的实际用户。 – Kristof 2012-03-23 13:11:03

+0

是的,这有点无聊。我认为它可以在项目模板创建的认证类中完成,以便进行测试,但这很烦人。我在答案中增加了另一个链接。 – 2012-03-23 13:19:59

相关问题