1. Introduction

 
Analytics Dashboard provides visual analytics of access related data based on the usage, performance, and events of Access Manager. The events are captured and filtered through Analytics Server. For more information about Analytics Server, click here.

The dashboard helps in visualizing the access patterns, tuning the policies, and getting insights about the usage of Access Manager in your environment. You can also monitor the real-time data access patterns to decide further actions.

Geolocation dashboard shows a map with the number of logged in users in a specific geographical location. This solution will demonstrate how to use Maxmind Geolocation Provider with Analytics.

Before using MaxMind, please read through the license agreement: https://www.maxmind.com/en/license_agreement

2. Develop Custom Geolocation Provider

 

2.1 Prerequisite

  1. Download MaxMind offline city database form here.
  2. Download MaxMind JAVA API files (geoip2-2.9.0.jar and maxmind-db-1.2.2.jar) from here.
    I have attached a zip file here which contains these two JAR files. MaxMind-API
  3. Copy nam-aggregator-core.jar from Access Manager Analytic server (/opt/novell/nam/aggregators)

2.2 Create Java Project and Develop Java Class

 
Create a java project and copy the JAVA code from the attached file. You need to have geoip2-2.9.0.jar, maxmind-db-1.2.2.jar and nam-aggregator-core.jar to your build path in order to compile and build the project.

MyMaxMindLocalDB.java

This JAVA code reads the IP address and makes a query to MaxMind offline DB to get the city and country details of the IP and returns a GraphGeoLocaBean object to Analytics Aggregator to fill the map with geolocation.

2.3 Export JAR and deploy

  1. Right click on the Java project and export as JAR file. I have attached my version of JAR file here for your convenience. LocationProvider
  2. Copy three JAR files (LocationProvider.jar, geoip2-2.9.0.jar and maxmind-db-1.2.2.jar) to Access Manager Analytic server (/opt/novell/nam/aggregators)
  3. Restart the aggregator using following command:
    /etc/init.d/novell-realtime restart
  4. Copy the offline MaxMind DB (GeoLite2-City.mmdb) to Analytic server (/var/opt/novell/maxmindDB)

2.4 Configure Analytics Servers

 
Open Admin Console and go to Devices -> Analytic Servers -> Edit and click on Geolocation Provider.

Enable Location Profiling and provide following information:

Geolocation Provider: Custom Provider
Provider Name: MyMaxMindLocationProvider
Java Class Path: com.microfocus.custom.geolocationcore.MyMaxMindLocalDB
Property Name: citydbfile
Value: /var/opt/novell/maxmindDB/GeoLite2-City.mmdb

27

Apply changes to Analytic servers.

3. Testing

 
Login to your NAM Protected Applications / Federation application from different geographic location you will see the county highlighted in the Analytics Geolocation dashboard.

28

Please feel free to contact me here if you have any issues.

1 vote, average: 5.00 out of 51 vote, average: 5.00 out of 51 vote, average: 5.00 out of 51 vote, average: 5.00 out of 51 vote, average: 5.00 out of 5 (1 votes, average: 5.00 out of 5)
You need to be a registered member to rate this post.
Loading...

Disclaimer: As with everything else at NetIQ Cool Solutions, this content is definitely not supported by NetIQ, so Customer Support will not be able to help you if it has any adverse effect on your environment.  It just worked for at least one person, and perhaps it will be useful for you too.  Be sure to test in a non-production environment.

Leave a Reply

No Comments
Koushik Halder
Oct 6, 2017
10:35 am
Reads:
526
Score:
5
Active Directory Authentication Automation Cloud Computing Cloud Security Configuration Customizing Data Breach DirXML Drivers End User Management Identity Manager Importing-Exporting / ICE/ LDIF Intelligent Workload Management IT Security Knowledge Depot LDAP Monitoring Open Enterprise Server Passwords Reporting Secure Access Supported Troubleshooting Workflow