管理用户对 ASP.NET 中页面的访问

2024-03-26

我正在使用 MembershipProvider,目前有 3 个角色: 用户、超级用户、管理员。

另外,我还有只有管理员和超级用户才能看到的页面。 对于这些页面,我使用 Web 配置中的配置:

  <location path="Users.aspx">
    <system.web>
      <authorization>
        <allow roles="Admin, Super User"/>
        <deny users="*" />
      </authorization>
    </system.web>
  </location>

这工作得很好。

但我有一堆页面

Evaluations
Actions
Reports
Files

我想要单独访问。我想单独授予对每个页面的访问权限。

有没有比为每个页面创建角色并分配给这些角色更好的方法?

附: 我使用的是 ASP.NET,而不是 MVC


是的,将您的文件夹结构修改为如下所示:

- Super User
  - Admin
    - All

然后你可以做这样的事情:

<location path="Super User">
  <system.web>
    <authorization>
      <allow roles="Super User"/>
      <deny users="*" />
    </authorization>
  </system.web>
</location>

<location path="Super User/Admin">
  <system.web>
    <authorization>
      <allow roles="Admin"/>
      <deny users="*" />
    </authorization>
  </system.web>
</location>

<location path="Super User/Admin/All">
  <system.web>
    <authorization>
      <allow users="*" />
    </authorization>
  </system.web>
</location>

现在只需将页面放入适当的文件夹中即可。根据MSDN 文档 http://msdn.microsoft.com/en-us/library/b6x6shw7%28v=vs.100%29.aspxlocation 元素适用于所有子目录:

指定所包含的配置设置适用的资源。使用缺少路径属性的 location 将配置设置应用于当前目录和所有子目录。如果使用的 location 不带路径属性且 allowedOverride 为 False,则子目录中的 Web.config 文件无法更改配置设置。

so Super User根据定义,将有权访问下面的所有其他页面,依此类推。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

