5

我的网络应用程序写入多个文件夹(日志、上传等),我总是通过我的托管服务提供商手动设置这些权限。

我想创建一个在新安装上执行此操作的安装脚本。在中等信任下这可能吗?

我什至不能调用File.GetAccessControl,更不用说File.SetAccessControl,但反正我不需要这样的“大锤”。我只想做 ISP(在本例中为 GoDaddy)让我通过管理控制台做的事情。

我相信 PHP 能够做到这一点,如果可能的话,我愿意为此目的考虑一个 PHP 页面。

4

2 回答 2

2

好的,假设您以通常的方式使用 IIS 和 asp.net,您必须拥有一个 asp.net 帐户,框架在该帐户下代表您执行您的应用程序。

Web 应用程序在单个帐户下运行,并通过身份验证以编程方式授予用户访问权限,以执行您的“主帐户”代表他们执行的操作。

认为它看起来像这样......

Asp.net 加载您的应用程序(asp 帐户)用户连接(iuser 帐户)用户登录(?取决于使用的帐户可能是 windows auth 或 forms auth 等)

用户请求在他们的帐户下使用您呈现的网页做某事......

asp.net 检查用户是否有权执行操作(asp.net 帐户),如果用户可以执行此操作,asp.net 会根据请求的操作(asp.net 帐户)进行操作

因此......您应该已经拥有该 asp.net 帐户中的相关权限来执行您需要执行的操作。

上面也有一个层次……IIS服务器本身在系统/网络服务帐户下正常运行。

所以问题是真的......你想如何授予可能的用户写入服务器的权限。

查看框架中的成员资格提供程序和角色提供程序类,您应该能够继承它们并创建一个 ActiveDirectoryRoleProvider 和 ActiveDirectoryMembershipProvider 类,该类将根据 AD 中用户的角色成员身份进行身份验证,或者如果您更喜欢使用基本的 asp.net 提供程序类。

希望这可以帮助。

于 2010-05-17T14:37:14.367 回答
0

您需要在 %windir%\Microsoft.NET\Framework{Version}\ 中编辑配置文件

请参阅http://msdn.microsoft.com/en-us/library/ms998341.aspx

于 2010-04-08T23:45:25.130 回答