【问题标题】:Access to the path denied after deployment部署后拒绝访问路径
【发布时间】:2015-04-03 18:47:47
【问题描述】:

我实现了一个允许用户上传文件的功能。一切都在我的机器上完美运行。部署后,我收到以下错误:

拒绝访问路径“\...\VendorDocuments\TempFolder\2585”。

我在拥有VendorDocument 文件夹所有权限的对象列表中添加了EveryOne。有效。

现在我想知道如何设置权限以考虑安全方面。

  1. vendorDocuments 是主文件夹。
  2. 在 vendorDocuments 中还有一个名为 TempFolder 的文件夹
  3. 当用户选择一个文件时,该文件会自动上传到一个TempFolder/UserId
  4. 如果用户决定取消操作,则删除 TempFolder 中的文件。
  5. 如果用户决定继续,该文件将从 TempFolder/UserId 移动到仍然在 vendorDocuments 内的属于供应商的文件夹。

    VendorDocuments => TempFolder => TempFolder => UserId (file inside)

    VendorDocuments => VendorName => DocumentId (file inside)

所以在我看来,有2个问题;

  1. 如何在最高级别设置权限,即 vendorDocuments 文件夹。
  2. 我是否也需要为每个供应商文件夹设置权限,即,将保存属于给定供应商的文件的位置。我问这个问题的原因是因为我读到最好手动设置文件夹权限。但是,在这种情况下,供应商自己的文件夹将即时创建,即属于该供应商的用户第一次上传文件时。

很抱歉问了一个很长的问题。这是我第一次使用权限。

【问题讨论】:

    标签: asp.net .net deployment permission-denied


    【解决方案1】:

    我们通过将应用程序池标识分配给应用程序本身来处理我们的权限。这允许您向应用程序帐户授予将文件写入其目的地所需的权限。我们正在使用 IIS,我可以看到,根据您的 IIS 版本,过程略有不同。 IIS指令:http://www.iis.net/learn/manage/configuring-security/application-pool-identities

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2016-11-11
      • 2011-03-29
      • 1970-01-01
      • 1970-01-01
      • 2010-09-24
      相关资源
      最近更新 更多