@@ -81,6 +81,29 @@ describe("e2e: config", () => {
8181 expect ( stdout ) . toMatch ( / c o n f i g _ f i l e | t i m e o u t | b a s e _ u r l / i) ;
8282 } ) ;
8383
84+ test ( "config show 脱敏 security_token" , async ( ) => {
85+ const configDir = mkdtempSync ( join ( tmpdir ( ) , "bl-config-show-secret-" ) ) ;
86+ try {
87+ const securityToken = "sts-sensitive-token" ;
88+ writeFileSync (
89+ join ( configDir , "config.json" ) ,
90+ JSON . stringify ( { security_token : securityToken } , null , 2 ) + "\n" ,
91+ ) ;
92+
93+ const { stdout, stderr, exitCode } = await runCommandE2e (
94+ CONFIG_ROUTES ,
95+ [ "config" , "show" , "--output" , "json" ] ,
96+ { BAILIAN_CONFIG_DIR : configDir } ,
97+ ) ;
98+ expect ( exitCode , stderr ) . toBe ( 0 ) ;
99+ const data = parseStdoutJson < { security_token ?: string } > ( stdout ) ;
100+ expect ( data . security_token ) . toBe ( "sts-...oken" ) ;
101+ expect ( stdout ) . not . toContain ( securityToken ) ;
102+ } finally {
103+ rmSync ( configDir , { recursive : true , force : true } ) ;
104+ }
105+ } ) ;
106+
84107 test ( "config set 缺少 --key / --value 时报用法错误并退出 (2)" , async ( ) => {
85108 const { stderr, exitCode } = await runCommandE2e ( CONFIG_ROUTES , [ "config" , "set" , "--quiet" ] ) ;
86109 expect ( exitCode , stderr ) . toBe ( 2 ) ;
0 commit comments