As I was going round and round a few weeks ago trying to figure out why my custom claims provider was not working as I anticipated, one of our great developers (Chris R.) gave me a list of things to look at to try and diagnose the issue. After spending about 5 minutes on his list I realized where the problem was, so I thought I would share his list as food for thought, and throw out a couple of other things I've seen and do as well. This will be a living list, so as Chris or I come up with other suggestions we'll just update this posting. Also, if you folks have tips that you find useful I would encourage you to add them in the comments below. I can't offer any prizes other than a "thanks" from your fellow SharePoint developers! :-)
So, that being said, here's the list:
That's the list for now - as I said, we'll keep updating this as we have more things to add. Also, please add your suggestions in the comments too! Hope this helps someone, somewhere, out there.
A very helpful troubleshooting list indeed. Thank you for this blog post!
We are developing a Sharepoint Custom Claims Provider and I have been encountering the "user does not exist or is not unique" issue on and off. Earlier it occured when I tried to add a 'role' claim but I fixed it by explicitly setting the CustomClaimsProvider as the ClaimsProvider for my TrustedIdentityTokenIssuer.
But now, I have started seeing this again, this time when adding an emailaddress claim. I didn't change any of my code for claims provider but I DID uninstall and install the SPSolution again. The FillResolve method only returns one claim (but it does get called three time, once when I resolve the emailaddress in people picker and twice when I press the 'OK' button).
I looked in the ULS logs and I just see the same error message but no extra information as to what claim is my emailaddress claim conflicting with? Did my uninstall/install of the SPFeature create any lingering objects? I'm not sure how to trouble shoot this furthur. Any pointers would be greatly appreciated.
For people who want a claims provider that implements lookup against AD or a LDAP, I would like to mention project http://ldapcp.codeplex.com/.
It can be used as is but is also a good foundation for developers who need specific customizations with few efforts.
What about caching the claims on SharePoint 2013!, in 2010 the Fill Claims For Entity was called on each request, thats not the case on 2013.
is there anyway to disable the caching on 2013?!