[ 
https://issues.apache.org/jira/browse/PHOENIX-7466?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17899774#comment-17899774
 ] 

guluo commented on PHOENIX-7466:
--------------------------------

And i also found that Spark can access phoenix table with schema.

```scala

// if phoenix is TEST_SCHEMA.TABLE, we can access it

df = spark.sqlContext.read.format("phoenix")
  .options(Map("table" -> "TEST_SCHME.TABLE", "zkUrl" -> 
"phoenix-server:2181")).load;

df.show

```

> [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)

Reply via email to