管理用户对 ASP.NET 中页面的访问 的相关文章

  • VS2012 中的实体框架问题 - 重命名属性不粘

    我试图在 VS2012 中创建一个新项目 其中包含管理 MVC4 项目 网站 MVC4 项目和通用实体框架 dll 项目 我使用了现有的数据库并从中生成了我的实体 我更新了一些关系属性的名称并保存 然后 我将对实体框架项目的引用添加到我的两
  • 如何将除 Web API 之外的所有内容路由到 /index.html

    我一直在研究一个AngularJS项目 在 ASP NET MVC 内部使用 Web API 除非您尝试直接访问有角度的路由 URL 或刷新页面 否则它效果很好 我认为这将是我可以处理的事情 而不是胡闹服务器配置MVC的路由引擎 当前的We
  • ASP.NET 中继器错误:找不到类型 xx 的默认成员

    这是我的 aspx 页面中的中继器控件
  • 如何在 Asp.Net Core 6 中向类型化 HttpClient 添加承载令牌身份验证

    我正在尝试使用 ASP Net Core 6 设置一个 Web api 以便用户可以到达我的端点 然后我使用特权帐户在幕后的 D365 中执行一些工作 我正在使用类型化的 HTTP 客户端 但我不确定如何插入承载身份验证 以便来自该客户端的
  • 集成 Windows 身份验证可以在 Firefox 中使用吗?

    如果我的 ASP NET 应用程序是使用 Windows 集成身份验证为 ADFS 设置的 我知道这可以在 IE 中工作 但是它可以在 Firefox 中工作吗 我在网络上看到一些内容表明存在问题 您需要在每个客户端浏览器中设置解决方法 h
  • 如何将jarray对象添加到JObject中

    如何添加JArray into JObject 我在更改时遇到异常jarrayObj into JObject parameterNames Test1 Test2 Test3 JArray jarrayObj new JArray for
  • 果园:自定义注册字段

    对于我的 Orchard 项目 我需要用户在注册时提供一些附加信息 说 名字 姓氏 裤子颜色 此信息必须在注册时输入 并且不能推迟到以后 根据客户的订单 我尝试使用配置文件和扩展注册插件来请求这些 但据我所知 这只为我提供了在注册表中显示的
  • 如何根据当前日期时间发现财政年度?

    我需要基于当前或今天的日期时间的财政年度 假设我们认为今天的日期是10 April 2011 那么我需要输出为Financial Year 2012在某些情况下 我需要以短格式显示相同的输出FY12 我想以两种方式显示 在我们的要求中 考虑
  • 由 UpdatePanel 内的 GridView 内的 LinkBut​​ton 触发的完整回发

    我在 UpdatePanel 中有一个 GridView 模板字段中有一个用于标记项目的按钮 从功能上讲 这工作得很好 但该按钮总是触发整页回发而不是部分回发 如何获得触发部分回发的按钮
  • 如何保持长时间运行的NHibernate Session数据一致?

    我在 ASP NET 会话中缓存了 NHibernate 会话 我遇到过一种情况 用户编辑了一个对象 因此它位于 ISession 的第一级缓存中 然后另一个用户编辑了同一个对象 此时 用户 1 仍然可以看到其编辑的原始版本 而用户 2 可
  • 使用 3.5 或 4.0 等旧版 .net 学习 C#.net、asp.net 的主要概念或基本概念是否重要? [关闭]

    Closed 这个问题是基于意见的 help closed questions 目前不接受答案 请向我建议是否需要学习c net和asp net的主要概念或基本概念 我需要与使用旧版本 net框架3 5或4 0的公司合作 在工作时我可以学习
  • MVC3 和实体框架

    我的问题很简单 将 edmxMVC3 项目的 Web 应用程序的模型文件夹中的文件吗 我的答案非常简单 不要用数据访问逻辑和数据建模搞乱表示层 整个 MVC 应用程序 Visual Studio 解决方案中从下到上至少有 4 个项目 1 P
  • 如何使用 JavaScript 上传文件而不进行回发?

    我正在 ASP NET 中进行文件上传 我用了
  • 如何在任何给定时刻找到我的网站 (IIS 7/asp.net) 的访问者/用户数量?

    我需要显示有多少用户正在浏览我的网站 该网站运行在iis7上 我们使用的是asp net 3 5 活跃会话的数量是一个好的方法吗 该数字不需要非常准确 不需要历史记录 我只想知道现在有多少用户 在线 并将其显示在页面本身上 您可以为此使用
  • 响应.WriteFile

    有一个具有特定语法的 URL 用于下载文件 用户在文本框中输入文件名并按下下载按钮 在单击事件中 将调用 Response WriteFile 将文件发送到客户端 现在我想创建另一个带有页面的网站 用户在其中输入文件名并按下载按钮来下载该文
  • 禁用 ASPNET 身份 2.0 中的用户

    我正在寻找一种方法来禁用用户而不是从系统中删除它们 这是为了保持相关数据的数据完整性 但似乎 ASPNET 身份只提供删除帐户 有一个新的锁定功能 但似乎可以控制锁定以禁用用户 但只有在尝试了一定次数的错误密码后才将用户锁定 还有其他选择吗
  • 文本框验证(无空格)

    我有一个网页 其中有一个文本框 我的要求是我不想在文本框中留出空间 如果用户在文本框中留出空间 它会指示文本框中没有空格 如果您打算捕获空格不是有效字符的值 您可以使用正则表达式验证器 http msdn microsoft com en
  • 如何强制 BundleCollection 刷新 MVC4 中缓存的脚本包

    or 我如何学会停止担忧 只针对 Microsoft 完全未记录的 API 编写代码 有没有官方的实际文档System Web Optimization发布 因为我确实找不到任何内容 没有 XML 文档 而且所有博客文章都引用了 RC AP
  • 在 ASP.NET Core 中,有没有办法从 Program.cs 设置中间件?

    我正在为 ASP NET Core 网站构建一个支持库 我有一些需要启用的中间件 并且由于它们的作用 需要在任何其他中间件之前添加它们 我可以在 IWebHostBuilder 上创建一个扩展方法来添加服务 同样用于配置日志记录 但我没有看
  • ASP.Net:动态添加到占位符的用户控件无法检索值

    我将一些用户控件动态添加到 PlaceHolder 服务器控件中 我的用户控件由一些标签和一些文本框控件组成 当我提交表单并尝试查看服务器上文本框 在每个用户控件内 的内容时 它们是空的 回发完成后 文本框将包含我在回发之前输入的数据 这告

