Forum Discussion
Client Auth + Pool Base URI
Hi today i have a VS with client cert request form client side profile i have a pool with 7 members and attached irule to VS :
when CLIENTSSL_CLIENTCERT {
set cert [b64encode [SSL::cert 0]]
}
when HTTP_REQUEST {
if { [info exists cert] } {
if { [ class mutch [string tolower [HTTP]] start_with dg_urls] } {
HTTP::header insert Certificate "$cert"
}
}
in the datagroup i have url "/app1" and "/app2" now I need do when some go to "/app1" in http request go to other pool and i create this irule
when CLIENTSSL_CLIENTCERT {
set cert [b64encode [SSL::cert 0]]
}
when HTTP_REQUEST {
if { [info exists cert] } {
if { [ class mutch [string tolower [HTTP]] start_with dg_urls] } {
HTTP::header insert Certificate "$cert"
}
if { [string tolower [HTTP::uri]] starts_with "/app1" } {
pool app1
}
}
}
now all its work but in Network Map i not see that this pool app1 is attach to VS i know when we do that on LTM policy i can see to pool attached to VS but i can do it in policy i need that if client go to /APP1 insert $cert header to webserver and fowerding a pool
Can I do this in any way for see the app1 pool also in "network map" ? If no can I do any way that irule be more effective ?
- Kevin_Stewart
Employee
If you're making pool selections in an iRule, these relationships aren't going to show up in the network map. You could minimally attach any pool to the VIP, and then override it in the iRule.
On the behavior of the iRule, a few questions.
- There's no else condition for '[info exists cert]'. What happens if cert doesn't exist?
- There's no else condition for the class match. What happens if the URI is not in the data group?
- There's no else condition for the pool selection. What happens if the URI doesn't start with '/app1'?
- youssef1
Cumulonimbus
Hi,
You can use both, Irule for built and forward the header then a LTM Policy to Manage Pool.
could you do that or you have constraints?
Regars
- igorzhuk
Altostratus
There's no else condition for '[info exists cert]'. What happens if cert doesn't exist? drop There's no else condition for the class match. What happens if the URI is not in the data group? not insert a cert header There's no else condition for the pool selection. What happens if the URI doesn't start with '/app1'? go to default port in vs now all work fine
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