You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@kyuubi.apache.org by ch...@apache.org on 2023/01/20 17:45:08 UTC

[kyuubi] branch master updated: [KYUUBI #4159] [DOCS] Refine doc for kyuubi.authentication

This is an automated email from the ASF dual-hosted git repository.

chengpan pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/kyuubi.git


The following commit(s) were added to refs/heads/master by this push:
     new 20da403e5 [KYUUBI #4159] [DOCS] Refine doc for kyuubi.authentication
20da403e5 is described below

commit 20da403e5eab7768a45e0184cc6cf5d87d4c1bb0
Author: Cheng Pan <ch...@apache.org>
AuthorDate: Sat Jan 21 01:44:57 2023 +0800

    [KYUUBI #4159] [DOCS] Refine doc for kyuubi.authentication
    
    ### _Why are the changes needed?_
    
    Add catalog tree for `kyuubi.authentication` options
    
    ### _How was this patch tested?_
    - [ ] Add some test cases that check the changes thoroughly including negative and positive cases if possible
    
    - [x] Add screenshots for manual tests if appropriate
    <img width="746" alt="image" src="https://user-images.githubusercontent.com/26535726/212236908-294b7fa9-e3db-4730-8c16-41c8fd409ae8.png">
    
    - [ ] [Run test](https://kyuubi.apache.org/docs/latest/develop_tools/testing.html#running-tests) locally before make a pull request
    
    Closes #4159 from pan3793/auth-doc.
    
    Closes #4159
    
    8d65768d [Cheng Pan] [DOCS] Refine doc for kyuubi.authentication
    
    Authored-by: Cheng Pan <ch...@apache.org>
    Signed-off-by: Cheng Pan <ch...@apache.org>
---
 docs/deployment/settings.md                        |  2 +-
 .../org/apache/kyuubi/config/KyuubiConf.scala      | 30 +++++++++++++++++-----
 .../kyuubi/config/AllKyuubiConfiguration.scala     |  4 +--
 3 files changed, 27 insertions(+), 9 deletions(-)

diff --git a/docs/deployment/settings.md b/docs/deployment/settings.md
index 4c7a3b66a..36323af65 100644
--- a/docs/deployment/settings.md
+++ b/docs/deployment/settings.md
@@ -136,7 +136,7 @@ You can configure the Kyuubi properties in `$KYUUBI_HOME/conf/kyuubi-defaults.co
 
 Key | Default | Meaning | Type | Since
 --- | --- | --- | --- | ---
-kyuubi.authentication|NONE|A comma-separated list of client authentication types.<ul> <li>NOSASL: raw transport.</li> <li>NONE: no authentication check.</li> <li>KERBEROS: Kerberos/GSSAPI authentication.</li> <li>CUSTOM: User-defined authentication.</li> <li>JDBC: JDBC query authentication.</li> <li>LDAP: Lightweight Directory Access Protocol authentication.</li></ul> Note that: For KERBEROS, it is SASL/GSSAPI mechanism, and for NONE, CUSTOM and LDAP, they are all SASL/PLAIN mechanisms.  [...]
+kyuubi.authentication|NONE|A comma-separated list of client authentication types.<ul> <li>NOSASL: raw transport.</li> <li>NONE: no authentication check.</li> <li>KERBEROS: Kerberos/GSSAPI authentication.</li> <li>CUSTOM: User-defined authentication.</li> <li>JDBC: JDBC query authentication.</li> <li>LDAP: Lightweight Directory Access Protocol authentication.</li></ul>The following tree describes the catalog of each option.<ul>  <li><code>NOSASL</code></li>  <li>SASL    <ul>      <li>SASL [...]
 kyuubi.authentication.custom.class|&lt;undefined&gt;|User-defined authentication implementation of org.apache.kyuubi.service.authentication.PasswdAuthenticationProvider|string|1.3.0
 kyuubi.authentication.jdbc.driver.class|&lt;undefined&gt;|Driver class name for JDBC Authentication Provider.|string|1.6.0
 kyuubi.authentication.jdbc.password|&lt;undefined&gt;|Database password for JDBC Authentication Provider.|string|1.6.0
diff --git a/kyuubi-common/src/main/scala/org/apache/kyuubi/config/KyuubiConf.scala b/kyuubi-common/src/main/scala/org/apache/kyuubi/config/KyuubiConf.scala
index c22ab42a4..f9d9bcda6 100644
--- a/kyuubi-common/src/main/scala/org/apache/kyuubi/config/KyuubiConf.scala
+++ b/kyuubi-common/src/main/scala/org/apache/kyuubi/config/KyuubiConf.scala
@@ -727,7 +727,8 @@ object KyuubiConf {
       .createWithDefault("X-Real-IP")
 
   val AUTHENTICATION_METHOD: ConfigEntry[Seq[String]] = buildConf("kyuubi.authentication")
-    .doc("A comma-separated list of client authentication types.<ul>" +
+    .doc("A comma-separated list of client authentication types." +
+      "<ul>" +
       " <li>NOSASL: raw transport.</li>" +
       " <li>NONE: no authentication check.</li>" +
       " <li>KERBEROS: Kerberos/GSSAPI authentication.</li>" +
@@ -735,11 +736,28 @@ object KyuubiConf {
       " <li>JDBC: JDBC query authentication.</li>" +
       " <li>LDAP: Lightweight Directory Access Protocol authentication.</li>" +
       "</ul>" +
-      " Note that: For KERBEROS, it is SASL/GSSAPI mechanism," +
-      " and for NONE, CUSTOM and LDAP, they are all SASL/PLAIN mechanisms." +
-      " If only NOSASL is specified, the authentication will be NOSASL." +
-      " For SASL authentication, KERBEROS and PLAIN auth types are supported at the same time," +
-      " and only the first specified PLAIN auth type is valid.")
+      "The following tree describes the catalog of each option." +
+      "<ul>" +
+      "  <li><code>NOSASL</code></li>" +
+      "  <li>SASL" +
+      "    <ul>" +
+      "      <li>SASL/PLAIN</li>" +
+      "        <ul>" +
+      "          <li><code>NONE</code></li>" +
+      "          <li><code>LDAP</code></li>" +
+      "          <li><code>JDBC</code></li>" +
+      "          <li><code>CUSTOM</code></li>" +
+      "        </ul>" +
+      "      <li>SASL/GSSAPI" +
+      "        <ul>" +
+      "          <li><code>KERBEROS</code></li>" +
+      "        </ul>" +
+      "      </li>" +
+      "    </ul>" +
+      "  </li>" +
+      "</ul>" +
+      " Note that: for SASL authentication, KERBEROS and PLAIN auth types are supported" +
+      " at the same time, and only the first specified PLAIN auth type is valid.")
     .version("1.0.0")
     .serverOnly
     .stringConf
diff --git a/kyuubi-server/src/test/scala/org/apache/kyuubi/config/AllKyuubiConfiguration.scala b/kyuubi-server/src/test/scala/org/apache/kyuubi/config/AllKyuubiConfiguration.scala
index 6db07a2e1..c6331b226 100644
--- a/kyuubi-server/src/test/scala/org/apache/kyuubi/config/AllKyuubiConfiguration.scala
+++ b/kyuubi-server/src/test/scala/org/apache/kyuubi/config/AllKyuubiConfiguration.scala
@@ -37,12 +37,12 @@ import org.apache.kyuubi.zookeeper.ZookeeperConf
  *
  * To run the entire test suite:
  * {{{
- *   build/mvn clean install -Pflink-provided,spark-provided,hive-provided -DwildcardSuites=org.apache.kyuubi.config.AllKyuubiConfiguration
+ *   build/mvn clean package -pl kyuubi-server -am -Pflink-provided,spark-provided,hive-provided -DwildcardSuites=org.apache.kyuubi.config.AllKyuubiConfiguration
  * }}}
  *
  * To re-generate golden files for entire suite, run:
  * {{{
- *   KYUUBI_UPDATE=1 build/mvn clean install -Pflink-provided,spark-provided,hive-provided -DwildcardSuites=org.apache.kyuubi.config.AllKyuubiConfiguration
+ *   KYUUBI_UPDATE=1 build/mvn clean package -pl kyuubi-server -am -Pflink-provided,spark-provided,hive-provided -DwildcardSuites=org.apache.kyuubi.config.AllKyuubiConfiguration
  * }}}
  */
 // scalastyle:on line.size.limit