The key to deciphering a permission issue in Dynamics CRM is in the log file. Click the Download Log File button. This will be an XML file containing a bunch of stuff that is difficult to comprehend, but using these steps to find just what you need will help make this easier.
Step 1: look for the Message
SecLib::AccessCheckEx failed. Returned hr = -2147187962, ObjectID: 16476d24-ca68-e611-80cd-0050568077fb, OwnerId: 153d564f-1264-e611-80cc-0050568077fb, OwnerIdType: 8 and CallingUser: 400b5cdc-0d64-e611-80cc-0050568077fb. ObjectTypeCode: 3, objectBusinessUnitId: 8439abf5-4a07-e611-80c0-0050568077fb, AccessRights: AppendAccess
Step 2: The parts you need to look at are the ObjectTypeCode, and the AccessRights. You can identify the entity by checking the ObjectTypeCode against this reference: https://msdynamicscrmblog.wordpress.com/2013/07/18/entity-type-codes-in-dynamics-crm-2011/ so in this case, the entity is the Opportunity.