在 ASP.NET 中使用授权,图像在页面上不可见

发布于 2024-07-30 17:10:43 字数 443 浏览 2 评论 0原文

我已经使用下面提到的代码实现了表单身份验证。 我的登录 URL 是“Login.aspx”。 通过这些设置,我的网站图像不会加载到 login.aspx 上。 但是,如果我评论 authorization 部分,则会显示图像。

<authentication mode="Forms">
    <forms name="TBHFORMAUTH" defaultUrl="~/User/Default.aspx" loginUrl ="~/Login.aspx" cookieless="AutoDetect" />
</authentication>

<authorization>
    <deny users="?" />
</authorization>

为什么会有这种行为?

I have implemented forms authentication using the below mentioned code. My login URL is "Login.aspx". With these settings my site images do not get loaded on login.aspx.
However if I comment the authorization section the images are displayed.

<authentication mode="Forms">
    <forms name="TBHFORMAUTH" defaultUrl="~/User/Default.aspx" loginUrl ="~/Login.aspx" cookieless="AutoDetect" />
</authentication>

<authorization>
    <deny users="?" />
</authorization>

Why this behaviour?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

硪扪都還晓 2024-08-06 17:10:43

您可以将单独的 Web.config 文件添加到不需要用户控制的 Images 文件夹中。 Web.config 文件应仅包含以下内容以授予完全访问权限:

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

另一种方法是,如果受用户控制限制的所有页面都位于子文件夹(即“用户”)中,则您可以在主 Web.config 中授予完全访问权限。 并在 Users 文件夹中有一个单独的 Web.config,其中包含:

<?xml version="1.0" encoding="UTF-8" ?>
<configuration>
    <system.web>
            <authorization>
               <deny users="?" />
            </authorization>
    </system.web>
</configuration>

You can add a separate Web.config file to the Images folder that does not need user control. The Web.config file should only contain the following to give full access:

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

Another approach is if all pages that are limited by usercontrol are located in a sub folder (i.e. Users), then you can give full access in the main Web.config. and have a separate Web.config in the Users folder containing:

<?xml version="1.0" encoding="UTF-8" ?>
<configuration>
    <system.web>
            <authorization>
               <deny users="?" />
            </authorization>
    </system.web>
</configuration>
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文