Forum Discussion
disable ram cache while when get http error codes
In this particular setup I will use F5 devices which will also be loaded with the ASM-module (for other reasons) so I thought "hey, why not also inspect client-traffic?".
Of course there are other devices that deep inspect the traffic on the road (idp, antispyware, antivirus etc) but anything that doesnt bring (major) impact negatively on the performance and can (in total) bring a better hitrate regarding protecting the clients (but also protect rest of the world from the clients :-) is of interrest in my case.
Regarding the SSL question im thinking of SSL-terminate both in the F5 and in the application firewall which sit behind the forward-http proxies (from the F5 point of view). Not only in order to be able to use ASM on the flows but also to be able to use oneconnect for the SSL traffic (but this will be investigated further - some docs says oneconnect with /32-mask should work when SSL-termination is being used in F5, others says it doesnt).
The particular setup uses two vservers: VS_FORWARD-HTTP and VS_FORWARD-HTTPS along with a oneconnect profile set to /32-mask (so even if the client uses lets say 10 connections towards the VS_FORWARD-HTTPS ip the idea is that only a single tcp-session (per client) will reach the forward-http proxy which the traffic loadbalances to).
And since F5 is a FPGA platform (if we take VIPRION 2400 as example) I assume that the performance impact enabling ASM wont be that large compared to if one does this on a x86 based platform?
I also hope that F5 in future will expand the IDP capabilities so this test is simply if this can be done and how well it works (both in quality but also performance).
- Nikoolayy1Feb 14, 2023
MVP
Good question! Never needed to do positional parameters, so I am also wondering.
Have you tried making manual policy with positional parameters and then to export it in JSON to see how it looks and if you can then use this in the OPENAPI/SWAGGER file as to see if it is supported (as a note your file is YAML not Json but that is just the look) https://support.f5.com/csp/article/K52644614
F5 XC/distributed cloud has SWAGGER/OPENAPI discovery but that can't be done with on-prem appliance 😯
- ChrisThuysFeb 21, 2023
Altocumulus
The resolution to this issue is to use the WildCards Order TAB to set the order the URLS should be processed.
- Nikoolayy1Feb 21, 2023
MVP
Now I see what you mean and I even saw an article when you mentioned that the wildcard url order was the issue.
K13220614: The BIG-IP ASM system may not enforce wildcard URLs that are created without the wildcard order specified
https://support.f5.com/csp/article/K13220614
- Chris_ThuysFeb 23, 2023
Altocumulus
Sometimes it's all about the keywords you search on. Mine were all wrong. I was focused on the jSON file rather than the Wildcard URL's.
- Nikoolayy1Oct 04, 2023
MVP
By the way ChrisThuys / Chris_Thuys I seem to found a workaround as for example if you create the policy from the start like the one below it will result in the following order but you need to create asm policy from the start with the correct order as if you modify the openapi/swagger file it may not change the order.
Outside of that I am trying to use positional parameters as to trigger wildcard url match and still figuring out if wildcard parameter names are supported by F5 AWAF/ASM when importing a swagger/openapi file. I do not know if you have tried this as well.
"paths": {"/{path}": {"get": {"description": "Returns a user based on a single ID, if the user does not have access to the pet","operationId": "findPetById","produces": ["application/json","application/xml","text/xml","text/html"],"parameters": [{"name": "path","in": "path","description": "ID of pet to fetch","required": true,"type": "string"}],"responses": {"200": {"description": "pet response","schema": {"$ref": "#/definitions/Pet"}},"default": {"description": "unexpected error","schema": {"$ref": "#/definitions/ErrorModel"}}}}},"/{path1}/{path2}": {"get": {"description": "Returns a user based on a single ID, if the user does not have access to the pet","operationId": "findPetById","produces": ["application/json","application/xml","text/xml","text/html"],"parameters": [{"name": "path1","in": "path","description": "ID of pet to fetch","required": true,"type": "string"},{"name": "path2","in": "path","description": "ID of pet to fetch","required": true,"type": "string"}],"responses": {"200": {"description": "pet response","schema": {"$ref": "#/definitions/Pet"}},"default": {"description": "unexpected error","schema": {"$ref": "#/definitions/ErrorModel"}}}}}},
Recent Discussions
Related Content
* Getting Started on DevCentral
* Community Guidelines
* Community Terms of Use / EULA
* Community Ranking Explained
* Community Resources
* Contact the DevCentral Team
* Update MFA on account.f5.com