[ 
https://issues.apache.org/jira/browse/RANGER-4683?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Pradeep Agrawal updated RANGER-4683:
------------------------------------
    Labels: Trino  (was: )

> Trino Schema Creation Permission
> --------------------------------
>
>                 Key: RANGER-4683
>                 URL: https://issues.apache.org/jira/browse/RANGER-4683
>             Project: Ranger
>          Issue Type: Bug
>          Components: plugins
>            Reporter: Semetey Coskun
>            Priority: Major
>              Labels: Trino
>
> Hi,
> I'm running Trino in docker (trinodb/trino:423) and this environment is 
> integrated to Apache Ranger (2.4.0) for authz policies. Every permissions 
> seem OK but "Create Schema" in a catalog. I've tried various configurations; 
> specifying catalog names with "*" or exact name of the catalog which I'm 
> trying to create schema in it but every time same error.
>  
> {{io.cloudbeaver.DBWebException: Error executing query: SQL Error [4]: Query 
> failed (#20240129_203356_00589_c9776): Access Denied: Cannot create schema 
> delta.trino_poc at 
> io.cloudbeaver.service.sql.WebSQLProcessor.processQuery(WebSQLProcessor.java:264)
>  at 
> io.cloudbeaver.service.sql.impl.WebServiceSQL$1.run(WebServiceSQL.java:377) 
> at io.cloudbeaver.model.session.WebSession$1.run(WebSession.java:692) at 
> org.jkiss.dbeaver.model.runtime.AbstractJob.run(AbstractJob.java:105) at 
> org.eclipse.core.internal.jobs.Worker.run(Worker.java:63) Caused by: 
> org.jkiss.dbeaver.model.sql.DBSQLException: SQL Error [4]: Query failed 
> (#20240129_203356_00589_c9776): Access Denied: Cannot create schema 
> delta.trino_poc at 
> org.jkiss.dbeaver.model.impl.jdbc.exec.JDBCStatementImpl.executeStatement(JDBCStatementImpl.java:133)
>  at 
> io.cloudbeaver.service.sql.WebSQLProcessor.lambda$1(WebSQLProcessor.java:250) 
> at 
> org.jkiss.dbeaver.model.exec.DBExecUtils.tryExecuteRecover(DBExecUtils.java:190)
>  at 
> io.cloudbeaver.service.sql.WebSQLProcessor.processQuery(WebSQLProcessor.java:207)
>  ... 4 more Caused by: java.sql.SQLException: Query failed 
> (#20240129_203356_00589_c9776): Access Denied: Cannot create schema 
> delta.trino_poc at 
> io.trino.jdbc.AbstractTrinoResultSet.resultsException(AbstractTrinoResultSet.java:1937)
>  at io.trino.jdbc.TrinoResultSet.getColumns(TrinoResultSet.java:318) at 
> io.trino.jdbc.TrinoResultSet.create(TrinoResultSet.java:61) at 
> io.trino.jdbc.TrinoStatement.internalExecute(TrinoStatement.java:262) at 
> io.trino.jdbc.TrinoStatement.execute(TrinoStatement.java:240) at 
> org.jkiss.dbeaver.model.impl.jdbc.exec.JDBCStatementImpl.execute(JDBCStatementImpl.java:330)
>  at 
> org.jkiss.dbeaver.model.impl.jdbc.exec.JDBCStatementImpl.executeStatement(JDBCStatementImpl.java:131)
>  ... 7 more Caused by: io.trino.spi.security.AccessDeniedException: Access 
> Denied: Cannot create schema delta.trino_poc at 
> io.trino.spi.security.AccessDeniedException.denyCreateSchema(AccessDeniedException.java:150)
>  at 
> io.trino.spi.security.AccessDeniedException.denyCreateSchema(AccessDeniedException.java:145)
>  at 
> io.trino.spi.security.SystemAccessControl.checkCanCreateSchema(SystemAccessControl.java:286)
>  at 
> io.trino.security.AccessControlManager.lambda$checkCanCreateSchema$11(AccessControlManager.java:340)
>  at 
> io.trino.security.AccessControlManager.systemAuthorizationCheck(AccessControlManager.java:1363)
>  at 
> io.trino.security.AccessControlManager.checkCanCreateSchema(AccessControlManager.java:340)
>  at 
> io.trino.security.ForwardingAccessControl.checkCanCreateSchema(ForwardingAccessControl.java:125)
>  at 
> io.trino.tracing.TracingAccessControl.checkCanCreateSchema(TracingAccessControl.java:166)
>  at 
> io.trino.execution.CreateSchemaTask.internalExecute(CreateSchemaTask.java:117)
>  at io.trino.execution.CreateSchemaTask.execute(CreateSchemaTask.java:82) at 
> io.trino.execution.CreateSchemaTask.execute(CreateSchemaTask.java:54) at 
> io.trino.execution.DataDefinitionExecution.start(DataDefinitionExecution.java:145)
>  at io.trino.execution.SqlQueryManager.createQuery(SqlQueryManager.java:256) 
> at 
> io.trino.dispatcher.LocalDispatchQuery.startExecution(LocalDispatchQuery.java:145)
>  at 
> io.trino.dispatcher.LocalDispatchQuery.lambda$waitForMinimumWorkers$2(LocalDispatchQuery.java:129)
>  at 
> io.airlift.concurrent.MoreFutures.lambda$addSuccessCallback$12(MoreFutures.java:568)
>  at io.airlift.concurrent.MoreFutures$3.onSuccess(MoreFutures.java:543) at 
> com.google.common.util.concurrent.Futures$CallbackListener.run(Futures.java:1133)
>  at io.trino.$gen.Trino_423____20240129_094308_2.run(Unknown Source) at 
> java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136)
>  at 
> java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635)
>  at java.base/java.lang.Thread.run(Thread.java:833)}}
>  
> {{When I grep the coordinator logs the only policy id I can see in the logs 
> is 27;}}
>  
> 2024-01-29T20:02:57.087Z INFO Query-20240129_200257_00416_c9776-2066 stdout 
> 20:02:57.087 [Query-20240129_200257_00416_c9776-2066] DEBUG 
> org.apache.ranger.plugin.policyevaluator.RangerDefaultPolicyEvaluator - ==> 
> RangerDefaultPolicyEvaluator.evaluate(policyId=27, 
> RangerAccessRequestImpl=\{resource={RangerResourceImpl={ownerUser={null} 
> elements=\{catalog=delta; } }} accessType=\{use} user=\{005269} 
> userGroups=\{MY USER GROUP LIST } userRoles={} accessTime=\{Mon Jan 29 
> 20:02:57 UTC 2024} clientIPAddress=\{null} forwardedAddresses={} 
> remoteIPAddress=\{null} clientType=\{null} action=\{null} requestData=\{null} 
> sessionId=\{null} resourceMatchingScope=\{SELF} clusterName={} clusterType={} 
> context=\{token:USER={005269} } }, 
> RangerAccessResult=\{isAccessDetermined={false} isAllowed=\{false} 
> isAuditedDetermined=\{false} isAudited=\{false} auditLogId=\{null} 
> policyType=\{0} policyId=\{-1} zoneName=\{null} auditPolicyId=\{-1} 
> policyVersion=\{null} evaluatedPoliciesCount=\{1} reason=\{null} 
> additionalInfo={}})
>  
> Policy ID 27 is the default "all - catalog, schema, table, column" 
> configuration:
>  
> !https://private-user-images.githubusercontent.com/1835976/300598323-d3c802a8-a8e5-48aa-ad14-64f0bb3fa8cc.png?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTUiLCJleHAiOjE3MDY2ODExOTMsIm5iZiI6MTcwNjY4MDg5MywicGF0aCI6Ii8xODM1OTc2LzMwMDU5ODMyMy1kM2M4MDJhOC1hOGU1LTQ4YWEtYWQxNC02NGYwYmIzZmE4Y2MucG5nP1gtQW16LUFsZ29yaXRobT1BV1M0LUhNQUMtU0hBMjU2JlgtQW16LUNyZWRlbnRpYWw9QUtJQVZDT0RZTFNBNTNQUUs0WkElMkYyMDI0MDEzMSUyRnVzLWVhc3QtMSUyRnMzJTJGYXdzNF9yZXF1ZXN0JlgtQW16LURhdGU9MjAyNDAxMzFUMDYwMTMzWiZYLUFtei1FeHBpcmVzPTMwMCZYLUFtei1TaWduYXR1cmU9NDkxNzU2MmY5MmQwNmY5YmQ4MDM3YzI3OTg2MDc2NzQ4ZGI5NGMxMjhiZDNiM2JmYWJjOTQwZGZkODA2ZmRhZSZYLUFtei1TaWduZWRIZWFkZXJzPWhvc3QmYWN0b3JfaWQ9MCZrZXlfaWQ9MCZyZXBvX2lkPTAifQ.vPiKcbzEz4z9lg-mxOJLQNdMaW5VxB5b4SAuegGlGwk!
> !https://private-user-images.githubusercontent.com/1835976/300598455-dd5dd6b1-9f34-444f-a66d-b04cf4874c8e.png?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTUiLCJleHAiOjE3MDY2ODExOTMsIm5iZiI6MTcwNjY4MDg5MywicGF0aCI6Ii8xODM1OTc2LzMwMDU5ODQ1NS1kZDVkZDZiMS05ZjM0LTQ0NGYtYTY2ZC1iMDRjZjQ4NzRjOGUucG5nP1gtQW16LUFsZ29yaXRobT1BV1M0LUhNQUMtU0hBMjU2JlgtQW16LUNyZWRlbnRpYWw9QUtJQVZDT0RZTFNBNTNQUUs0WkElMkYyMDI0MDEzMSUyRnVzLWVhc3QtMSUyRnMzJTJGYXdzNF9yZXF1ZXN0JlgtQW16LURhdGU9MjAyNDAxMzFUMDYwMTMzWiZYLUFtei1FeHBpcmVzPTMwMCZYLUFtei1TaWduYXR1cmU9NGYxMDcxMDhhZWMwZDhiYjVkMmZkNzIxYWMwMGJmZDMwYTc5ZTA3MjViMGRjMGY4NTU5NjYyY2E3MWYxZGQyOCZYLUFtei1TaWduZWRIZWFkZXJzPWhvc3QmYWN0b3JfaWQ9MCZrZXlfaWQ9MCZyZXBvX2lkPTAifQ.75LoXJsRRMJ1sRoVWJLeYs_-ssZxMfk0Mx-R7tWvB-0!
>  
> Is there any point that I'm missing?
> Thank you,
> Kind Regards.
>  
>  



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

Reply via email to