PortalKeeper 4.1.0 Beta - Stop coding. Think agent.

posted by Aricie - 12/9/2014
Aricie Active Since 6/28/2005

reviews Ask a Question

2 users are watching this product.

A complete IDE to create your web agents on DNN - Application firewall, Web bots farm, Http handlers, Control adapters, Web services. Sample agents and video tutorials. 100% free and open source. Available on CodePlex. Module 34001
  • $0.00 Package + Source available on CodePlex
  • $70.00 1-hour-supportGet support to configure the module on your application
  • $315.00 5-hour-supportGet support with possible bug correction
  • $672.00 12-hour-supportGet advanced support with possible custom development
  • $1,138.00 25-hour-supportGet premium support with possible remote access


Add To Cart
  • DNN module enthusiasts since 2003



Think agent

What is it ?

Make your own automated agents and custom rules with PortalKeeper. This DNN module implements a sequential Rule Engine embedded in several distinct components. These will save you time and add value to your business on a daily basis. In a few clicks, anyone can create an agent to respond to a specific situation - be it a threat or an opportunity. Without writing a line of code.


Application firewall

This firewall takes the form of a super Http Module where you can attach your rule condition evaluation and actions execution to the inner events of the Asp.Net and Page life cycles.

Default rules include:
  • Response Filter : Change the response text before it is streamed to the client. A riche combination of string transformations, html xpath queries and token replace are demonstrated by default.
  • Output Caching : Use a set of strategies to trigger and finely control ASP.Net response caching with great performance gains.
  • Dos and DDos protection : Monitor incoming Http calls with rate caps in order to filter out rogue requests.
  • Critical accounts protection: Define a restricted perimeter for administrator logins based on IPs, aliases, countries etc.
  • Detect and/or prevent simultaneous connexions from the same user accounts
  • Mobile devices redirection: That rule illustrate setting up a custom condition from accessing a global Dnn and Http context and evaluating custom regular expressions against it.
  • Super User backdoor : Set up an easy autologin secret url under restricted client source conditions
  • Geographically limited registration : Adjust your registering settings according to the detected client country.
  • Warn IE 6 users : Display a page or module message according to custom conditions.

Web bots farm

In that component, the engine takes the form of a farm of scheduled bots embedded within the native DNN task scheduler.
An instance of each bot can additionally be proposed for customization to regular DNN registered account.

Sample Bots include:
  • Keep Alive Pings - Performs Http Requests to a series of urls to keep the target websites up and monitor response times, and sends alert emails in case of unavailability.
  • Real Estate Monitoring - Monitor classifieds and update a Google spreadsheets document with targeted results
  • Google nearby places - Monitors custom Google queries and send alerts when new results are available. That bot also illustrates maintaining a pool of available open proxies to be used for subsequent Http requests.
  • Bitcoin trading bots - those bots connect to Bitcoin exchange APIs and issue orders based on custom trading strategies. The bitcoin material is available as a separate open-source project

Rest Services

That engine let you define Rest Web services with an engine associated with each method.


HttpHandlers are the most general and flexible components to respond to HttpRequests. Dynamic Handlers based on the core engine let you define template based pages, streaming services, or any kind of hosted web server component.

Samples Handlers include:
  • KML WMS Service - A fully functional tiled WMS service leveraging the SharpMap GIS components suite, and serving layers of Google format KML files from DNN file system.
  • Private Torrent tracker - A standalone torrent tracker supporting announce and scrap torrent client requests, built with the Monotorrent library.

Control Adapters

Control Adapters let you target kinds of ASP.Net controls and override their behavior, globally to the application, on specific extension points.

Samples Adapters include:
  • ReCaptcha Adapter - An adapter that overrides the default DNN Captcha, known for a vulnerability, and replaces it with Google ReCaptcha.
  • Event Viewer page Size adapter - A simple yet convenient adapter to the event viewer admin DNN module, that saves the results page size in the user personalization profile, to override the default 10 items result.
  • UrlControl Adapter - An adapter that enhances the original DNN file selector with an image picker from a 3rd party library.

Provider based

Condition and Action types are made from easy to implement providers. Look at the included sample providers to create your own types of conditions and actions together with a dedicated UI for custom properties.

Included are the following providers:
  • Condition providers:
    • Sub Conditions
    • Dynamic expression
    • Client Source (Firewall only)
    • DNN Page (Firewall only)
    • Portal Alias (Firewall only)
    • Membership (Firewall only)
    • Request caps (Firewall only)
  • Action providers:
    • Log Event
    • Send Email
    • Web Action
    • Define Variables
    • Multiple Actions
    • Loop/While Actions
    • Object Actions
    • String Filter
    • File Read/ File Write Actions
    • File Manager
    • Serialize/Deserialize Actions
    • Run SQL
    • Load/Save User Profiles
    • Auto Login (Firewall only)
    • Log Off (Firewall only)
    • Redirect (Firewall only)
    • Customize Environment (Firewall only)
    • Display Message (Firewall only)
    • Read/Write Google spreadsheets


