This post has been republished via RSS; it originally appeared at: New blog articles in Microsoft Tech Community.
If you have had your Office 365 tenant for some time (since before Guests were a thing - so 6 years or so ago) and migrated accounts in from on-premises active directory - then you might run in to this issue where these users are not being resolved. In some cases this might be expected, as you can't use external users yet - but if these are accounts in the same Office 365 tenant and real members then read on.
This is a known issue where the UserType of these specific users who were added a while back via AD is NULL - and see https://docs.microsoft.com/en-us/dynamics365/talent/people-picker-user-not-found for details. You can look on the Users blade of Azure Active directory to see this value for a user - my screenshot shows what they SHOULD look like - I don't have a user in a bad state.
You can see here that Alex is a member - he can be assigned ok.
You can also use PowerShell to resolve this - either the AzureAD account or Msol Account:
Have someone who is an admin on the tenant do the following steps:
- Run Windows Powershell as an admin
- Enter Install-Module -Name MSOnline
- Say Yes to the prompts around if you want to install the module
- Enter Connect-MsolService
- Enter the tenant admin credentials when prompted
- Set-MsolUser -UserPrincipalName firstname.lastname@yourtenant.onmicrosoft.com -UserType Member
- Wait 30 minutes or so
- Go back to Project and try searching for the user in a project where he isn't a member of the group but you are a group owner
You should replace the UserPrincipalName with each account in turn that currently has a NULL UserType. You could also choose to use Outlook and add members to the Group - they will then soon become available for assignment in Project for the web.
Another way to see if a user is affected is to use Graph Explorer https://developer.microsoft.com/en-us/graph/graph-explorer and a Url similar to the following. with the user's display name replacing First and Last:
A working user will return the expected data (and don't get confused like I did by the null against userType - this isn't the issue:
{
"@odata.context": "https://graph.microsoft.com/beta/$metadata#users(id,displayName,userType,onPremisesSyncEnabled)",
"value": [
{
"id": "ded29fcd-46cc-432b-9965-06e43d48ada0",
"displayName": "Patti Fernandez",
"userType": null,
"onPremisesSyncEnabled": null
}
]
}
A broken user will not be able to resolve from Graph - and will return an empty array:
{
"@odata.context": "https://graph.microsoft.com/beta/$metadata#users(id,displayName,userType,onPremisesSyncEnabled)",
"value": []
}