在使用ASP.NET2.0的身份验证和授权时,有时候我们需要提供比页面更高一级的安全功能。传统的我们使用web.config里的deny或者allow来控制用户对某一个页面的访问,但是如果您使用 username为administrator password为aspx-net.com 登陆 http://www.aspx-net.com/ 您会发现随着您权限的不同,你可以对页面的全部或者局部进行更改,天天称呼这种安全为“页面的安全”,利用ASP.NET2.0很容易实现这个功能 这主要分为两步: 1)在后台代码定义一个bool类型的变量 bool IsAdmin=false; 然后在代码里,例如在用户登陆的Click事件里判断用户的身份: IsAdmin = User.IsInRole("Administrators"); 这段代码很简单,它会获取用户的角色,如果属于Administrators角色,则IsAdmin返回true,否则返回false。 2)在页面里利用IsAdmin控制控件的可见性 示意代码如下: <asp:Button ID="btnDelete" Text="删除" runat="server" Visible='<%#IsAdmin %>'> 在这段代码,如果如果用户属于Administrators角色,则IsAdmin返回true,这样“管理员”就可以看见“删除”,否则返回false就表示当前用户无法删除次纪录。 希望这个小技巧对大家有用 |