I have started to test my Managed app through different user Profiles.
Manage User -> User_1 -> [Login] link near each user allowed me to impersonate any user Profile.
This is a cool feature provided by Salesforce to test a feature across different profiles very efficiently.
When I try to access a VisualForce Page by directly logging in as Particular user say test_user_1 I am able to see that page.
But when I try to impersonate the User test_user_1 I am getting a message like this on the particular page:
Insufficient Privileges You do not have the level of access necessary to perform the operation you requested. Please contact the owner of the record or your administrator if access is necessary.
I checked the VisualForce page Security settings and the Profile already has access to that Page. I don't understand what prevents Salesforce from showing the VisualForce page while impersonating but displays the same page on Actual User login.
Update:
I forgot to mention I am using SAML as Authentication mode and this page exactly explains what I am facing.