上传文件时服务器要求输入用户名和密码

时间:2013-08-10 12:25:24

标签: c# asp.net authentication iis

要上传文件,我将<identity impersonate="true" />添加到Web.Config文件,因为我无法设置READ和WRITE权限。

一切都很完美,但是现在,我不知道原因,服务器一直在问我输入用户名和密码来上传文件,我插入了我的ftp用户名和密码。

我该如何绕过这个? (我只能编辑Web.config)

目前,我有这个:

<identity impersonate="true" />

<authentication mode="Windows"/>

我试过了:

<identity impersonate="true" userName="ftpaccount" password="ftppassword" />

但它不起作用。

1 个答案:

答案 0 :(得分:2)

您尝试的第二个选项似乎有点不正确,因为在使用WindowsAuthentication时,对于域帐户,UserNames应为Form:DOMAIN_NAME\UserName,对于本地用户帐户,UserName应为COMPUTER_NAME\UserName

还要确保尝试模拟的用户帐户具有在上传目录中创建文件的足够权限。这是我的应用程序在使用时遇到相同情况的一个原因:<identity impersonate="true" />

以下简明描述可能会有所帮助。

使用IIS 7.5时,ASP.NET应用程序使用网络服务帐户来请求系统资源。 此设置在<processModel>的{​​{1}}部分的<system.web>元素中定义。

Machine.config

在某些情况下,<processModel autoConfig="true" /> 的值可能为false。因此,使用Windows身份验证时可能有两种方法:[在应用程序的Web.config中提供这些]

1。)autoConfig。我们应该确保身份是谁的用户      模拟具有在上载目录中创建文件的足够权限。

2.)我们可以提供一直使用的帐户名称:

<identity impersonate="true" />

用户需要具备足够的权限。还要确保UserName的格式为:<identity impersonate="true" userName="DOMAIN\Username" password="password" /> 表示域帐户,DOMAIN_NAME\UserName表示本地用户帐户。