4

When certain users are added to a SharePoint group in a particular site collection, they do not appear in the user list in the browser. If added outside of a SharePoint group (ie: given a permission directly), they appear normally.

They are added, as they can get access, and I can see them listed in the permissions in SharePoint Designer, however within the browser - they are not listed. There are no errors, messages, or warnings at any point. This only happens in one site collection, even though many other site collections use the same User Profile Synchronization Service.

The only similar situation I can find through Google is Cannot add user to SP group, SP 2010. We recently (within the last month) upgraded from 2007 to 2010, however we did not use any third party tool like Avepoint in the aforementioned thread - we used the database detach reattach option.

After some digging, we've found that the affected users are not listed in the "User Information List" (sitecollectionURL/_catalogs/users/simple.aspx), however it is possible to view the user's entry in this list if you force-change the ID URL variable to their tp_id # from the UserInfo table in SQL (ie: http://sitecollection/_layouts/userdisp.aspx?ID=123.

Using PowerShell, we can found some commonalities in the users that are experiencing the problem:

  1. ForwardLinks and BackwardLinks contain empty arrays({}) in working users. Affected users contain nothing.

  2. FirstUniqueAncestorSecurableObject = "User Information List" for working users. Affected users have nothing.

  3. FirstUniqueAncestor = "User Information List" for working users. Affected users have nothing.

I've tried the following to resolve the issue:

  1. Full profile synchronization in central admin. (No Effect)

  2. stsadm -o sync deleteolddatabases 0 followed by a full User Profile sync in Central Admin (No Effect)

  3. Manually updating the missing properties in Powershell to match a working account (didn't work, list is read-only).

EDIT: Tried deleting an affected user from the site collection and then re-adding their permissions. Issue persists.

5 Answers 5

3

I realize that this topic is a year old, but I was having a very similar issue. I had a site that had been migrated from MOSS to SharePoint 2010 and then again to SharePoint 2013. I could add users to the Members SharePoint group through the UI, however none of the users would show. I was able to verify that the users were being added to the group via the Content Database's GroupMembership table. The previous answer led me to try the PowerShell route. I executed the following script, and upon completion, ALL groups for this particular site collection began functioning correctly:

$web = Get-SPWeb <site url>
$group = $web.Groups["<group name>"]

$users = $group.Users

foreach ($groupUser in $users)
{
    $group.RemoveUser($groupUser)
    $groupUser.DisplayName
    $group.AddUser($groupUser)
    $group.Update()
} 
2

We had exactly the same problem and were able to fix it by just "reading" and writing all users via SP-Powershell:

foreach ($user in get-spuser -web http://CONTOSO.EXAMPLE.COM –limit all) {$user.Update()}
1
  • Dang! I wish I had of seen your comment earlier, Stuart. We ended up fixing it using the content deployment method.
    – Nik Craik
    Oct 9, 2012 at 17:59
0

I just ran into this today with a single user having an issue. In my case, I found that all I had to do was remove them from one group and add them back in and update the group and they showed up everywhere. The code below is a little wordy but it shows all the steps

$LoginName = "domain\username" #login name of user
$siteURL = "http://www.company.gov" #URL to any site in the web application.
$site = get-spsite $siteURL #get the site
$web = $site.openweb() #get the web
$user =  $web.SiteUsers[$LoginName] #grab the user off the site
$user.Groups|select Name #show all the groups that user is a member of
$group = $web.Groups["Owners"] #pick one of the groups
$group.RemoveUser($user) #deletes user from group
$groupUser.DisplayName #found it helps to add a fluff line
$group.AddUser($user) #add user back to group
$group.Update() #update group
0

Had the same problem on SharePoint 2013. Adding users through the interface seemed to work fine. Only the users are simply not added. Searched a long time to figure this out. I tried the above and in PowerShell things worked fine.

The issue was that I was working in a subsite that was INHERITING permissions! You cannot modify members of a group on a subsite that has no unique permissions. It works fine when working from the rootsite. And probably will also work fine ones you break inheritance on the subsite.

0

Had the same problem on SharePoint 2013, and it got fix by executing below command:

foreach ($user in get-spuser -web http://CONTOSO.EXAMPLE.COM –limit all) {$user.Update()}

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge that you have read and understand our privacy policy and code of conduct.

Not the answer you're looking for? Browse other questions tagged or ask your own question.