GX Technology : Access Logging (MySQL)

Overview

The goal of the new access logging feature is to be able to ascertain access information for a given users and accounts within the axis tool. This will allow us in the future to determine a threshold that if passed will create an alert that there is a security incident at play.

 

NOTE:  This is a temporary solution, a longer term solution with data storage in Google needs to be in place prior to Parks onboarding to Axis in FY17 Q3. 

 

Goals

  • Track the following information:
    • Where a user is attempting system access from.
    • When a user performed a specific action
    • What action was performed
      • This could be anything from loading an account by swid to performing a search.
    • where in the tool the action took place from
    • What product was involved
    • What account was accessed
  • Encrypt sensitive information at rest
    • AES 256 with a rotating key will be used.
    • fields to encrypt
      • externalKey (This is the accountId or SWID)

Table: access

ColumnTypeExampleEncryptedIndexDescription
access_idINT1noPrimaryThe primary Id of the table (autoincrement)
user_idSMALLINT270noMUL

Correlates to the gxtools.users table outside of this database.

(FK to internal user records ID, NOT the actual DISID/HUBID)

timeINT1474568116noMULThe time of the access log in seconds
actionVARCHAR(64)account.getno 

The action that was performed.

Example:

  • account.search
  • account.get

This list will be dynamic as we add functionality to these logs, best way to find the definitoive actions would be to:

select unique action from access;

external_keyVARCHAR(128)

ImFvCKxykUjN299P9/Dvh+qnepY+u1RW2p8qtvOqnpyVLIXJrIb0pDTgPtbdGjLIVUh2eZ570k/5GPBIzl2kUw==

yesMUL

An encrypted swid or relation key depending on the action logged.

** AES256 w/ rotating key, stored in Vault.

product_idSMALLINT14no Correlates to the gxtools.products table outside of this database.
ipVARCHAR(44)255.255.255.255noMULA Encrypted string IP address of the support rep accessing the tool.
locationVARCHAR(128)com.disney.axis.account.service.OneIdAccountServiceno The package in the code that the action took place. Used to refine the action to different implementations.
request_idVARCHAR(36)ajsdkfyy-4u1io2-asdfhjio134-12i3uji1u23no The request id that we assign requests made to the tool. Correlates to the requests made to external services and errors

 

Log Locations

The log files are located on the database servers for each respective environment.

Axis Servers

 

 

Attachments:

gxaudit.access (application/gliffy+json)
gxaudit.access.png (image/png)