Search code examples
sqlms-accessodbcrolesmarklogic-10

What is the minimum security role required to be able to query ML via ODBC


I am trying to set up a dedicated user in ML for SQL query via ODBC. What is the minimum acccess role required?

It works well if I assign the user with the default admin role. However if I give only sql-execution role, I could use that user to connect to ODBC but the query will return zero record.

{
"user-name" : "AppBI",
"description" : "SQL Query User - Read Only",
"password" : "password1",
"role" : [ "sql-execution" ]  
}

Solution

  • The issue has been resolved.

    The sql-execution role is required to run ODBC query. The black/zero record from the query was due to no read access on that TDE and content DB. The solution is to grant that AppBI user with myApp-internal role.

    { "user-name" : "AppBI", "description" : "SQL Query User - Read Only", "password" : "password1", "role" : [ "sql-execution", "myApp-internal" ] }

    Default roles created by using gradlew -i mlNewProject

    Default roles created by using mlNewProject