6
6
7
7
class TrustedProxyTest extends TestCase
8
8
{
9
+ private $ headerAll = Request::HEADER_X_FORWARDED_FOR | Request::HEADER_X_FORWARDED_HOST | Request::HEADER_X_FORWARDED_PORT | Request::HEADER_X_FORWARDED_PROTO | Request::HEADER_X_FORWARDED_AWS_ELB ;
10
+
9
11
/**
10
12
* Test that Symfony does indeed NOT trust X-Forwarded-*
11
13
* headers when not given trusted proxies
@@ -34,7 +36,7 @@ public function test_request_does_not_trust()
34
36
public function test_does_trust_trusted_proxy ()
35
37
{
36
38
$ req = $ this ->createProxiedRequest ();
37
- $ req ->setTrustedProxies (['192.168.10.10 ' ], Request:: HEADER_X_FORWARDED_ALL );
39
+ $ req ->setTrustedProxies (['192.168.10.10 ' ], $ this -> headerAll );
38
40
39
41
$ this ->assertEquals ('173.174.200.38 ' , $ req ->getClientIp (), 'Assert trusted proxy x-forwarded-for header used ' );
40
42
$ this ->assertEquals ('https ' , $ req ->getScheme (), 'Assert trusted proxy x-forwarded-proto header used ' );
@@ -48,7 +50,7 @@ public function test_does_trust_trusted_proxy()
48
50
*/
49
51
public function test_trusted_proxy_sets_trusted_proxies_with_wildcard ()
50
52
{
51
- $ trustedProxy = $ this ->createTrustedProxy (Request:: HEADER_X_FORWARDED_ALL , '* ' );
53
+ $ trustedProxy = $ this ->createTrustedProxy ($ this -> headerAll , '* ' );
52
54
$ request = $ this ->createProxiedRequest ();
53
55
54
56
$ trustedProxy ->handle ($ request , function ($ request ) {
@@ -62,7 +64,7 @@ public function test_trusted_proxy_sets_trusted_proxies_with_wildcard()
62
64
*/
63
65
public function test_trusted_proxy_sets_trusted_proxies_with_double_wildcard_for_backwards_compat ()
64
66
{
65
- $ trustedProxy = $ this ->createTrustedProxy (Request:: HEADER_X_FORWARDED_ALL , '** ' );
67
+ $ trustedProxy = $ this ->createTrustedProxy ($ this -> headerAll , '** ' );
66
68
$ request = $ this ->createProxiedRequest ();
67
69
68
70
$ trustedProxy ->handle ($ request , function ($ request ) {
@@ -76,7 +78,7 @@ public function test_trusted_proxy_sets_trusted_proxies_with_double_wildcard_for
76
78
*/
77
79
public function test_trusted_proxy_sets_trusted_proxies ()
78
80
{
79
- $ trustedProxy = $ this ->createTrustedProxy (Request:: HEADER_X_FORWARDED_ALL , ['192.168.10.10 ' ]);
81
+ $ trustedProxy = $ this ->createTrustedProxy ($ this -> headerAll , ['192.168.10.10 ' ]);
80
82
$ request = $ this ->createProxiedRequest ();
81
83
82
84
$ trustedProxy ->handle ($ request , function ($ request ) {
@@ -89,7 +91,7 @@ public function test_trusted_proxy_sets_trusted_proxies()
89
91
*/
90
92
public function test_get_client_ips ()
91
93
{
92
- $ trustedProxy = $ this ->createTrustedProxy (Request:: HEADER_X_FORWARDED_ALL , ['192.168.10.10 ' ]);
94
+ $ trustedProxy = $ this ->createTrustedProxy ($ this -> headerAll , ['192.168.10.10 ' ]);
93
95
94
96
$ forwardedFor = [
95
97
'192.0.2.2 ' ,
@@ -113,7 +115,7 @@ public function test_get_client_ips()
113
115
*/
114
116
public function test_get_client_ip_with_muliple_ip_addresses_some_of_which_are_trusted ()
115
117
{
116
- $ trustedProxy = $ this ->createTrustedProxy (Request:: HEADER_X_FORWARDED_ALL , ['192.168.10.10 ' , '192.0.2.199 ' ]);
118
+ $ trustedProxy = $ this ->createTrustedProxy ($ this -> headerAll , ['192.168.10.10 ' , '192.0.2.199 ' ]);
117
119
118
120
$ forwardedFor = [
119
121
'192.0.2.2 ' ,
@@ -136,7 +138,7 @@ public function test_get_client_ip_with_muliple_ip_addresses_some_of_which_are_t
136
138
*/
137
139
public function test_get_client_ip_with_muliple_ip_addresses_all_proxies_are_trusted ()
138
140
{
139
- $ trustedProxy = $ this ->createTrustedProxy (Request:: HEADER_X_FORWARDED_ALL , '* ' );
141
+ $ trustedProxy = $ this ->createTrustedProxy ($ this -> headerAll , '* ' );
140
142
141
143
$ forwardedFor = [
142
144
'192.0.2.2 ' ,
@@ -294,7 +296,7 @@ public function test_is_reading_text_based_configurations()
294
296
// trust *all* "X-Forwarded-*" headers
295
297
$ trustedProxy = $ this ->createTrustedProxy ('HEADER_X_FORWARDED_ALL ' , '192.168.1.1, 192.168.1.2 ' );
296
298
$ trustedProxy ->handle ($ request , function (Request $ request ) {
297
- $ this ->assertEquals ($ request ->getTrustedHeaderSet (), Request:: HEADER_X_FORWARDED_ALL ,
299
+ $ this ->assertEquals ($ request ->getTrustedHeaderSet (), $ this -> headerAll ,
298
300
'Assert trusted proxy used all "X-Forwarded-*" header ' );
299
301
300
302
$ this ->assertEquals ($ request ->getTrustedProxies (), ['192.168.1.1 ' , '192.168.1.2 ' ],
@@ -351,7 +353,7 @@ protected function createProxiedRequest($serverOverRides = [])
351
353
// which is likely something like this:
352
354
$ request = Request::create ('http://localhost:8888/tag/proxy ' , 'GET ' , [], [], [], $ serverOverRides , null );
353
355
// Need to make sure these haven't already been set
354
- $ request ->setTrustedProxies ([], Request:: HEADER_X_FORWARDED_ALL );
356
+ $ request ->setTrustedProxies ([], $ this -> headerAll );
355
357
356
358
return $ request ;
357
359
}
0 commit comments