问题标签 [role-manager]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
3 回答
2570 浏览

asp.net - RoleManager 和 SimpleMembershipProvider 不能与 AuthorizeAttribute 一起使用

我有一个 Asp.Net MVC 5 应用程序。我想使用用户角色仅授权某些人使用特定操作。我已经Web.config像这样更改了我的文件:

这就是我将用户添加到角色的方式:

目前,我可以使用以下代码通过代码访问用户的角色:

但是,当我尝试使用该Authorize属性访问角色时,页面会卡住并且没有加载任何内容。

我在这里做错了什么?

更新:

一段时间后,网页将显示此错误:

Asp.Net 错误页面

0 投票
0 回答
251 浏览

asp.net-mvc-4 - visual studio express 2013 rolemanager 没有关闭

我已经从 Visual Web Developer 2010 切换到 Visual Studio 2013 for Web,除了 RoleManager 不想关闭之外,一切正常。我不知道它是否是我正在使用的 LocalDB 连接字符串,但这个问题不想停止,这是我收到的错误图片 在此处输入图像描述

这是我的 web.config

那就是我的 web.config 请注意,这些是关键属性..

这是我第一次使用 LocalDB,所以我不能 100% 确定连接字符串是否错误,数据库是 app_data 文件夹中的本地数据库,并且角色管理器代码与 VS 2010 中的相同,任何关闭的建议角色经理?

0 投票
1 回答
441 浏览

c# - 如何在 .Net Role Provider 中设置角色类型文本?

在我的UserController.Login操作中,我尝试使用用户实体的导航属性AddUserToRole()之一的值来获取经过身份验证的用户:MembershipType.MembershipName

我没有使用臃肿的自动生成的成员资格类型,只是想将文本值添加到用户的角色 - 而不是一系列角色。用户 --> 一个角色。

为了解决这个问题,我在 web.config 中定义了一个自定义角色提供程序:

所以调用 Roles.AddUserToRole() 会调用我的自定义提供程序中的方法,但我不确定在该方法中要做什么。

之前我只是添加enabled="true"rolemanagerweb.config 中的部分,但收到以下错误:

找不到请求的 .Net Framework 数据提供程序。它可能没有安装。

这是我的自定义角色提供程序(虽然我不知道为什么需要它,因为我只想添加角色名称):

我认为这应该很容易完成 - 只需设置用户的角色名称......感谢您的帮助。

- 更新 -

我把自定义方法的内容注释掉了AddUserToRole(),用户就可以登录了。但是,在调用操作方法时,没有执行角色检查 - 即。应该失败,因为角色名称实际上并不存在:

我还注意到IsInRole()调用了在其中执行 db 调用的自定义GetRolesForUser()方法。不完全是最佳的,想知道这是否真的应该是这样的?

- 更新 -

我的错误是认为我需要使用Roles.AddUserToRole() (除非有人另有评论)。

我还在web.configcacheRolesInCookie的定义中添加了参数:roleManager

所以现在当我打电话时 if(User.IsInRole("WaitConfirmation")),我的自定义GetRolesForUser(string username)被调用了。

现在的问题是这些Authorization属性都不起作用。建议?

0 投票
2 回答
5780 浏览

c# - MVC5 中的授权/角色

我在 MVC5 (VS2013) 中使用授权/角色时遇到问题。

身份验证几乎是开箱即用的(也就是说,只需使用 Visual Studio 创建默认的 MVC 项目)。我将DefaultConnection连接字符串更改为有效(但不存在)的数据库。然后我注册一个新用户并自动创建数据库,其中包含 和 之类的AspNetUsersAspNetRoles

但是,我似乎对角色无能为力。首先要做的似乎是使用 C# 代码添加一个角色,例如:

我收到一条消息异常:

“角色管理器功能尚未启用。”

我在 web.config 中启用它:

现在得到异常:

'无法连接到 SQL Server 数据库。'

