Hypergate’s SmartAccess Feature

At Hypergate we constantly improve our products and develop new features which help you to ensure better usability and even better security. Introducing Hypergate’s newest feature: SmartAccess.

SmartAccess is a local rule engine which allows the IT administrator to use Context Data such as Geofences, WIFI, requested resource etc. to trigger pre-programmed actions. With SmartAccess you can gain full control over when, where and how their employees get access to specific data.

To enable the SmartAccess service no additional infrastructure or network is needed.

Set Context Data, define Actions

SmartAccess gives you the tools to define a rule under what conditions access should be granted and how. A rule will be expressed in a JavaScript which preforms actions based Context Data. These can be summarised to the following:

Context Data

Geo-Fencing

Network Based

Time Based

Actions

User interaction

Network requests

Accept / Deny access

Let’s start with an example

Your sales team neither want to compromise on security nor on usability when they are in the office.
They just want the highest level of convenience which means directly accessing internal websites without additional security measures in place.
Since they are travelling quite a lot, it would be smart to step up the security whenever they are not in the headquarter.

Set up

Easily define, that when a member of the sales team is within your internal WIFI, authentication happens without any friction.
If a member of the sales team wants to authenticate from outside, you additionally ask for a Biometric validation (i.e. Fingerprint or Face ID).

// check if currently connected to the internal wifi
if (context.wifi_ssid == "papers_internal") { 
  // directly accept authentication request
  return environment.accept(); 
} else {
  // additionally ask for fingerprint
  var wasSuccessful = environment.requestBiometrics(); 
  if (wasSuccessful) {
    // accept authentication request after fingerprint was accepted
    environment.accept(); 
  }
}
// deny authentication request
environment.deny(); 

To achieve this, SmartAccess does not require any additional infrastructure or backend components. All the processing is done in a secure way on the managed device. To give you an impression how powerful SmartAccess is, you can have a look at the passed context as well as the available events and actions:

// This data will be gathered on the device:
var context = {
"event": "AUTHENTICATOR_INITIAL_AUTHENTICATION",
"resource": "HTTP/hypergate.com",
"requesting_package_name": "com.android.chrome",
"platform": "android",
"os_version_code": 28,
"os_version": "9.0",
"username": "ale",
"account_expiry": 3456789678,
"password_expiry": 6789067890,
"tgt_expiry": 3456789,
"wifi_ssid": "papers_internal",
"activity_type": "IN_VEHICLE",
"country": "CH",
"fence": [
  "office"
],
"local_time": "01.01.2020+0200",
"timestamp": 567890987654,
"custom_payload": {
  "groups": [
    "HR",
    "MANAGEMENT"
   ],
  "secret_question": "What was your first dogs name?",
  "secret_answer": "Bello"
}
}
Available events:

An event is a hook, when SmartAccess is triggered. It is propagated as part of the context and is usually the first thing to check to assure your code is running at the right time.  Available events are:

Event Description
AUTHENTICATOR_OPEN Triggered when the Hypergate Authenticator application is opened
AUTHENTICATOR_INITIAL_AUTHENTICATION Triggered before a TGT is requested
AUTHENTICATOR_SERVICE_AUTHENTICATION Triggered before a Service Ticket is requested
AUTHENTICATOR_CHANGE_PASSWORD Triggered before the password change flow starts
UTILS_ON_USER_ACTIVITY_CHANGE Triggered after the user activity changed (i.e. from “stil”l to “walking”)
UTILS_ON_EXIT_GEOFENCE Triggered after any of the configured geofences is exited
UTILS_ON_IN_GEOFENCE Triggered after any of the configured geofences is entered
UTILS_ON_COUNTRY_UPDATE Triggered after the user country changed
FILES_OPEN Triggered after the Hypergate Files application is opened
FILES_LIST_DIRECTORY Triggered before a folder content is listed in Hypergate Files
FILES_READ_FILE Triggered before a file is opened in Hypergate Files
FILES_WRITE_FILE Triggered before a file is written in Hypergate Files

Actions

Actions allow you to interact with the user, make network requests or accept and deny the request. All the actions are also emulated in our SmartAccess configurator for testing at http://config.hypergate.com/tabs/smartaccess .

// the following methods can be called to control business logic (javascript syntax)
environment.store(key, payload): void // store data
environment.load(key, defaultValue): string // load previously stored data
environment.showAlert(title, message): void // show an alert
environment.showDialog(title, message): string // show a dialog with user input
environment.requestBiometrics(): boolean // request biometric authentication
environment.get(url, headers = [{'key': string, 'value': string}]): result // get webservice request
environment.post(url, body, headers = [{'key': 'Authorization', 'value': 'ApiKey xyz'}]): result // post webservice request
environment.put(url, body, headers = []): result // put webservice request
environment.delete(url, headers = []): result // delete webservice request
environment.accept(): void // accept / approve request
environment.deny(): void // deny / reject request
utils.needleInHaystack(needle, haystack): boolean // helper class for in list search

Use Cases

These are the currently available methods, with further updates, we will gradually add more methods. This very powerful feature set allows us to cover use cases such as:

  • Increase security level based on
    • Location
    • Time, Date (i.e. Expiring access), or even Day (i.e. Weekdays only)
    • Requested resource (i.e. intranet.com vs. secure.intranet.com)
    • Action (i.e. validate secret question before changing password)
  • Reporting
    • Report failed authentication attempts
    • Report to backend when entering / leaving geofence
  • Business rules:
    • Start / Stop tracking time when entering / leaving a geofence
    • Set out of office reminder when outside of the country

These are just some examples to give you an impression of what might be possible. They are by no means complete. To give you an impression of how easy it is to develop such rules, we developed a configurator which emulates Hypergates behaviour. You can find it (including some samples) at https://config.hypergate.com

Smart Access is available for Hypergate Professional Android and coming soon to Hypergate iOS. Please reach out to us if you have questions regarding Smart Access.

See how it works

Hypergate Files

Is a very simple file browser that provides seamless access to on-premise network shares. Let your users collaborate freely with their teams and edit all files directly on their mobile devices. All file types are supported by their native apps, no special viewer, editor or custom implementation, just pure usability.

Hypergate Authenticator

Delivers a seamless and secure Single Sign-On solution integrating directly with Active Directory. The solution leverages industry standards like Kerberos to provide the best possible user experience without compromising on security. Save IT support costs by allowing your users to change or reset their expired passwords on their own devices, no computer needed.

Similar Stories