Summary: | add skeleton-key http authentication to AccessLogSampler | ||
---|---|---|---|
Product: | JMeter - Now in Github | Reporter: | Eric Jensen <ej> |
Component: | HTTP | Assignee: | JMeter issues mailing list <issues> |
Status: | NEW --- | ||
Severity: | enhancement | CC: | p.mouawad |
Priority: | P4 | ||
Version: | 2.3.2 | ||
Target Milestone: | --- | ||
Hardware: | All | ||
OS: | All | ||
Attachments: |
SkeletonAuthManager.java, SkeletonAuthorizationFilter.java, and FilterChain.java
updated version that grabs the username regexp from a property |
Created attachment 23037 [details]
updated version that grabs the username regexp from a property
This issue has been migrated to GitHub: https://github.com/apache/jmeter/issues/2175 |
Created attachment 22889 [details] SkeletonAuthManager.java, SkeletonAuthorizationFilter.java, and FilterChain.java The attached source files add a SkeletonAuthorizationFilter for the AccessLogSampler that reads the HTTP basic auth field of the log file and uses it plus a pre-configured skeleton key password via the "skeleton.password" property to authenticate the corresponding request. This is useful for load testing sites whose logs include behaviors that would differ across users. The test environment can be updated such that everyone's password is "skeleton" and authentication will be performed appropriately. This is achieved without patching any existing jmeter source. Also included is a FilterChain which allows specifying multiple filters as properties and calls them all (in no particular order), i.e. # use cookies per ip (session) and basic auth accesslog.sampler.filterchain.1=org.apache.jmeter.protocol.http.util.accesslog.SkeletonAuthorizationFilter accesslog.sampler.filterchain.2=org.apache.jmeter.protocol.http.util.accesslog.SessionFilter PS: someone should add the ability for the log parsers to stop the test when they hit the end of the file PPS: i had to implement TestCloneable on these Filters otherwise they would be silently ignored by AccessLogSampler This is bad behavior and potentially a bug, as LogFilter does not implement it.