How to view to user only the node that referenced to him?
Entity Reference and Rules Solution. 


Install both modules
Add an entity reference field with unlimited values to your content type. Make sure it references users.
For views, create a content view and add a contextual filter for the field you created. My test contextual filter was called Content: User Ref Test. Your contextual filter will have the same name as the field you created.
In the contextual filter's settings, click Provide Default: User ID from logged in User. This will only show content where the user has been referenced.
To make the content safe from typing in the url, create a Content is Viewed rule for that content type.
In the conditions, choose "list contains item". The list is the entity reference field and the item is the logged in user. At the bottom of the condition, you then negate the rule. It should look like NOT Item in List "Parameter: List: [node:field-user-ref-test], Item: [site:current-user] 
Add a second data comparison condition that allows the admin (or you could do this by user role) to view the content. Negate this condition as well. NOT Data Comparison &gt; Parameter: Data to compare: [site:current-user:uid], Data value: 1
Add a system redirect to the homepage and a message explaining why the user couldn't view the content.


If it doesn't work, check to make sure the entity reference field is set to unlimited because that's why we use the list in rules.