Search code examples
javascriptsharepointsharepoint-clientobject

Permission denied Sharepoint


Can you guys help me ? I want to check if user is in group,but i could not get users from group. If current user is not in group, i get error "Access denied". If current user is in group everything is ok.

    function checkGroup(){    
    var clientContext = SP.ClientContext.get_current();
    var web = clientContext.get_web();

    var allGroups = web.get_siteGroups();   
    clientContext.load(allGroups); 

    clientContext.executeQueryAsync(function(){
        var count = allGroups.get_count();
        for(i = 0; i < count; i++){
            var grp = allGroups.getItemAtIndex(i);
            if(grp.get_loginName() == 'NDA_ADMINS'){
                var groupUsers = grp.get_users();
                clientContext.load(groupUsers);
                clientContext.executeQueryAsync(function(){
                    userInGroup = false;
                    var groupUserEnumerator = groupUsers.getEnumerator();
                    while (groupUserEnumerator.moveNext()) {
                        var groupUser = groupUserEnumerator.get_current();
                        if(groupUser.get_title() == login) {
                            userInGroup = true;
                            console.log('user is in group');
                            break;
                        }
                    }
                    getProjects('');
                },function(sender,args){
                    alert('Request failed' + args.get_message() + '\n' + args.get_stackTrace());    
                });
            }
        }   

    },function(sender,args){
        alert('Request failed' + args.get_message() + '\n' + args.get_stackTrace());
    });
}

I get error here:

var groupUsers = grp.get_users();

Solution

  • Is the user a farm admin? If nott and the group is set to show members only to other members, you're out of luck.