Sunday, 4 October 2020

Error: SAP DBTech JDBC: [258]: insufficient privilege: [2950] user is not authorized:

Hi Guys,

In this blog we are going to see error "Error: SAP DBTech JDBC: [258]: insufficient privilege: [2950] user is not authorized:


Error: SAP DBTech JDBC: [258]: insufficient privilege: [2950] user is not authorized:













Reason: 

we are getting this error because users doesn't have the analytic privilege to read data from views, tables. 


Resolution: 

We can resolve this error by providing the role " MODELING" to user. Role "CONTENT_ADMIN" will help to resolve this error but  The CONTENT_ADMIN role is very privileged and should not be granted to users, particularly in production systems. The CONTENT_ADMIN role should only be used as a template


Hence the best way is we will provide missing analytic privilege is there in MODELING and CONTENT_ADMIN. As we can provide a MODELING role because it will provide access to all packages in the database. Hence to provide restricted access to users means access to a particular package. we can assign a particular package to the user with REPO.READ access with analytic privilege. 

The MODELING role contains the predefined analytic privilege _SYS_BI_CP_ALL. This analytic privilege potentially allows a user to access all the data in activated views that are protected by XML-based analytic privileges, regardless of any other analytic privileges that apply. Although the user must also have the SELECT object privilege on the views to actually be able to access data, the _SYS_BI_CP_ALL analytic privilege should not be granted to users,

after assigning analytic privilege _SYS_BI_CP_ALL to the user. Now ask user to refresh his session and try Data Preview. 


Thank you all