I'm new to F5 and please excuse my terminology as I am learning.
I've built up an APM logon process which presents a TOTP logon screen that collects TOTP and calls an API to validate it, the logon screen also contains a check box to manage their account. That check box sets a session parameter and I check for it as a part of logon, if value is yes, one goes on a different logon flow.
While effective, The check box is ugly .............. and I am looking to make it pretty.
I've been searching on customization of logon page but am not sure I am using correct search terms. How can one make a button or http link and when clicked sets a parameter which I can route a flow based upon it?
thanks in advance
In Standard customization, you can put any code directly into any of the customization boxes. In Modern customization you can't. So for, say a logon page, you can put whatever code you want directly into the logon page fields, like this example that uses a span tag to apply CSS attributes to the input field:
Then you end up with this:
With "Modern" customization, it's a little harder because you can't just place arbitrary code into those boxes. You have to apply styles into the user stylesheet and code into the user code area. Here's what that looks like in the UI, using the example doc'd here:
Finally I'm sure you're probably aware that APM has a built-in OTP mechanism. It's split into 3 parts: Generate the OTP (with OTP generate agent), Ask user for OTP (with logon page agent), then validate OTP (using OTP validate agent. Any of these 3 steps can be substituted for custom functions because you can read and (over)write any APM session variables with whatever data you want using iRules and VPE rules. So to use these OTP verify you could just load the value you got from your API into the OTP session variable. The variable names that APM uses for this are:
(in a per-request policy it's "subsession" instead of "session")
Any further questions please let us know. APM has a lot of flexibility but it can be confusing at times.