【问题标题】:How to deploy and secure an ASP.NET web app to be available to internal and outside users?如何部署和保护 ASP.NET Web 应用程序以供内部和外部用户使用?
【发布时间】:2010-05-21 15:48:44
【问题描述】:

我的公司有几个用 ASP.NET 编写的 Web 应用程序。我们需要使这些应用程序可供 Intranet 用户以及经过身份验证的外部用户使用。两组的大部分功能相同,但内部用户可以使用一些额外的功能。两组不同的用户将使用稍微不同的安全设置...我们的内部人员将使用针对 Exchange 的 LDAP 进行身份验证,而外部用户将在 SQL Server 中拥有帐户。

部署我们的网络应用程序的最佳方法是什么?我们是否应该将 2 个副本部署到不同的服务器,一个为 Intranet 配置,另一个为外部用户配置?或者有没有更好的方法在两台服务器之间共享代码,但可以灵活地使用不同的 web.config 设置来保证安全?

【问题讨论】:

    标签: asp.net asp.net-mvc iis


    【解决方案1】:

    这就是你所追求的:http://msdn.microsoft.com/en-us/library/ms972958.aspx

    专门针对混合窗口和表单身份验证。

    您可以通过向文件夹添加额外的 web.config 文件来保护文件夹:

    <?xml version="1.0" encoding="utf-8" ?>
    <configuration>
      <system.web>
        <authorization>
          <allow roles="admin" />
          <deny users="*" />
        </authorization>
      </system.web>
    </configuration>
    

    这样做是允许具有“管理员”角色的任何人,并拒绝所有其他用户访问文件夹中的资源。有很多组合和可能性。请注意,此处声明权限的顺序很重要。值得尝试一下,以便您完全了解其工作原理。

    页面特定的设置可以这样处理:

    <location path="page.aspx">
        <system.web>
          <authorization>
             <allow roles="Administrators" />
          </authorization>
         </system.web>
     </location>
    

    【讨论】:

      猜你喜欢
      • 2014-02-08
      • 1970-01-01
      • 2019-10-09
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多