问题标签 [sqlroleprovider]

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 投票
2 回答
2934 浏览

wcf - SqlRoleProvider:调用 Roles.GetRolesForUser 时出现 NullReferenceException

场景:WCF 服务使用 SqlRoleProvider 对 Sql Server 2012 数据库服务器进行身份验证。WCF 托管在 IIS7 网络服务器上。

请看这个错误:

System.NullReferenceException:对象引用未设置为对象的实例。
在 System.Web.Security.Roles.GetRolesForUser(字符串用户名)

角色管理已启用。

在我的本地开发机器(服务器 2012,iis7)上,这工作正常。当我登录并调用该方法时,将检索角色。

在另一台服务器(测试环境)上它不工作。我可以登录(用户通过用户身份验证并通过 sql server 数据库)但是当我尝试检索该用户的角色时,我得到一个 nullreferenceexception。

这怎么可能,有没有人知道这个问题可能发生在哪里?

此致。

0 投票
0 回答
311 浏览

asp.net - ASP.NET SqlRoleManager CacheRolesInCookie - Cookie 未在 Chrome 中设置

我在 ASP.NET MVC 3 应用程序中使用 SqlRoleManager,效果很好。我最近启用了 cacheRolesInCookie 选项,它显然在 Firefox 和 Internet Explorer 中有效,但在 Chrome 中无效。在 Fiddler 中,我什至没有看到 cookie 与 Chrome 中的响应一起返回。

这是我在 Web.config 中设置的内容:

正如我所提到的,它在 Firefox 和 IE 中运行良好,但不适用于 Chrome。观察 SQL Server Profiler,我可以清楚地看到 Firefox 和 IE 中的第一个请求将访问数据库中的角色,然后将它们缓存到 cookie 过期。Chrome 会为每个请求访问一次数据库。

我还在使用 SqlMembershipProvider 并从 FormsAuthenticationTicket 设置 cookie(手动),没有任何问题;cookie 适用于所有浏览器。

在 Firefox 中,cookie 接近(但小于)4096 字节,并且是 HttpOnly。

如何让角色缓存在 Chrome 的 cookie 中?

0 投票
1 回答
433 浏览

asp.net-mvc - ASP.Net MVC 4 管理角色 - Windows 身份验证

我有一个 MVC 4 Web 应用程序,我想实现SqlRoleProviderWindows Authentication融入其中。
在 Google 中搜索后,我通过在 VS 命令提示符SqlRoleProvider下运行命令在我的数据库中添加了表。aspnet_regsql然后我将此添加到我的web.config

现在我需要知道如何管理角色?我的意思是如何创建/编辑/删除角色以及从角色分配/取消分配用户?
我应该自己创建这些页面还是已经有一些可用的东西NuGet

0 投票
1 回答
1398 浏览

sql - 如何为现有数据库添加角色成员

我想借助以下查询动态地将角色成员添加到我的数据库中:

A38是我的用户名,MyExistingDatabase并希望使用默认模式执行进一步的脚本A38。如果我创建一个新数据库但如果我使用任何现有数据库,则上面的脚本可以正常工作,它会引发以下错误:

用户无权执行此操作

数据库“MyExistingDatabase”中的 CREATE TABLE 权限被拒绝

请建议

0 投票
2 回答
119 浏览

mysql - ASP MySQLRoleProvider 将角色与用户联系起来

我想为 aspnet 使用 mysql 角色提供程序。我已经使用属性 userTableName="user" 为用户设置了一个自定义表。现在的问题是,当我将用户分配给角色时,MYSQLRolesprovider 在表“my_aspnet_usersinroles”和“my_aspnet_users”中创建一个条目。我想指定用于指定角色的表应该是“用户”表。我怎么做?我需要编写自定义角色提供程序吗?有没有我可以调整的设置来建立这种关联?还是我只是错误地使用了整个系统?谢谢

0 投票
2 回答
222 浏览

asp.net-mvc - Roles.CreateRole 插入失败

我正在尝试学习如何在测试 mvc 应用程序中使用 Sql Role Provider。我已经配置了 web.config 文件并正在连接到一个预先存在的 sql server 数据库(这意味着我不是创建它的人)。

此代码在 Roles.CreateRole 上失败Cannot insert the value NULL into column 'RoleId'。根据我的阅读,这个值应该是自动生成的。是这样吗?我需要将 RoleId 更改为 Is Identity,是吗?

0 投票
1 回答
736 浏览

azure - Azure - 找不到存储过程“dbo.aspnet_CheckSchemaVersion”

这个错误很少发生。当它发生时,我从不同的设备访问该网站,然后它会消失一段时间,然后在大约 10 分钟后回来......

错误页面:

找不到存储过程“dbo.aspnet_CheckSchemaVersion”。

说明:执行当前 Web 请求期间发生未处理的异常。请查看堆栈跟踪以获取有关错误及其源自代码的位置的更多信息。

异常详细信息:System.Data.SqlClient.SqlException:找不到存储过程“dbo.aspnet_CheckSchemaVersion”。

源错误:

在执行当前 Web 请求期间生成了未处理的异常。可以使用下面的异常堆栈跟踪来识别有关异常起源和位置的信息。

堆栈跟踪:

控制器:

0 投票
2 回答
1692 浏览

sql-server - 如何在 SQL Server 中管理角色的存储过程权限

我想创建三个 SQL Server 数据库角色。

  1. 可以创建、更改和执行数据库中的所有存储过程
  2. 那只能执行数据库中的所有存储过程
  3. 无权访问数据库中的任何存储过程

我已经创建了角色,但是在撤销他们的权限时遇到了问题。

我已经执行了

撤销创建过程的权限并成功执行。

但是执行此语句时出现错误:

错误:“ALTER”附近的语法不正确。

我对 SQL 服务器角色权限非常陌生,所以我的方法可能完全错误。

请指导我以正确的方式实现我的目标。

谢谢

0 投票
1 回答
36 浏览

sql-server - 数据库角色可以通过它无权访问的存储过程访问表

我创建了一个数据库级角色:NonBillingRole。

然后通过以下命令授予它所有访问权限并撤销/拒绝对帐单表的访问:

然后我为这个角色添加了一个用户。

如果我直接尝试选择或修改表 TblBilling,这可以正常工作。但是用户可以通过任何存储过程来选择和修改表。

我的目标是创建一个角色,该角色具有对数据库的所有访问权限,包括执行存储过程,但对表 TblBilling 没有直接或间接访问权限(即使通过存储过程)。