在我的应用程序中,特权用户可以添加/删除/更新用户角色(同时还可以将它们分配给特定用户)。以下摘录显示了我的web.config文件中的一条规则,该规则只允许管理员使用用户阻止功能:
<location path="block-user.aspx">
<system.web>
<authorization>
<allow users="Administrator"/>
</authorization>
</system.web>
</location>
如果我想动态添加或删除默认角色之外的其他角色,该怎么办?这可以通过代码隐藏来实现吗?
如果您想将某些页面限制为某些角色,可以在Page_Load函数中执行此操作;
protected void Page_Load(object sender, EventArgs e)
{
if(!User.IsInRole(allowedrole))
{
Response.Redirect("block-user.aspx");
}
else
{
//do stuff
}
}