public async Task CodeBlockRealIPOnWhitelistBlacklistTest() { using ( var server = new TestServer( WebHostBuilderHelper.CreateCodeBuilder( new IPFilteringOptions { Whitelist = new List <string> { "192.168.0.10-192.168.10.20" }, Blacklist = new List <string> { "192.168.0.100-192.168.0.150" }, }))) { // Act RequestBuilder request = server.CreateRequest("/"); request.AddHeader("X-Real-IP", "192.168.0.120"); HttpResponseMessage response = await request.SendAsync("PUT"); // Assert Assert.AreEqual(HttpStatusCode.NotFound, response.StatusCode, "StatusCode != Not Found"); } }
public async Task CodeAllowRealIPNotOnBlacklist4Test() { using ( var server = new TestServer( WebHostBuilderHelper.CreateCodeBuilder( new IPFilteringOptions { DefaultBlockLevel = DefaultBlockLevel.None, Blacklist = new List <string> { "192.168.0.1" } }))) { // Act RequestBuilder request = server.CreateRequest("/"); request.AddHeader("X-Real-IP", "192.168.0.2"); HttpResponseMessage response = await request.SendAsync("PUT"); // Assert response.EnsureSuccessStatusCode(); Assert.AreEqual(HttpStatusCode.OK, response.StatusCode, "StatusCode != OK"); } }
public async Task CodeBlockAllNotFoundTest() { using var server = new TestServer(WebHostBuilderHelper.CreateCodeBuilder()); // Act HttpResponseMessage response = await server.CreateRequest("/").SendAsync("PUT"); // Assert Assert.AreEqual(HttpStatusCode.NotFound, response.StatusCode, "StatusCode != Not Found"); }
public async Task CodeBlockAllForbiddenTest() { using var server = new TestServer(WebHostBuilderHelper.CreateCodeBuilder(new IPFilteringOptions { HttpStatusCode = HttpStatusCode.Forbidden })); // Act HttpResponseMessage response = await server.CreateRequest("/").SendAsync("PUT"); // Assert Assert.AreEqual(HttpStatusCode.Forbidden, response.StatusCode, "StatusCode != Forbidden"); }
public async Task CodeAllowRealIPAllTest() { using var server = new TestServer(WebHostBuilderHelper.CreateCodeBuilder(new IPFilteringOptions { DefaultBlockLevel = DefaultBlockLevel.None })); // Act HttpResponseMessage response = await server.CreateRequest("/").SendAsync("PUT"); // Assert response.EnsureSuccessStatusCode(); Assert.AreEqual(HttpStatusCode.OK, response.StatusCode, "StatusCode != OK"); }
public async Task FileBlockAllNotFoundTest() { using (var server = new TestServer(WebHostBuilderHelper.CreateBlockFileBuilder())) { // Act RequestBuilder request = server.CreateRequest("/"); request.AddHeader("X-Real-IP", "192.168.0.1"); HttpResponseMessage response = await request.SendAsync("PUT"); Assert.AreEqual(HttpStatusCode.Unauthorized, response.StatusCode, "StatusCode != Unauthorized"); } }
public async Task FileAllowRealIPOnBlacklistTest() { using var server = new TestServer(WebHostBuilderHelper.CreateAllowFileBuilder()); // Act RequestBuilder request = server.CreateRequest("/"); request.AddHeader("X-Real-IP", "192.168.0.10"); HttpResponseMessage response = await request.SendAsync("PUT"); // Assert Assert.AreEqual(HttpStatusCode.Unauthorized, response.StatusCode, "StatusCode != Unauthorized"); }
public async Task FilePathBlockRealIPOnWhitelistBlacklistTest() { using var server = new TestServer(WebHostBuilderHelper.CreatePathBlockFileBuilder()); // Act RequestBuilder request = server.CreateRequest("/pathget"); request.AddHeader("X-Real-IP", "192.168.0.120"); HttpResponseMessage response = await request.SendAsync("GET"); // Assert Assert.AreEqual(HttpStatusCode.Unauthorized, response.StatusCode, "StatusCode != Not Found"); }
public async Task FilePathAllowRealIPNotOnBlacklistTest() { using var server = new TestServer(WebHostBuilderHelper.CreatePathAllowFileBuilder()); // Act RequestBuilder request = server.CreateRequest("/pathget"); request.AddHeader("X-Real-IP", "192.168.0.1"); HttpResponseMessage response = await request.SendAsync("GET"); // Assert response.EnsureSuccessStatusCode(); Assert.AreEqual(HttpStatusCode.OK, response.StatusCode, "StatusCode != OK"); }
public async Task FileAllowAllNotFoundTest2() { using var server = new TestServer(WebHostBuilderHelper.CreatePathBlockFileBuilder()); // Act RequestBuilder request = server.CreateRequest("/"); request.AddHeader("X-Real-IP", "192.168.0.1"); HttpResponseMessage response = await request.SendAsync("PUT"); // Assert response.EnsureSuccessStatusCode(); Assert.AreEqual(HttpStatusCode.OK, response.StatusCode, "StatusCode != OK"); }
public async Task FileAllowRealIPOnWhitelistBlacklistTest() { using (var server = new TestServer(WebHostBuilderHelper.CreateBlockFileBuilder())) { // Act RequestBuilder request = server.CreateRequest("/"); request.AddHeader("X-Real-IP", "192.168.0.10"); HttpResponseMessage response = await request.SendAsync("PUT"); // Assert response.EnsureSuccessStatusCode(); Assert.AreEqual(HttpStatusCode.OK, response.StatusCode, "StatusCode != OK"); } }
public async Task FileIgnoreGetTest() { using (var server = new TestServer(WebHostBuilderHelper.CreateIgnoreFileBuilder())) { // Act RequestBuilder request = server.CreateRequest("/ignoreget"); request.AddHeader("X-Real-IP", "192.168.0.1"); HttpResponseMessage response = await request.SendAsync("GET"); // Assert response.EnsureSuccessStatusCode(); Assert.AreEqual(HttpStatusCode.OK, response.StatusCode, "StatusCode != OK"); } }
public async Task CodeBlockForwarderForNotOnWhitelistTest() { using var server = new TestServer( WebHostBuilderHelper.CreateCodeBuilder( new IPFilteringOptions { Whitelist = new List <string> { "192.168.0.10-192.168.10.20" } })); // Act RequestBuilder request = server.CreateRequest("/"); request.AddHeader("X-Forwarded-For", "192.168.0.9, 192.168.0.10, 192.168.0.11"); HttpResponseMessage response = await request.SendAsync("PUT"); // Assert Assert.AreEqual(HttpStatusCode.NotFound, response.StatusCode, "StatusCode != Not Found"); }
public async Task CodeBlockRealIPNotOnWhitelist3Test() { using var server = new TestServer( WebHostBuilderHelper.CreateCodeBuilder( new IPFilteringOptions { Whitelist = new List <string> { "fe80::/10" } })); // Act RequestBuilder request = server.CreateRequest("/"); request.AddHeader("X-Real-IP", "::1"); HttpResponseMessage response = await request.SendAsync("PUT"); // Assert Assert.AreEqual(HttpStatusCode.NotFound, response.StatusCode, "StatusCode != Not Found"); }
public async Task CodeAllowForwardedForOnWhitelistTest() { using var server = new TestServer( WebHostBuilderHelper.CreateCodeBuilder( new IPFilteringOptions { Whitelist = new List <string> { "192.168.0.10-192.168.10.20" } })); // Act RequestBuilder request = server.CreateRequest("/"); request.AddHeader("X-Forwarded-For", "192.168.0.10, 192.168.0.9, 192.168.0.8"); HttpResponseMessage response = await request.SendAsync("PUT"); // Assert response.EnsureSuccessStatusCode(); Assert.AreEqual(HttpStatusCode.OK, response.StatusCode, "StatusCode != OK"); }
public async Task CodeAllowRealIPOnWhitelist3Test() { using var server = new TestServer( WebHostBuilderHelper.CreateCodeBuilder( new IPFilteringOptions { Whitelist = new List <string> { "fe80::/10" } })); // Act RequestBuilder request = server.CreateRequest("/"); request.AddHeader("X-Real-IP", "fe80::d503:4ee:3882:c586"); HttpResponseMessage response = await request.SendAsync("PUT"); // Assert response.EnsureSuccessStatusCode(); Assert.AreEqual(HttpStatusCode.OK, response.StatusCode, "StatusCode != OK"); }
public async Task CodeBlockRealIPOnBlacklist3Test() { using var server = new TestServer( WebHostBuilderHelper.CreateCodeBuilder( new IPFilteringOptions { DefaultBlockLevel = DefaultBlockLevel.None, Blacklist = new List <string> { "fe80::/10" } })); // Act RequestBuilder request = server.CreateRequest("/"); request.AddHeader("X-Real-IP", "fe80::d503:4ee:3882:c586"); HttpResponseMessage response = await request.SendAsync("PUT"); // Assert Assert.AreEqual(HttpStatusCode.NotFound, response.StatusCode, "StatusCode != Not Found"); }
public async Task CodeAllowRealIPOnWhitelist1Test() { using ( var server = new TestServer( WebHostBuilderHelper.CreateCodeBuilder( new IPFilteringOptions { Whitelist = new List <string> { "192.168.0.0/255.255.255.0" } }))) { // Act RequestBuilder request = server.CreateRequest("/"); request.AddHeader("X-Real-IP", "192.168.0.34"); HttpResponseMessage response = await request.SendAsync("PUT"); // Assert response.EnsureSuccessStatusCode(); Assert.AreEqual(HttpStatusCode.OK, response.StatusCode, "StatusCode != OK"); } }