In ArcGIS Desktop 10.5 (ArcCatalog or ArcMap) I get the following error when attempting to add a feature class to a map from an Oracle 11g (11.2.0.4) Enterprise Geodatabase (10.2.1) which I have been granted select permission through a role:
Error opening feature class
Insufficient permissions [insufficient permissions[OWNER.TABLE_NAME]]
And then immediately after it another error pops up:
Could not add the specified data object to the map.
Insufficient permissions [insufficient permissions[OWNER.TABLE_NAME]]
Sometimes the "Insufficient permissions" line is repeated 2 or 3 times.
Right clicking on a layer and doing Properties gives an error that only includes the "Insufficient permissions" line the first time. Trying it again does nothing (no error message).
In ArcCatalog If I modify the permissions (through a separate connection as admin) in any way while my user connection is open then I am able to access all layers granted through roles. If I disconnect and reconnect then the error returns. I can't reproduce this in ArcMap, only Catalog.
If I am granted permission on the layer directly to my user account (not through the role) then I can access it.
If I have been granted the SELECT ANY TABLE system privilege then I am able to access all layers.
The role is a default role for my account.
The error only occurs on feature classes, plain tables work fine.
I only get the error when connecting directly to the geodatabase, going through the ArcSDE Server 10.2.1 works correctly.
I do not get this error using ArcMap 10.4 or lower.
The same problem occurs when trying access the layer with arcpy.MakeFeatureLayer_management:
ExecuteError: Failed to execute. Parameters are not valid. ERROR 000732: Input Features: Dataset C:/db_connection.sde/OWNER.TABLE_NAME does not exist or is not supported Failed to execute (MakeFeatureLayer)