相关疑难解决方法(0)

我可以在web.config位置路径属性中使用通配符吗?

在IIS 7中,我尝试拒绝所有用户访问扩展名为.xml的所有文件.

我在web.config文件中尝试了以下设置:

<location path="*.xml">
    <system.web>
      <authorization>
        <deny users="*"/>
      </authorization>
    </system.web>
</location>
Run Code Online (Sandbox Code Playgroud)

但随后获取任何文件都会导致内部服务器错误.

它可以工作,如果我拒绝访问单个文件,但这个解决方案不会给我太多,因为我不提前知道所有.xml文件.

authentication iis-7 web-config

10
推荐指数
2
解决办法
1万
查看次数

如何将<clientCache />设置应用于IIS中的特定扩展?

我在Azure上使用以下Web.config托管Web应用程序:

<?xml version="1.0" encoding="UTF-8"?>
<configuration>
  <system.webServer>
    <staticContent>
      <mimeMap fileExtension=".text" mimeType="text/plain" />
      <clientCache cacheControlCustom="public" cacheControlMode="UseMaxAge" cacheControlMaxAge="7.00:00:00" />
    </staticContent>
  </system.webServer>
</configuration>
Run Code Online (Sandbox Code Playgroud)

这有效,但我想通过扩展来改变缓存时间.我想将.html文件的最大年龄设置为1天,将其他所有文件的最大年龄设置为365天.原因是html中的所有资产都有其文件名在更改时加速并且是从CDN提供的,因此它们永远不需要过期,但是html页面本身需要始终保持新鲜,以便用户可以看到新内容.

我看到该<location>元素允许将Web.config过滤到特定位置,但我没有看到将其限制为某些扩展的方法.

请注意,我不要求能够做到这一点在Web.config:任何可能的手段与Azure的Web应用程序的罚款.

iis web-config azure azure-web-sites

10
推荐指数
1
解决办法
2081
查看次数

单个控制器/操作的MVC身份验证绕过

我正在使用MVC进行表单身份验证,我需要对我的一个控制器进行身份验证旁路,是否可以绕过Cotroller(s)/ Action的身份验证.我已经通过ASP.NET MVC Forms身份验证和未经身份验证的控制器操作,但我不想限制用户/角色的任何操作,我想匿名允许它.

任何人都可以帮助这方面.

asp.net-mvc

8
推荐指数
1
解决办法
1万
查看次数

我想禁用对一个 MVC 控制器操作的身份验证要求

我创建了一个 mvc 应用程序,我不想对应用程序中的一项功能进行身份验证。我希望用户能够在不登录的情况下从 URL 打开页面。现在,如果我输入 URL 直接打开该功能,那么它将带我进入登录页面。我想在一项功能中绕过身份验证过程。我在 web.config 中尝试了以下代码。

<location path="ControllerName">
    <system.web>
        <authorization>
            <allow users="*"/>
        </authorization>
    </system.web>
</location>
Run Code Online (Sandbox Code Playgroud)

我还向控制器的某些操作添加了 [AllowAnonymous] 属性。

以下代码是我在 web.config 中编写的用于身份验证的代码。

<modules runAllManagedModulesForAllRequests="true">
    <remove name="FormsAuthentication"/>

    <add name="FormsAuthentication" type="System.Web.Security.FormsAuthenticationModule"/>

    <remove name="AuthorisationModule"/>

    <add name="AuthorisationModule" type="ProjectName.AuthorisationModule(which is for autentication), Project Name"/>
</modules>
Run Code Online (Sandbox Code Playgroud)

c# asp.net

-8
推荐指数
1
解决办法
4722
查看次数