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

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


The following commit(s) were added to refs/heads/master by this push:
     new ab7e77f6ecb [fix](function) Hide secret key for aes_decrypt/encrypt in 
result header (#39969)
ab7e77f6ecb is described below

commit ab7e77f6ecb3f11d6ff5fcea561548670919d346
Author: xy720 <22125576+xy...@users.noreply.github.com>
AuthorDate: Mon Sep 23 15:23:08 2024 +0800

    [fix](function) Hide secret key for aes_decrypt/encrypt in result header 
(#39969)
    
    Fix the case: The secret key is being shown beside '***' in result header
    
    ```
    MySQL [lambxu]> set experimental_enable_nereids_planner = false;
    Query OK, 0 rows affected (0.01 sec)
    
    MySQL [lambxu]> SELECT aes_decrypt(   
from_base64("EXp7k7M9Zv1mIwPpno28Hg=="),   '17IMZrGdwWf2Piy8',   
'II2HLtihr5TQpQgR'  , 'AES_128_CBC');
    
+------------------------------------------------------------------------------------------------------------------+
    | aes_decrypt(from_base64('EXp7k7M9Zv1mIwPpno28Hg=='), 
'***''17IMZrGdwWf2Piy8', 'II2HLtihr5TQpQgR', 'AES_128_CBC') |
    
+------------------------------------------------------------------------------------------------------------------+
    | 17777208882                                                               
                                       |
    
+------------------------------------------------------------------------------------------------------------------+
    1 row in set (0.00 sec)
    ```
---
 .../main/java/org/apache/doris/analysis/FunctionCallExpr.java |  1 +
 regression-test/data/view_p0/view_p0.out                      |  6 ++++++
 regression-test/suites/view_p0/view_p0.groovy                 | 11 ++++++++++-
 3 files changed, 17 insertions(+), 1 deletion(-)

diff --git 
a/fe/fe-core/src/main/java/org/apache/doris/analysis/FunctionCallExpr.java 
b/fe/fe-core/src/main/java/org/apache/doris/analysis/FunctionCallExpr.java
index d06c661f9da..369f4594dca 100644
--- a/fe/fe-core/src/main/java/org/apache/doris/analysis/FunctionCallExpr.java
+++ b/fe/fe-core/src/main/java/org/apache/doris/analysis/FunctionCallExpr.java
@@ -648,6 +648,7 @@ public class FunctionCallExpr extends Expr {
                             || 
fnName.getFunction().equalsIgnoreCase("sm4_decrypt")
                             || 
fnName.getFunction().equalsIgnoreCase("sm4_encrypt"))) {
                 sb.append("\'***\'");
+                continue;
             } else if (orderByElements.size() > 0 && i == len - 
orderByElements.size()) {
                 sb.append("ORDER BY ");
             }
diff --git a/regression-test/data/view_p0/view_p0.out 
b/regression-test/data/view_p0/view_p0.out
index 976d4a3cb2a..21d23110a91 100644
--- a/regression-test/data/view_p0/view_p0.out
+++ b/regression-test/data/view_p0/view_p0.out
@@ -18,3 +18,9 @@
 -- !sql2 --
 
 
+-- !select_aes --
+17777208882
+
+-- !show_aes --
+test_view_aes  CREATE VIEW `test_view_aes` AS SELECT 
aes_decrypt(from_base64("EXp7k7M9Zv1mIwPpno28Hg=="), '17IMZrGdwWf2Piy8', 
'II2HLtihr5TQpQgR', 'AES_128_CBC');      utf8mb4 utf8mb4_0900_bin
+
diff --git a/regression-test/suites/view_p0/view_p0.groovy 
b/regression-test/suites/view_p0/view_p0.groovy
index d6ae3a9313a..7ee8c9e913c 100644
--- a/regression-test/suites/view_p0/view_p0.groovy
+++ b/regression-test/suites/view_p0/view_p0.groovy
@@ -135,7 +135,16 @@ suite("view_p0") {
 
     sql """CREATE VIEW IF NOT EXISTS `test_view_abc`(`a`) AS WITH T1 AS 
(SELECT 1 AS 'a'), T2 AS (SELECT 2 AS 'a') SELECT T1.a FROM T1 UNION ALL SELECT 
T2.a FROM T2;"""
 
-    sql "drop view if exists test_view_abc;" 
+    sql "drop view if exists test_view_abc;"
+
+    sql "drop view if exists test_view_aes;"
+    sql """CREATE VIEW IF NOT EXISTS `test_view_aes`
+           AS
+           SELECT aes_decrypt(from_base64("EXp7k7M9Zv1mIwPpno28Hg=="), 
'17IMZrGdwWf2Piy8', 'II2HLtihr5TQpQgR', 'AES_128_CBC');
+    """
+    qt_select_aes "SELECT * FROM test_view_aes;"
+    qt_show_aes "SHOW CREATE VIEW test_view_aes;"
+    sql "drop view if exists test_view_aes;"
 
     sql """DROP TABLE IF EXISTS test_view_table2"""
     


---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscr...@doris.apache.org
For additional commands, e-mail: commits-h...@doris.apache.org

Reply via email to