SAP HANA如何调试/修复“权限不足”错误

时间:2018-08-22 08:11:56

标签: permissions hana

在SAP HANA中,我试图使用表类型作为输入参数来调用StoredProcedure。

其他输入参数也可以正常工作。但是,一旦我使用表类型,就会出现错误:

Failed to execute action: InternalError: dberror($.hdb.Connection.executeProcedure): 258 - SQL error, server error code: 258. insufficient privilege: Not authorized at /sapmnt/ld7272/a/HDB/jenkins_prod/workspace/8uyiojyvla/s/ptime/query/checker/query_check.cc:4003

如何解决/调试此问题?

在indexserver-trace中是:

[19984]{315590}[100/100235487] 2018-08-22 10:07:13.949679 i TraceContext     TraceContext.cpp(01028) : UserName=SAPDBCTRL, ApplicationUserName=SM_EFWK, ApplicationName=ABAP:AS2, ApplicationSource=CL_SQL_STATEMENT==============CP:304, Client=010, StatementHash=31c1e1f5ca72868a541d58fc5a77596b, EppRootContextId=0050560204981EE782C14A33A16BC68E, EppTransactionId=47BF1E2CEE9D05A0E005B7CF04FCF981, EppConnectionId=5B7C13CC22061B08E10000000A1807AF, EppConnectionCounter=1, EppComponentName=AS2/sapas2ci_AS2_01, EppAction=EFWK RESOURCE MANAGER
[19984]{315590}[100/100235487] 2018-08-22 10:07:13.949656 w SQLScriptExecuto se_eapi_proxy.cc(00144) : Error <exception 71000258: Not authorized
> in preparation of internal statement: delete from _SYS_STATISTICS.STATISTICS_PROPERTIES where key='internal.check.store_results'
[19984]{315590}[100/100235487] 2018-08-22 10:07:13.949904 e SQLScript        trex_llvm.cc(00936) : Llang Runtime Error: Exception::SQLException258: insufficient privilege: Not authorized
  at main (line 63) ("_SYS_STATISTICS"."SHARED_STORE_USED_VALUES": line 8 col 5 (at pos 456))

1 个答案:

答案 0 :(得分:0)

这似乎很简单:

在客户端SM_EFWK中登录的应用程序用户(使用SAP NetWeaver的人)010试图从SAP HANA统计服务表{{1}中删除数据}。

NetWeaver / ABAP程序使用与数据库用户_SYS_STATISTICS.STATISTICS_PROPERTIES辅助数据库连接。 抛出错误SAPDBCTRL,因为此Exception::SQLException258: insufficient privilege: Not authorized数据库用户在分配给该表的表上没有SAPDBCTRL的特权(既没有直接特权,也没有通过模式或角色特权)。 / p>

如果SQL命令是SAP标准程序的一部分,那么我将检查建议的设置是否已正确实施。 如果此命令来自自定义程序,则您可能要分配特权或使用其他技术用户,因为DELETE是不应修改的SAP标准用户。