Forum Discussion

Alfonso_Santia2's avatar
Icon for Altostratus rankAltostratus
Jan 17, 2021

Block access to apps by browser. Allow only iPhone or Android accesss

Customer has an application that they want access only through the mobile device app.

They have recently found that the application can be accessed through any browser.

We have configured the following iRule but it is not working:


  if { ([HTTP::header User-Agent] contains "iphone") or ([HTTP::header User-Agent] contains "Android") } {


  if { ([HTTP::header User-Agent] contains "(IE|Mozilla|Safari|Chrome|Opera)") } {





Any ideas how to achieve this?



5 Replies

  • Hi Alfonso,

    this iRule should work. However I strongly discourage the use of it. User-Agent Headers can be forged easily. Anyone who knows how to access Developer Tools in a browser can change his User-Agent string to whatever they want.

    when HTTP_REQUEST {
        if {([string tolower [HTTP::header "User-Agent"]] contains "iphone") || ([string tolower [HTTP::header "User-Agent"]] contains "android") } {
        } else {
    • Alfonso_Santia2's avatar
      Icon for Altostratus rankAltostratus

      Hello Daniel,


      Thanks for your reply. Will try this out but gave caution to customer as well.

      What do you suggest how best to go about this requirement - allow only the access through mobile app (iPhone and Android) ?

      • Daniel_Wolf's avatar
        Icon for MVP rankMVP

        Without knowing much about the app and the setup (does the customer have APM maybe?) it is difficult to provide a good answer.

        Maybe client certificate validation, which can be configured in the client-side SSL profile, could be a better solution?

  • Hi Every One ,

    We have about the Same requirement , Please update irule above works or face some problem.