Forum Discussion
SSL/NON-SSL
Hi there,
i originally posted this in the security group but a member said Id be better off posting it here. He said i could achieve what I wanted (please see below) with an irule butif I have the APM I wouldnt need an irule?
Any help really appreciated.
"First post and I know very little about the F5 big-ip other than we have them. So apologies there
We are looking to implement a solution whereby users must use SSL to access a particular web app if they have the correct client cert. For users who don't have the cert yet we want the solution to automatically revert to use HTTP for this app and continue. We want it to be seamless to the user.
We plan on using the BIG-IP for the SSL termination at the perimeter.
Can the big-ip detect that the users machine doesn't have the cert and redirect to http? Or am I way off course here?
Thanks"
- Michael_YatesNimbostratusHi Willda71,
- Michael_YatesNimbostratusAfter doing some additional tinkering, you might want to ignore the SSL Profile and handle everything in an iRule (it is much easier to manage what is happening.
when HTTP_REQUEST { log local0. "Beginning HTTP Request Event." SSL::cert mode request if { [SSL::cert count] == 0 } { log local0. "SSL Certificate Count equals Zero. Redirecting." HTTP::redirect "http://www.google.com" } }
- Brian_Deitch_11Historic F5 AccountIf the back end server needs to see what client cert was presented, you can throw it in the HTTP header
when HTTP_REQUEST { if { [SSL::cert count] > 0 } { set thecert [findstr [X509::whole [SSL::cert 0]] "-----BEGIN CERTIFICATE-----" 28 "-----END CERTIFICATE-----"] set certnospace [string map -nocase {" " "" \n "" \r ""} $thecert] HTTP::header insert ssl.client_cert $certnospace } }
- Willda71_98408NimbostratusThanks so much for that...
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