File tree Expand file tree Collapse file tree 2 files changed +15
-19
lines changed Expand file tree Collapse file tree 2 files changed +15
-19
lines changed Original file line number Diff line number Diff line change 5
5
## [ v1.2.3 (2025-06-16)] ( https://github.com/onlime/laravel-http-client-global-logger/compare/v1.2.2...v1.2.3 )
6
6
7
7
- [ Security] Body key obfuscation (` obfuscate.body_keys ` config) is now also applied to response body, both for JSON or form-styled content.
8
- - Refactored ` obfuscateBody() ` for performance to run single regex replacements on message body.
9
8
10
9
## [ v1.2.2 (2025-06-16)] ( https://github.com/onlime/laravel-http-client-global-logger/compare/v1.2.1...v1.2.2 )
11
10
Original file line number Diff line number Diff line change @@ -16,24 +16,21 @@ protected function obfuscateBody(string $message): string
16
16
{
17
17
$ replacement = config ('http-client-global-logger.obfuscate.replacement ' );
18
18
19
- // Build regex pattern for keys to obfuscate
20
- $ keysPattern = implode ('| ' , array_map (
21
- fn (string $ key ) => preg_quote ($ key , '/ ' ),
22
- config ('http-client-global-logger.obfuscate.body_keys ' )
23
- ));
24
-
25
- // JSON-style: "(key1|key2)": "someValue"
26
- $ message = preg_replace (
27
- '/(?<="(?: ' . $ keysPattern . ')":")[^"]*(?=")/mU ' ,
28
- $ replacement ,
29
- $ message
30
- );
31
- // form-style: key1=someValue& or key2=someValue$
32
- $ message = preg_replace (
33
- '/(?<=\b(?: ' . $ keysPattern .')=)[^&]*(?=&|$)/ ' ,
34
- $ replacement ,
35
- $ message
36
- );
19
+ foreach (config ('http-client-global-logger.obfuscate.body_keys ' ) as $ key ) {
20
+ $ quoted = preg_quote ($ key , '/ ' );
21
+ // JSON-style: "key":"value"
22
+ $ message = preg_replace (
23
+ '/(?<=" ' .$ quoted .'":")[^"]*(?=")/mU ' ,
24
+ $ replacement ,
25
+ $ message
26
+ );
27
+ // form-style: key=value (until & or end)
28
+ $ message = preg_replace (
29
+ '/(?<=\b ' . $ quoted .'=)[^&]*(?=&|$)/ ' ,
30
+ $ replacement ,
31
+ $ message
32
+ );
33
+ }
37
34
38
35
return $ message ;
39
36
}
You can’t perform that action at this time.
0 commit comments