ClientIPVerifier

Stable version 1.0.0 (Compatible with OutSystems 11)
Published on 1 Jun by 
5.0
 (2 ratings)

ClientIPVerifier

Details
The ClientIPVerifier component allows restrict the access to applications for specific IP Networks or a list of IP addresses. The goal is to enable the IP filtering on Reactive and Mobile applications, similar with what we can achieve with the InternalOnly flag on Traditional web applications.
Read more

Use the ClientIPVerifier webblock from the ClientIPVerifier_Lib on your pages/screens. This webblock will validate if the client that is accessing the application has an allowed IP address or not. If the IP is allowed, the user will be able to browse the page/screen. If the IP is not allowed an exception is raised and the page will not be displayed to the user.

The component also contains an action "IsClientIPAllowed" that should be used whenever is needed to check if the client IP is allowed to browse the webpage/screen.

The component has two site properties where we can specify which IP addresses are allowed to to access the application where the component is used:

  • Allowed IPs - The list of IP addresses that can access the applications;
  • AllowedNetworks - The list of network ranges that can access the applications;

Note: if both site properties are empty, no IP validation is done.


There are two ways of using the component, please check the demo application for all the details:


Apply the protection to the full application


When we want to apply the protection to all application pages/screens, the component should be used at the Layout Level (please check the page ClientIPVerificationLayoutLevel on the demo application).

Important remarks:

  • We should protect all Screen Aggregates with one additional filter "IsClientIPAllowed()".
  • We should protect all Data Actions calling the "IsClientIPAllowed" action and only returning data if this action returns true.
  • We should protect the login screen by calling the "IsClientIPAllowed" action and only allow the login if this action returns true.


Apply the protection to specific application pages/screens


When we want to apply the IP protection to specific application pages/screens (please check the page ClientIPVerificationPageLevel on the demo application)

Important remarks:

  • We should protect all Screen Aggregates with one additional filter "IsClientIPAllowed()".
  • We should protect all Data Actions calling the "IsClientIPAllowed" action and only returning data if this action returns true.

On the demo application we also have a custom error page and error handling for Invalid IP addresses, please check the OnException event to understand how to redirect to this specific page.

What’s new (1.0.0)
Reviews (0)