Take the 2-minute tour ×
SharePoint Stack Exchange is a question and answer site for SharePoint enthusiasts. It's 100% free, no registration required.

we are using a SharePoint out of box feature to comment on the page. Comments are getting displayed if end user posts the comments however it is not getting displayed(for end users) if the comments are posted by a farm account.

Is that an expected behavior? How to solve this?

share|improve this question
1  
What do you mean by a "farm account"? Are you talking about one of the service accounts? –  Robert Kaucher Feb 22 '12 at 20:03
    
yes, i meant the service account. –  Karthikeyan Feb 22 '12 at 23:55
    
any help in understanding the architecture of social notes and comments. What are the pre requirements to configure the out of comments? Why it is not displaying the comments when end users added the comments? Do we need to crawl the contents to show the comments? –  Karthikeyan Feb 25 '12 at 15:45
    
Could you explain a bit more what exact OOB feature you are using, to help people investigate? –  Anders Rask Feb 26 '12 at 8:28
    
We do something like this, but we needed to actually give permissions to the list for the comments to be viewable by others. –  MichaelF Feb 27 '12 at 12:57

4 Answers 4

up vote 2 down vote accepted
+50

Privacy and security implications of social tagging (SharePoint Server 2010) can help you some understanding as to how the security trimming worked on Notes web part. Following is taken from it:

Security trimming

Adding a tag, a note, or a rating to a Web page creates an activity. Before SharePoint Server displays an activity, it uses a component called the security trimmer to determine whether the current user has permission to view the Web page that the activity applies to. If the user is not permitted to view the Web page, SharePoint Server does not display the activity.

As the search service crawls Web pages, it records the permissions that are required to view each Web page. The security trimmer uses this information to determine whether a given user has permission to view a specific Web page. If the security trimmer has insufficient information to determine whether a user has permission to view a Web page, it errs on the side of caution and reports that the user does not have permission to view the Web page. As a result, if the search service has not crawled a Web page, activities that relate to that Web page will not be displayed.

share|improve this answer
    
thanks for your help, I understood that crawling plays an important role while working with social comments. In our environment, we have configured AAM for a given webapplication, say, the webapplication's default public zone url is test.url.com and its internal url is servername:82, is it fine to use the internal url to crawl? whereus users are using the default url to post the comments?...or it is mandatory to crawl the default url? –  Karthikeyan Feb 27 '12 at 6:42
    
Since the crawling, requests and trimming are all done on URLs, I would imagine it's best if they all match. –  Louis Feb 27 '12 at 12:18
    
Thanks for your help. steps: 1. Verify the access "search account" access permission on the webapplicaton 2. Post a comment 3. Crawl the page (URL should be the same one where you have posted your comment, AAM won't help) 4. browse the page, it should display the comments. –  Karthikeyan Mar 1 '12 at 4:45
    
Perfect. I am disappointed with Microsoft for your finding that AAM does not help. –  Ashish Patel Mar 1 '12 at 14:57

This man suggests some valid work-arounds to this issue.
I had the same challenge with a project for my company and used some of his work-arounds to solve the issue.

share|improve this answer

Take a look at this blog were they resolve this by code:

var type = typeof(SocialCommentManager);
var methods = type.GetMethods(System.Reflection.BindingFlags.DeclaredOnly | System.Reflection.BindingFlags.NonPublic | System.Reflection.BindingFlags.Instance);
var method = methods.FirstOrDefault(m => m.ToString() == "Microsoft.Office.Server.SocialData.SocialComment[] GetComments(System.Uri, Int32, Int32, System.DateTime, Boolean)");
if (method == null) throw new MissingMethodException("Social GetComment method not found.");
var comments = method.Invoke(cm, new object[] { uri, 10000, 0, DateTime.MinValue, false }) as SocialComment[];
share|improve this answer

I had a similar issue where I wanted to get a number of comments in code. Comments are security-trimmed. Try to set the app pool account as Social Data Administrator: Central Administration -> Application Management -> Service Applications -> User Profile Services.

share|improve this answer

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

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