[ https://issues.apache.org/jira/browse/PHOENIX-7466?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
guluo updated PHOENIX-7466: --------------------------- Description: When spark enabled authorization, Spark cannot access phoenix tables without schema. Assuming we use userA to operate Spark, and userA has access to the default namespace on hbase When Spark enabled authorization by Kyuubi Spark AuthZ Plugin, and spark access phoenix tables by the following way. df = spark.sqlContext.read.format("phoenix") .options(Map("table" -> "Table1", "zkUrl" -> "phoenix-server:2181")).load; This phoenix table doesnot specify schema, So the authorization service cannot get the database name of this table (database is null), So it think that we are accessing an unauthorized database and denies access. I'm not sure if it must be a problem with phoenix-connector. But my solution is as follows. When the accessed Phoenix table does not have a schema, I convert it to default.table in PhoenixTable. was: When spark enabled authorization, Spark cannot access phoenix tables without schema. Assuming we use userA to operate Spark, and userA has access to the default namespace on hbase When Spark enabled authorization by Kyuubi Spark AuthZ Plugin, and spark access phoenix tables by the following way. df = spark.sqlContext.read.format("phoenix") .options(Map("table" -> "Table1", "zkUrl" -> "phoenix-server:2181")).load; This phoenix table doesnot specify schema, So the authorization service cannot get the database name of this table (database is null), So it think that we are accessing an unauthorized database and denies access. I'm not sure if it must be a problem with phoenix-connectot. But my solution is as follows. When the accessed Phoenix table does not have a schema, I convert it to default.table in PhoenixTable. > [phoenix-connector] spark with authorization enabled cannot access phoenix > tables without schema > ------------------------------------------------------------------------------------------------ > > Key: PHOENIX-7466 > URL: https://issues.apache.org/jira/browse/PHOENIX-7466 > Project: Phoenix > Issue Type: Bug > Components: connectors > Reporter: guluo > Priority: Major > > When spark enabled authorization, Spark cannot access phoenix tables without > schema. > Assuming we use userA to operate Spark, and userA has access to the default > namespace on hbase > When Spark enabled authorization by Kyuubi Spark AuthZ Plugin, and spark > access phoenix tables by the following way. > df = spark.sqlContext.read.format("phoenix") > .options(Map("table" -> "Table1", "zkUrl" -> "phoenix-server:2181")).load; > This phoenix table doesnot specify schema, So the authorization service > cannot get the database name of this table (database is null), So it think > that we are accessing an unauthorized database and denies access. > I'm not sure if it must be a problem with phoenix-connector. > But my solution is as follows. > When the accessed Phoenix table does not have a schema, I convert it to > default.table in PhoenixTable. -- This message was sent by Atlassian Jira (v8.20.10#820010)