WebADE > What is the WebADE Developer Module? Last Published: July 24, 2012

What is the WebADE Developer Module?

The WebADE Developer Module was created in order to simplify the architecture required to run WebADE in an offsite development environment. Currently WebADE-based J2EE applications developed for the Province of BC will be deployed in an environment in which authentication is supplied by the Siteminder product and user repositories services are provided by web services provided by CAP.

The WebADE Developer Module provides authentication and user repository services in a simple fashion, based on a simple XML file. Once installed in a J2EE application, the Developer Module will provide a login screen that will authenticate users against an XML file. Secondly, a User Provider based on the same XML file is installed in WebADE to provide the User Provider services.

User Information Retrieval

WebADE usually retrieves extended user information from BC Government web services. This is not always practical when developing applications outside of the government extranet so the WebADE Developer Module provides an alternative.

The WebADE User API has been designed since version 4.1.x to accept pluggable user information providers. The developer module includes a user information provider that reads the user information from an XML file. We use this provider to replace the default government web services provider. This enables developers to build applications without the need to be connected via VPN to the BC Government extranet and web services. This also allows full control over user information when developing and testing applications. An example user information XML file is supplied in the distribution.

Authentication

The WebADE Developer Module includes a Servlet Request Filter used to authenticate the user. When the WebADE Developer Module Request Filter is mapped to your application it will first check if the user is currently known to WebADE. If the user is not currently known to WebADE the filter will either redirect the request to a login page or challenge you for basic authentication credentials (depends on the configuration of the filter). The filter then appends parameters to the request that tell WebADE who the user is.

Features

  • Form-based Authentication: Display a form login screen with a likeness to the CAP Common Login Page provided by the Province of BC. This mode provides features to simplify authentication in a development environment such as:
    • User List Drop Down: Shows the list of users that can be used to login to the application. The developer does not have to remember which ID's to use.
    • User List Drop Down Filter: Will only show users in the list that have actual authorizations to the application. As you cycle through the list of users, the roles assigned to the user is displayed on the login screen.
    • No Password: Do not enforce the use of passwords. This simplifies the testing process even further. This should only be used in a secure environment where the application is protected by other means such as firewalls.
  • Form+Basic Authentication: The module will detect if the incoming request is already encoded with basic credentials, and if so, it will authenticate using them rather than using the form login screen.
  • Basic Authentication: Will challenge the browser for credentials as it is specified by Basic Authentication.
  • Single Sign-On: Simulates single sign-on so that a user can go from one application to another without being challeneged again. This is helpful when developing cooperative applications that require jumping from one context to the other.

Architecture Diagram

WebADE Developer Module Architecture Diagram

Technical Information

The following are the base requirements:

  • J2EE 1.3 (JRun 4.0, Tomcat 4.x, Oracle 10g, Jetty)
  • Xerces 2.7 XML Parser
  • WebADE 4.2
  • Java SE 1.4