Skip to content

Commit 3f92ac1

Browse files
Merge pull request #195 from AikidoSec/test-blocking-on-spring-2.7
Add blocking & rate limiting e2e tests for SpringBoot2.7
2 parents 8a515a4 + 5776544 commit 3f92ac1

File tree

3 files changed

+18
-1
lines changed

3 files changed

+18
-1
lines changed

end2end/spring_boot_2.7_postgres.py

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -20,3 +20,5 @@
2020
)
2121

2222
spring_boot_postgres_app.test_all_payloads()
23+
spring_boot_postgres_app.test_blocking()
24+
spring_boot_postgres_app.test_rate_limiting()

sample-apps/SpringBoot2.7Postgres/src/main/java/com/example/demo/HtmlController.java

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -44,4 +44,10 @@ public String benchmark_route() throws InterruptedException {
4444
Thread.sleep(1); // sleep 1ms
4545
return "OK";
4646
}
47+
48+
@GetMapping("/test_ratelimiting_1")
49+
@ResponseBody
50+
public String test_ratelimiting_route() throws InterruptedException {
51+
return "OK";
52+
}
4753
}

sample-apps/SpringBoot2.7Postgres/src/main/java/com/example/demo/SetUserFilter.java

Lines changed: 10 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,15 @@
11
package com.example.demo;
22

3+
import dev.aikido.agent_api.SetUser;
34
import org.springframework.core.annotation.Order;
45
import org.springframework.stereotype.Component;
56

67
import javax.servlet.*;
8+
import javax.servlet.http.HttpServletRequest;
79
import java.io.IOException;
810

11+
import static dev.aikido.agent_api.SetUser.setUser;
12+
913

1014
@Component
1115
@Order(0)
@@ -16,7 +20,12 @@ public void doFilter(
1620
ServletRequest request,
1721
ServletResponse response,
1822
FilterChain chain) throws IOException, ServletException {
19-
//setUser(new SetUser.UserObject("123", "John Doe"));
23+
HttpServletRequest httpRequest = (HttpServletRequest) request;
24+
if (httpRequest.getHeader("user") != null) {
25+
// Useful for end2end tests:
26+
String id = httpRequest.getHeader("user");
27+
setUser(new SetUser.UserObject(id, "John Doe"));
28+
}
2029
chain.doFilter(request, response);
2130
}
2231
}

0 commit comments

Comments
 (0)