You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@doris.apache.org by li...@apache.org on 2024/09/23 07:23:16 UTC
(doris) branch master updated: [fix](function) Hide secret key for aes_decrypt/encrypt in result header (#39969)
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 <22...@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-unsubscribe@doris.apache.org
For additional commands, e-mail: commits-help@doris.apache.org