前提:forms验证角色.
a.aspx:普通用户角色许可页面
b.aspx:管理员角色许可页面
一普通用户登陆到a.aspx,而a.aspx里面有个连接进入b.aspx,如果此用户点了这个连接想进入
b.aspx,
但是因为这个用户不是管理员角色,所以系统就会把他导向到login.aspx
我希望的在导向到login.aspx的前面弹出个信息框啊,说明他所在的用户组没有这个权限要他
先登陆,或者弹出信息框后不导向到login.aspx,而是直接history.back();
不知道可以实现么?
应该怎么样实现
恳请高人能够指点下!!

刚刚就这个问题和快乐,tp,jyk,yiyanxiyin,那个头。。。。等朋友在群里讨论,他们提出这样解决,在web.config里面把loginUrl设置成一个中间页面c.htm,里面就只有弹出信息窗口的脚本和导向到login.aspx的脚本,这个方法很好,但是我想有点麻烦而且不个性化,因为这样无论用户是不是登陆了都会这样,不好,吃饭的时候我想了下,得到另外种解决办法,如下:
首先修改web.config:
<location path="admins">
<system.web>
<authorization>
<!-- Order and case are important below -->

<deny users="?"/>
</authorization>
</system.web>
</location>
他的意思是在admins下面的文件拒绝匿名用户访问,也就是说你只要是个登陆了的用户都可以访问,不管你是什么角色都可以,这样的话我们就可以在b.aspx的page-load里面来判断角色进行操作了
为什么以前不能够这样呢?因为我以前的web.config代码这样:
<location path="admins">
<system.web>
<authorization>
<!-- Order and case are important below -->
<allow roles="Administrator"/>
<deny users="*"/>
</authorization>
</system.web>
</location>
他的意思是只有Administrator角色才能够访问admins目录下的文件,于是其他的用户角色一访问这里的页面他首先根本就不会执行b页面里的page_load事件而是直接跑大login.aspx里面去拉
下面再写adminis目录下的b.aspx里面的代码如下,是后台文件代码
private void Page_Load(object sender, System.EventArgs e)
  {
   // 在此处放置用户代码以初始化页面
   if(!IsPostBack)
   {
    if(!HttpContext.Current.User.IsInRole("Administrator"))
    {
     //Response.End();
       //Page.RegisterStartupScript("","<script>alert('你没有这个权限!');history.back();</script>");
        Response.Write("<script>alert('美女,你没有这个权限啊!');history.back();</script>");
     Response.End();
     
                  
    }
   }
   
  }
呵呵,这样的话在b里面判断他的角色身份再确定做什么事,这样就很方便而且很个性化拉!

转载于:https://www.cnblogs.com/pwqzc/archive/2005/08/31/226850.html

forms角色验证,以普通用户身份登陆管理页面先弹出警告信息窗口相关推荐

  1. 微信授权登陆界面无法再次弹出,无法用户切换

    微信授权登陆界面无法再次弹出,无法用户切换 一开始在项目中总是发现微信登录只在第一次给用户授权,后面微信登录后就不显示授权登录的界面.这样就导致微信用户无法切换,无法进行新用户的授权.查了很久才找到解 ...

  2. ssh登陆失败,客户端吐出错误信息,是bash的锅?

    前段时间业务反映某类服务器上更新了 bash 之后,ssh 连上去偶发登陆失败,客户端吐出错误信息如下所示: 图 - 0 该版本 bash 为部门这边所定制,但是实现上与原生版并没有不同,那么这些错误 ...

  3. 组策略 计算机 用户账户控制,Win10系统总是弹出用户账户控制提示是否允许程序修改计算机的解决方法...

    Win10系统总是弹出用户账户控制提示"是否允许程序修改计算机"的解决方法 不少使用Win10系统的用户都会遇到这样一个问题:当我们打开程序时,系统总会弹出"你要允许以下 ...

  4. spring security实现登录验证以及根据用户身份跳转不同页面

    想关依赖,采用session加redis存储用户信息 <dependency><groupId>org.springframework.security</groupId ...

  5. WebForm登陆验证,判断用户是否登陆 PageBase类

    很多时候,WebFrom页面,我们需要判断用户是否已经登陆了.假如有很多页面,难道我们要在每个页面都要做一次判断吗? 答案是否定的. (除了这个例子外,我们还可以在Global.asax 或者Htpp ...

  6. 解决登陆界面软键盘弹出遮住登陆按钮

    android:windowSoftInputMode属性一共同拥有9个取值.各自是: stateUnspecified: 当设置属性为stateUnspecified的时候,系统是默认不弹出软键盘的 ...

  7. win8 必须重新启动计算机才能关闭用户账户控制,win8系统禁止弹出用户账户控制窗口的方法...

    有不少用户在运行一些软件程序的时候,发现Windows总是会自动弹出用户账户控制窗口,虽然可以有效防止有害程序更改计算机设置,但是对于一些可信任的程序来说就多余了,那么要 1.在运行程序时,当弹出&q ...

  8. 登陆后台时,弹出Cann't connect to DB!

    烈火网(LieHuo.Net)教程 用帝国CMS建的网站,最近经常出现 Cann't connect to DB! 不定时的出现 Cann't connect to DB! mysql重新安装了也不管 ...

  9. vue如何在用户要关闭当前网页时弹出提示

    https://blog.csdn.net/qq_39517820/article/details/83446877 转载于:https://www.cnblogs.com/taochengyong/ ...

最新文章

  1. 你曾经是那手握烙铁的少年
  2. 【Spring reference】@ResponseBody注解
  3. Flask框架(flask中的数据库SQLAlchemy(python3),配置、模型类、创建表)
  4. 写出一手烂代码的 19 条准则!
  5. 【特征提取】基于matlab基音周期估计【含Matlab源码 551期】
  6. 离散分布——泊松分布、指数分布
  7. [排序算法] 13. 常见排序算法总结及运用高精度计时模板测试性能(复杂度分析、高精度计时、总结)
  8. Micro Surface Pro 鼠标一直闪烁的问题
  9. 关于JavaScript中 “Uncaught TypeError: date.getDay is not a function“的问题
  10. Android 听筒扬声器切换 并且监听音量变化
  11. 【字节跳动】2019后端笔试题
  12. 毒品犯罪论文的英文文献去哪找?
  13. 【T+】畅捷通T+登录的时候,提示仅支持以手机号或邮箱登录。
  14. <12>springboot集成thymeleaf模板引擎
  15. windows驱动开发环境搭建以及helloworld
  16. layim使用中添加自定义事件与显示样式
  17. 森林门前的小路用计算机弹奏歌曲,森林外的小路看花香漫步什么歌
  18. 『网络协议攻防实验』ARP欺骗与中间人攻击
  19. iOS该怎样提高自己能力(程序员必看)
  20. RT-Thread 应用篇 — 在STM32L051上使用 RT-Thread (一、无线温湿度传感器 之 新建项目)

热门文章

  1. 事态升级是什么意思_农村老俗话说“男吵官司女吵穷”是什么意思呢,有没有道理?...
  2. 怎么卡我的世界服务器物品,我的世界怎么卡服务器物品 | 手游网游页游攻略大全...
  3. 用计算机绘图软件绘制的工程图是图形,用AutoCAD快速绘制机械工程图实用的经验.doc...
  4. linux cat 重定向,Linux命令(cp mv cat和重定向)(示例代码)
  5. TORCHVISION MODELS
  6. python threading.lock
  7. Scala match
  8. Java JDBC Druid
  9. echarts pie
  10. socket通信基础知识