|
|
1
5
看看 Security Catalog Views 然后看看丹尼先生的答案 here 它提供一个查询来列出用户的权限。我在这里复制(整理到我喜欢的程度)。
|
|
|
2
3
实际上情况有点棘手。有效权限是内部数据库权限的组合(可查询,如上面Doza所示的Denny的查询) 和 Windows组成员身份。不幸的是,它存储在SQL之外的AD模式中,所以您不能真正地查询它。 因此,如果您的目标是显示“向域\someuser和域\somegroup授予对表x的访问权限,并拒绝向域\someothergroup授予访问权限”,那么您可以使用目录元数据并进行查询,如Doza的文章所示。 但是,如果您的目标是回答“用户域\某人有权访问表X吗?”您无法从上面的查询中获得答案。没错,尽管你看到一条记录说域\someuser被授予访问权,你 不能 回答是否有效访问。记住,单个拒绝胜过所有授予,如果域\用户是域\其他组的成员,则域\其他用户有效 否认 访问。 要回答后面的问题,必须使用不同的机制,即必须在SQL级别模拟用户并通过 HAS_PERM_BY_NAME :
值得注意的是,第一个问题可以由对安全目录具有查看权限的任何人回答,而后面的问题则需要模拟权限,这是一个更强大的权限。 |
|
|
Farid · 限制django每个客户的访问 3 年前 |
|
RainingChain · 以私有类为参数的公共函数 9 年前 |
|
|
Jake · Perl的文件测试操作符的C等价物是什么? 11 年前 |