What's New ?

  • [4.0.1]
    • Fixed: LogViewer ascx adapter with PageRecords redirection
    • Fixed: A regression with firewall request event steps in action providers
    • New: Firewall Critical Accounts protection condition tied to a dynamic DNN profile property
    • New: Action Provider leveraging Google Spreadsheet API and sample bot.
    • New: Firewall General Purpose Html Filter Rule.
    • New: Firewall Output Caching rule, with fine tuning.
    • New: Url Control adapter with image preview.
    • New: Option to share web clients, cookies for distinct requests, and to include a referer.
  • [3.0.1]
    • DNN 7.05 compliant
    • New features: Action tree expression mode for Multiple Action Provider,allows pager to compute the key with expression
    • New features: Action command for User bots, allows to define user bots command like buttons
    • New action providers: File Reader Action provider, allows to read a file to a given String variable, given its path by dynamic expressions
    • New action providers: File Write Action provider, allows to write a content to a file, given its path and the content to write by dynamic expressions
    • New action providers: File Manager Action provider,allows to browse or delete files and folders, given a parent path by dynamic expressions
    • Upgrate API for Bitcoin Bots
    • Bug fixes
  • [3.0.0]
    • DNN 6.x compliant
    • New powerful agent engine
    • Update firewall engine
    • New business agents
    • Updated firewall and security agents
    • Step-by-step documentation
    • Web crawler
    • Bug fixes



Product License

Aricie End-User License Agreement

Please review the following license agreement before installing or using the licensed Aricie software product and/or its related materials.

Definitions: This Aricie End-User Software License Agreement is a legal agreement between you (either as an individual user, corporation or single entity) and Aricie, SA.for a product which includes computer software, and may include associated media, printed materials, and online or electronic documentation. By exercising your rights to install the SOFTWARE PRODUCT, you agree to be bound by the terms of this EULA, including the limitations and warranty disclaimers.

If you do NOT agree to the terms of this EULA, please return the SOFTWARE PRODUCT and immediately destroy all copies of the SOFTWARE PRODUCT in your possession.


The SOFTWARE PRODUCT is protected by copyright laws and international copyright treaties, as well as other intellectual property laws and treaties.


This is a license agreement, and NOT an agreement for sale. Aricie retains ownership of the copy of THE SOFTWARE in your possession, and all copies you may be licensed to make. Aricie retains all rights not expressly granted to you in this LICENSE. Aricie hereby grants to you, and you accept, a non-exclusive, non-transferable license to use, copy and modify THE SOFTWARE only as authorized below.

Provided that you have accepted the terms contained herein, this EULA grants you the following rights:

A) If you purchased a STANDARD LICENSE: You are granted a license to install the SOFTWARE PRODUCT on a single production web server, and use it for a SINGLE DotNetNuke PARENT portal with UNLIMTED CHILD portals. You are also permitted to use the same license for non-production development or staging servers.

B) If you purchased a PROFESSIONAL LICENSE: You are granted a license to install the SOFTWARE PRODUCT on a single production web server, and use it for a SINGLE DotNetNuke installation (instance). You are also permitted to use the same license for non-production development or staging servers. You are further licensed to view the source code of the SOFTWARE PRODUCT and modify it for use as described above. Under no circumstances may the source code or products developed by using the source code be re-distributed in any form.

C) If you purchased a ENTERPRISE LICENSE: You are granted a license for a single developer (individual) within your organization to distribute the SOFTWARE PRODUCT royalty-free with an unlimited number of ASP.NET applications to an unlimited number of web servers, provided they are developed solely by that developer. At no time may the SOFTWARE PRODUCT be used by more than one individual at the same time for development purposes -- nor may the SOFTWARE PRODUCT be distributed for use with applications other than those developed by her/him. Any application with which the SOFTWARE PRODUCT is distributed must add significant functionality to the SOFTWARE PRODUCT and must not contain the same, or substantially the same, functionality as any Aricie product.

You are required to ensure that the SOFTWARE PRODUCT is not distributed in any form that allows it to be reused by any application other than that with which you distribute it. For example, if you install an ASP.NET control along with a packaged application on a customer's server, that customer is not permitted to use the control independent of your application.

D) For All Licenses: Regardless of the type of license purchased, if the SOFTWARE PRODUCT includes reusable software such as controls, components, plug-ins, stylesheets, etc. you may not use any of these independently of the SOFTWARE PRODUCT.

In no case shall you rent, lease, lend, redistribute nor re-license THE SOFTWARE PRODUCT or source code to a 3rd party individual or entity, except as outlined above. In no case shall you grant further redistribution rights for THE SOFTWARE PRODUCT to the end-users of your solution.


Termination. Without prejudice to any other rights, Aricie may terminate this EULA if you fail to comply with the terms and conditions of this EULA. In such event, you must destroy all copies of the SOFTWARE PRODUCT and all of its component parts, source code, associated documentation, and related materials.


All title and copyrights in and to the SOFTWARE PRODUCT (including but not limited to any images,photographs, animations, video, audio, music, text, and "applets" incorporated into the SOFTWARE PRODUCT), the accompanying printed materials, and any copies of the SOFTWARE PRODUCT are owned by Aricie except for certain portions for which Aricie has obtained redistribution rights from the title or copyright holder. The SOFTWARE PRODUCT is protected by U.S. copyright laws and international treaty provisions. Therefore, you must treat the SOFTWARE PRODUCT like any other copyrighted material.


NO WARRANTIES. Aricie expressly disclaims any warranty for the SOFTWARE PRODUCT. The SOFTWARE PRODUCT and any related documentation is provided "as is" without warranty of any kind, either express or implied, including, without limitation, the implied warranties of merchantability, fitness for a particular purpose, or non-infringement. The entire risk arising out of use or performance of the SOFTWARE PRODUCT remains with you.


NO LIABILITY FOR CONSEQUENTIAL DAMAGES. In no event shall Aricie or its distributors be liable for any damages whatsoever (including, without limitation, damages for loss of business profits, business interruption, loss of business information, or any other financial loss) arising out of the use of or inability to use this Aricie product (THE SOFTWARE PRODUCT) and related materials, even if Aricie has been advised of the possibility of such damages. Because some states do not allow the exclusion or limitation of liability for consequential or incidental damages, the above limitation may not apply to you.

If you have any question regarding this End User License Agreement, please email:

[email protected]