这过去很容易与. 一起使用System.Web.Security.SqlRoleProvider,但不适用于 MVC5 默认提供的新提供程序。关于这方面有很多非常复杂的文章,但在我看来,它是如此重要和直接,以至于必须有一种简单的方法让它发挥作用。

非常感谢您的帮助。

0 投票
1 回答
741 浏览

ios - 通过 REST API 的客户端服务器通信

我在应用程序中工作,将 iOS 本机应用程序作为前端,将 c# .net 作为后端。目前我正在使用 WCF REST API 进行 iOS 客户端和服务器之间的任何通信。在我的应用程序中有两种类型的用户“管理员”和“简单用户”。应用程序有一些功能应该只为管理员用户和“简单用户”启用。我只需要帮助来创建应用程序结构,这样我就可以根据最终用户角色轻松维护功能。此外,功能是动态的,将来会添加新功能。


0 投票
2 回答
3852 浏览

asp.net-mvc-4 - web.config 中没有 roleManager 标签

我正在使用带有 MVC4 的 Asp.Net。

这是我的Seed方法:

这是我的 web.config:

但是没有roleManager标签,当我运行update-database命令时它说

角色管理器功能尚未启用

有人可以告诉我我必须做什么吗?

0 投票
1 回答
1074 浏览

c# - 角色管理器功能尚未使用部分视图启用

我目前正在尝试通过读取用户当前登录的角色来执行动态 _Layout,并且我经常遇到此错误。附加信息:角色管理器功能尚未启用。我知道这是因为角色管理器未启用,我已经尝试了类似主题中给出的解决方案,但它们似乎对我不起作用(或者我只是把它们弄乱了)。如果有人可以帮助我,我将不胜感激。

这是我的引发异常的代码:

http://pastebin.com/3FnrSxCy 我像这样使用它:

这是我的 web.config 文件: http: //pastebin.com/zSH6hMnZ

0 投票
1 回答
346 浏览

asp.net-mvc - Generate admin pages for MVC SqlRoleManager

I want to add admin MVC pages for maintaining users and roles for users for the SqlRoleManager. Is there a template or generator available or do I need to build it from scratch?

0 投票
1 回答
154 浏览

asp.net-mvc - 新的 Asp.net Identity MVC 5 ,我的旧 asp.net mvc 4 代码还能用吗

我在 asp.net mvc 4 中创建了一个用于管理角色和用户的完整模块,例如以下操作方法将创建一个新角色:-

现在我计划升级我的项目以使用 asp.net MVC 5,并且我将致力于一个新的 asp.net mvc5 web 项目。我检查了 asp.net mvc 5 中使用的新成员资格类,它似乎使用了新的RoleManager. 那么这是否意味着我用于管理角色的旧代码将不再适用于 asp.net mvc 5,因为它使用了新的成员资格模块?谢谢

0 投票
1 回答
410 浏览

c# - 使用 Web.config 位置元素替代 Roles.IsUserInRole("rolename")

让我首先说我所拥有的东西 - 我只是不喜欢它。

我有一个用于导航栏的 web.sitemap。每个人都可以访问一些节点,其中一些节点分配了角色(这样节点就不会显示给无法访问它的用户)。

IE<siteMapNode url="~/adminpage.aspx" title="admin" roles="domain\Administrators"/>

然后,在我的 web.config 中,我有如下位置元素:

除此之外,某些页面还具有基于角色显示或隐藏的超链接,如下所示:

所有这些工作都很好 - 但是......这似乎有点荒谬。有什么方法可以利用站点地图和 Roles.IsUserInRole 在我的 Web.config 中建立的权限?基本上,我试图防止在 435234 个不同的地方拥有相同的权限描述。

我尝试使用 Casses 解决方案在站点地图文件中添加嵌入代码,该代码将使用 Web 配置中的设置——但这不起作用(因为您不能将嵌入代码放入站点地图文件中)。