在 JSOM 或 CSOM 中是否等同于此 Rest 调用?
Equivalent to this Rest call, in JSOM or CSOM?
/_api/web/RoleAssignments?$expand=Member,Member/Users,RoleDefinitionBindings
这行代码为您提供所有 "members" 以及用户。
我似乎在 csom 代码中找不到任何类似的东西,roledefinitionbinding:s 成员似乎没有 "users"?。我错过了什么吗?还是我需要从站点组获取用户。
角色定义本质上是权限级别。
如果您想查看哪些用户和组已被分配 特定权限级别,您应该查看对象的角色分配集合。具体来说,角色分配的成员 属性 表示用户或组。
下面是使用 JavaScript 访问角色分配集合成员的示例:
var clientContext = new SP.ClientContext();
var roleAssignments = clientContext.get_web().get_roleAssignments();
clientContext.load(roleAssignments,"Include(Member)");
clientContext.executeQueryAsync(Function.createDelegate(this,
function(){
var roleAssignment, member, members = [],
roleEnumerator = roleAssignments.getEnumerator();
while(roleEnumerator.moveNext()){
roleAssignment = roleEnumerator.get_current();
member = roleAssignment.get_member();
members.push({
type:SP.Utilities.PrincipalType.toString(member.get_principalType()),
login:member.get_loginName(),
id:member.get_id(),
name:member.get_title()
});
}
alert(JSON.stringify(members));
}),Function.createDelegate(this,
function(sender,args){
alert(args.get_message());
})
);
获得 ID 后,您可以深入“网站群组”集合以查看特定群组的成员。
/_api/web/RoleAssignments?$expand=Member,Member/Users,RoleDefinitionBindings
这行代码为您提供所有 "members" 以及用户。
我似乎在 csom 代码中找不到任何类似的东西,roledefinitionbinding:s 成员似乎没有 "users"?。我错过了什么吗?还是我需要从站点组获取用户。
角色定义本质上是权限级别。
如果您想查看哪些用户和组已被分配 特定权限级别,您应该查看对象的角色分配集合。具体来说,角色分配的成员 属性 表示用户或组。
下面是使用 JavaScript 访问角色分配集合成员的示例:
var clientContext = new SP.ClientContext();
var roleAssignments = clientContext.get_web().get_roleAssignments();
clientContext.load(roleAssignments,"Include(Member)");
clientContext.executeQueryAsync(Function.createDelegate(this,
function(){
var roleAssignment, member, members = [],
roleEnumerator = roleAssignments.getEnumerator();
while(roleEnumerator.moveNext()){
roleAssignment = roleEnumerator.get_current();
member = roleAssignment.get_member();
members.push({
type:SP.Utilities.PrincipalType.toString(member.get_principalType()),
login:member.get_loginName(),
id:member.get_id(),
name:member.get_title()
});
}
alert(JSON.stringify(members));
}),Function.createDelegate(this,
function(sender,args){
alert(args.get_message());
})
);
获得 ID 后,您可以深入“网站群组”集合以查看特定群组的成员。