随机推荐

  • 根实体中的 GAE 事务

    我是 GAE 新手 对数据存储事务有一些疑问 例如 我有一个用户实体 当用户在 Facebook 上添加我的应用程序时创建该实体 我通过 Facebook API 获得了一些属性 但我想为用户添加用户名 并且该用户名必须是唯一的 所以在事务
  • 如何获取prometheus中(当前)建立的TCP连接数(kubernetes监控)

    我在 Linux 中使用此命令来查看 当前 建立的 TCP 连接 netstat ant grep ESTABLISHED wc l 我如何将此命令转换为 PromQL 每个节点 我在 kubernetes 集群中使用带有节点导出器的 pr
  • 如何使用 R 个性化时间线?

    我想用 R 绘制一个时间线 其中的时间段很容易识别 我可以在其中个性化可视化 periods 周期 盒子 的颜色 线条 颜色 位置 文本的位置并将其放入 框 中 轴 大小 颜色 选择重点 与事件相关的日期 etc 我使用时间线库 但是我找不
  • 如何触发Uploadify onError 事件处理程序?

    我在用上传 http www uploadify com 上传文件 问题是 我需要通知用户处理这些文件期间出现的任何错误 上传有onError onComplete and onAllComplete事件处理程序 但我不知道如何触发这些事件
  • Owin WS-Federation 设置令牌滑动过期

    有人可以解释如何使用新的实现滑动过期吗欧文WS 联合会 plugin 在客户端 在 WS Federation配置我看到有一些events like Notifications new WsFederationAuthenticationN
  • 在触摸屏上禁用文本输入上的 Chrome 粘贴菜单

    如何在触摸屏上禁用 Chrome 中这个烦人的上下文菜单 当我复制了一些文本时 在选择 长按任何输入时会弹出此窗口 我正在使用 CEFSharp Chromium 嵌入式框架 开发一个应用程序 并将其部署在 Windows 8 计算机的触摸
  • C# 中枚举对象的属性(字符串)

    假设我有很多对象 并且它们有很多字符串属性 是否有一种编程方式来遍历它们并输出属性名称及其值 或者是否必须进行硬编码 是否有一种 LINQ 方法来查询 字符串 类型的对象属性并输出它们 您是否必须对要回显的属性名称进行硬编码 使用反射 它远
  • 在 R 程序中排序后对行重新编号

    我已经订购了一组行来得到这个 2 1983 TRI COUNTY TRAUTH 0 1495 0 1395 NA 452 0 0764 4 0 06 02 83 4 1983 TRI COUNTY TRAUTH 0 1193 0 1113
  • 具有行为和 ORM 的丰富域模型

    观看 Jimmy Bogard 的 NDC12 演示 Crafting Wicked Domain Models 后 http ndcoslo oktaset com Agenda http ndcoslo oktaset com Agen
  • 一个类似于 StringIO 的类,它扩展了 django.core.files.File

    class MyModel models Model image models FileField upload to blagh blagh more spam 我内存中有一个文件 我想通过 Django FileField save 方
  • VSTS - 应用程序中心 - Yaml - 找不到端点

    我正在尝试使用 yaml 设置我的构建定义 我正在使用AppCenter分发任务 https github com Microsoft vsts tasks tree master Tasks AppCenterDistribute 它需要
  • typeorm - 如何向“多对多”表添加额外字段?

    例如 3 tables user user business lines business line business line 那些创建者typeorm与声明User ManyToMany type gt BusinessLine Joi
  • Firebase 仅部署函数流程

    如果我有两个 Firebase 函数 fire1 and fire2 共享一个辅助函数 doSum 将部署firebase deploy only functions fire1改变环境fire2 不 每个功能彼此完全独立 每个已部署的函数
  • 如何使用 grpc 修复 python 中的“类型错误:不允许位置参数”

    我正在使用 Ubuntu 18 04 3 LTS x64 在 python 中使用 grpc 设置微服务 我尝试改变分配参数的方式 从我的 protoc 文件重新生成代码 客户代码 class Cliente def IniciarClie
  • ie6中缺少div高度的解决办法

    我正在使用一个空 div 通过设置来显示一行高度 3 像素 它在所有浏览器中都能正常工作 但在ie6显示的高度 div20 像素高度 即使对于 height 0px 它也保持不变 但其他属性的变化反映但不反映高度 并且没有重复的 CSS 条
  • 总结树上的值

    我使用树控件来查看一些基于嵌套 父子 表的分层项目 每个节点都有一个 NameValue 格式 接受 name 和 value 但只有叶子 最后一个节点 具有整数值 并且父节点的值保留为空 仅是它们具有的名称 我想总结值 以便每个父节点都保
  • 获取 PostgreSQL 中一个月前的时间戳

    我有一个 PostgreSQL 数据库 其中一个表快速增长得非常大 大约每月几百万行 因此我想定期将该表的内容存档到一个单独的表中 我打算使用 cron 作业每晚执行 sql 文件 将超 过一个月的所有行存档到另一个表中 我的查询工作正常
  • 如何使用 iOS WKWebView 注入 JavaScript 回调来检测 onclick 事件?

    我正在使用一个WKWebView显示一个包含三个按钮的 HTML 的网站 我想在单击特定按钮时在本机应用程序中运行一些 Swift 代码 关于 HTML 这三个按钮如下所示
  • 如何使用node.js从蓝牙设备接收数据

    我是 javascript 和 node js 的新手 目前从事医疗项目 首先我将解释我的工作 我必须从蓝牙设备接收数据 正常血压率 脉搏率 并使用 node js 在 Web 应用程序中显示读数 我不知道如何从蓝牙设备 病人监护仪 接收数
  • 管理用户对 ASP.NET 中页面的访问

    我正在使用 MembershipProvider 目前有 3 个角色 用户 超级用户 管理员 另外 我还有只有管理员和超级用户才能看到的页面 对于这些页面 我使用 Web 配置中的配置