如何在 Asp.NET 表单身份验证重定向中显示消息?

发布于 2024-08-23 20:51:43 字数 283 浏览 6 评论 0原文

我有一个使用表单身份验证的 Web 应用程序,并且我限制了一个文件夹,以便只有具有管理员角色的人员才能访问它。我通过 web.config 文件控制所有这些,并添加适当的位置标签来限制访问。

目前该应用程序运行良好。如果我以用户身份登录并单击管理部分的链接,我将再次重定向到登录页面。如果我查看 URL,则 ReturnUrl 参数设置正确。

我想要做的是向用户显示一条消息,指示安全权限不足,或者类似的效果,这样用户就不会认为他们过早地退出应用程序或应用程序无法正常工作。

有人知道有办法做到这一点吗?

I have a web app using forms authentication and I have restricted a folder so that only those with an administrator role can access it. I am controlling all of this through the web.config file and adding the proper location tags to restrict access.

Currently the application is working fine. If I am logged in as a user and click the link to the administration section, I'm redirected to the login page once again. If I look at the URL, the ReturnUrl parameter is set properly.

What I'd like to do is to display a message to the user indicating insufficient security privileges, or something to that effect so the user doesn't think they are getting logged out of the application prematurely or that the application isn't working.

Does anybody know of a way to do this?

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

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

发布评论

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

评论(1

流年已逝 2024-08-30 20:51:43

您可以重定向到显示警报框的页面,然后该页面(在客户端上)重定向到您想要访问的页面。


我没有提供示例代码,因为我现在没有时间来完成它。这是错误的代码:

if (FormsAuthentication.Authenticate(userName, passWord))
{
    Response.Redirect("alertPage.html?ReturnUrl=" + Request.QueryString["ReturnUrl"]);
}

在alertPage.html上:

<script language="javascript">
    alert('Some message');
    window.navigator.location = // get the URL and use it
</script>

You can redirect to a page that displays an alert box, and which then (on the client) redirects to the page you want to be at.


I gave no sample code because I don't have time now to get it right. Here's the wrong code:

if (FormsAuthentication.Authenticate(userName, passWord))
{
    Response.Redirect("alertPage.html?ReturnUrl=" + Request.QueryString["ReturnUrl"]);
}

on alertPage.html:

<script language="javascript">
    alert('Some message');
    window.navigator.location = // get the URL and use it
</script>
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文