Audit & Admin Views

Overview

Audit views track ISE administrator activity including GUI/CLI logins, configuration changes, and system events. Critical for compliance, change management, and security monitoring.

ADMINISTRATOR_LOGINS

ISE admin portal login attempts - who accessed ISE GUI/CLI.

Key Columns

Column Type Description

TIMESTAMP_TIMEZONE

TIMESTAMP

Login attempt time

ADMIN_NAME

VARCHAR2

Administrator username

ADMIN_IP_ADDRESS

VARCHAR2

Source IP of admin

ADMIN_TYPE

VARCHAR2

Admin type (Internal, External)

ADMIN_INTERFACE

VARCHAR2

Interface used (GUI, CLI, API)

ADMIN_PASSED

VARCHAR2

'Pass' or 'Fail'

FAILURE_REASON

VARCHAR2

Reason for failed login

ISE_NODE

VARCHAR2

ISE node accessed

ADMIN_SESSION_ID

VARCHAR2

Session identifier

ADMIN_ROLE

VARCHAR2

Admin role assigned

ADMIN_GROUP

VARCHAR2

Admin group membership

Common Queries

Recent Admin Logins

netapi ise dc query "
SELECT
    TO_CHAR(TIMESTAMP_TIMEZONE, 'YYYY-MM-DD HH24:MI:SS') AS time,
    ADMIN_NAME,
    ADMIN_IP_ADDRESS,
    ADMIN_INTERFACE,
    ADMIN_PASSED,
    ISE_NODE
FROM ADMINISTRATOR_LOGINS
WHERE TIMESTAMP_TIMEZONE > SYSDATE - 1
ORDER BY TIMESTAMP_TIMEZONE DESC
FETCH FIRST 50 ROWS ONLY
"

Failed Admin Logins

netapi ise dc query "
SELECT
    TO_CHAR(TIMESTAMP_TIMEZONE, 'YYYY-MM-DD HH24:MI') AS time,
    ADMIN_NAME,
    ADMIN_IP_ADDRESS,
    ADMIN_INTERFACE,
    FAILURE_REASON
FROM ADMINISTRATOR_LOGINS
WHERE ADMIN_PASSED = 'Fail'
    AND TIMESTAMP_TIMEZONE > SYSDATE - 7
ORDER BY TIMESTAMP_TIMEZONE DESC
FETCH FIRST 30 ROWS ONLY
"

Admin Activity Summary

netapi ise dc query "
SELECT
    ADMIN_NAME,
    COUNT(*) AS total_logins,
    SUM(CASE WHEN ADMIN_PASSED = 'Pass' THEN 1 ELSE 0 END) AS passed,
    SUM(CASE WHEN ADMIN_PASSED = 'Fail' THEN 1 ELSE 0 END) AS failed,
    COUNT(DISTINCT ADMIN_IP_ADDRESS) AS unique_ips,
    MAX(TIMESTAMP_TIMEZONE) AS last_login
FROM ADMINISTRATOR_LOGINS
WHERE TIMESTAMP_TIMEZONE > SYSDATE - 30
GROUP BY ADMIN_NAME
ORDER BY total_logins DESC
"

Admin Access by Interface

netapi ise dc query "
SELECT
    ADMIN_INTERFACE,
    COUNT(*) AS logins,
    SUM(CASE WHEN ADMIN_PASSED = 'Pass' THEN 1 ELSE 0 END) AS passed,
    COUNT(DISTINCT ADMIN_NAME) AS unique_admins
FROM ADMINISTRATOR_LOGINS
WHERE TIMESTAMP_TIMEZONE > SYSDATE - 7
GROUP BY ADMIN_INTERFACE
ORDER BY logins DESC
"

CHANGE_CONFIGURATION_AUDIT

Configuration change tracking - all ISE configuration modifications.

Key Columns

Column Type Description

TIMESTAMP_TIMEZONE

TIMESTAMP

Change time

ADMIN_NAME

VARCHAR2

Admin who made change

ADMIN_IP_ADDRESS

VARCHAR2

Admin’s source IP

ADMIN_INTERFACE

VARCHAR2

Interface used (GUI, CLI, API)

OBJECT_TYPE

VARCHAR2

Type of object changed

OBJECT_NAME

VARCHAR2

Name of object changed

OPERATION_TYPE

VARCHAR2

Operation (Create, Update, Delete)

OPERATION_STATUS

VARCHAR2

Success or failure

DETAILS

CLOB

Detailed change description

OLD_VALUES

CLOB

Previous configuration

NEW_VALUES

CLOB

New configuration

MESSAGE_CODE

VARCHAR2

Change message code

ISE_NODE

VARCHAR2

ISE node where change was made

Common Queries

Recent Configuration Changes

netapi ise dc query "
SELECT
    TO_CHAR(TIMESTAMP_TIMEZONE, 'YYYY-MM-DD HH24:MI') AS time,
    ADMIN_NAME,
    OBJECT_TYPE,
    OBJECT_NAME,
    OPERATION_TYPE,
    OPERATION_STATUS
FROM CHANGE_CONFIGURATION_AUDIT
WHERE TIMESTAMP_TIMEZONE > SYSDATE - 1
ORDER BY TIMESTAMP_TIMEZONE DESC
FETCH FIRST 50 ROWS ONLY
"

Changes by Object Type

netapi ise dc query "
SELECT
    OBJECT_TYPE,
    COUNT(*) AS changes,
    SUM(CASE WHEN OPERATION_TYPE = 'Create' THEN 1 ELSE 0 END) AS creates,
    SUM(CASE WHEN OPERATION_TYPE = 'Update' THEN 1 ELSE 0 END) AS updates,
    SUM(CASE WHEN OPERATION_TYPE = 'Delete' THEN 1 ELSE 0 END) AS deletes
FROM CHANGE_CONFIGURATION_AUDIT
WHERE TIMESTAMP_TIMEZONE > SYSDATE - 7
GROUP BY OBJECT_TYPE
ORDER BY changes DESC
FETCH FIRST 20 ROWS ONLY
"

Policy Changes

netapi ise dc query "
SELECT
    TO_CHAR(TIMESTAMP_TIMEZONE, 'YYYY-MM-DD HH24:MI') AS time,
    ADMIN_NAME,
    OBJECT_NAME,
    OPERATION_TYPE,
    ADMIN_INTERFACE
FROM CHANGE_CONFIGURATION_AUDIT
WHERE TIMESTAMP_TIMEZONE > SYSDATE - 7
    AND (
        UPPER(OBJECT_TYPE) LIKE '%POLICY%'
        OR UPPER(OBJECT_TYPE) LIKE '%AUTHORIZATION%'
        OR UPPER(OBJECT_TYPE) LIKE '%AUTHENTICATION%'
    )
ORDER BY TIMESTAMP_TIMEZONE DESC
FETCH FIRST 30 ROWS ONLY
"

Admin Change Activity

netapi ise dc query "
SELECT
    ADMIN_NAME,
    COUNT(*) AS total_changes,
    COUNT(DISTINCT OBJECT_TYPE) AS object_types,
    SUM(CASE WHEN OPERATION_TYPE = 'Delete' THEN 1 ELSE 0 END) AS deletions,
    MAX(TIMESTAMP_TIMEZONE) AS last_change
FROM CHANGE_CONFIGURATION_AUDIT
WHERE TIMESTAMP_TIMEZONE > SYSDATE - 30
GROUP BY ADMIN_NAME
ORDER BY total_changes DESC
"

Deletions (High-Risk Changes)

netapi ise dc query "
SELECT
    TO_CHAR(TIMESTAMP_TIMEZONE, 'YYYY-MM-DD HH24:MI') AS time,
    ADMIN_NAME,
    OBJECT_TYPE,
    OBJECT_NAME,
    ADMIN_IP_ADDRESS
FROM CHANGE_CONFIGURATION_AUDIT
WHERE OPERATION_TYPE = 'Delete'
    AND TIMESTAMP_TIMEZONE > SYSDATE - 7
ORDER BY TIMESTAMP_TIMEZONE DESC
FETCH FIRST 50 ROWS ONLY
"

ADMIN_USERS

ISE administrator accounts - admin user definitions.

netapi ise dc query "
SELECT
    ADMIN_NAME,
    ADMIN_GROUP,
    ADMIN_TYPE,
    STATUS,
    LAST_LOGIN
FROM ADMIN_USERS
ORDER BY ADMIN_NAME
"

OPENAPI_OPERATIONS

REST API operations - API calls to ISE.

Key Columns

Column Type Description

TIMESTAMP_TIMEZONE

TIMESTAMP

API call time

ADMIN_NAME

VARCHAR2

API user/service account

CLIENT_IP_ADDRESS

VARCHAR2

Source IP

HTTP_METHOD

VARCHAR2

GET, POST, PUT, DELETE

REQUEST_URI

VARCHAR2

API endpoint called

RESPONSE_CODE

NUMBER

HTTP response code

RESPONSE_MESSAGE

VARCHAR2

Response status

ISE_NODE

VARCHAR2

Node that handled request

Common Queries

Recent API Calls

netapi ise dc query "
SELECT
    TO_CHAR(TIMESTAMP_TIMEZONE, 'HH24:MI:SS') AS time,
    ADMIN_NAME,
    HTTP_METHOD,
    REQUEST_URI,
    RESPONSE_CODE
FROM OPENAPI_OPERATIONS
WHERE TIMESTAMP_TIMEZONE > SYSDATE - 1
ORDER BY TIMESTAMP_TIMEZONE DESC
FETCH FIRST 50 ROWS ONLY
"

API Errors (4xx/5xx)

netapi ise dc query "
SELECT
    TO_CHAR(TIMESTAMP_TIMEZONE, 'YYYY-MM-DD HH24:MI') AS time,
    ADMIN_NAME,
    HTTP_METHOD,
    REQUEST_URI,
    RESPONSE_CODE,
    RESPONSE_MESSAGE
FROM OPENAPI_OPERATIONS
WHERE RESPONSE_CODE >= 400
    AND TIMESTAMP_TIMEZONE > SYSDATE - 1
ORDER BY TIMESTAMP_TIMEZONE DESC
FETCH FIRST 30 ROWS ONLY
"

API Usage by Endpoint

netapi ise dc query "
SELECT
    REQUEST_URI,
    COUNT(*) AS calls,
    COUNT(DISTINCT ADMIN_NAME) AS unique_users,
    SUM(CASE WHEN RESPONSE_CODE < 400 THEN 1 ELSE 0 END) AS success,
    SUM(CASE WHEN RESPONSE_CODE >= 400 THEN 1 ELSE 0 END) AS errors
FROM OPENAPI_OPERATIONS
WHERE TIMESTAMP_TIMEZONE > SYSDATE - 1
GROUP BY REQUEST_URI
ORDER BY calls DESC
FETCH FIRST 20 ROWS ONLY
"

USER_PASSWORD_CHANGES

Password change audit - internal user password modifications.

netapi ise dc query "
SELECT
    TO_CHAR(TIMESTAMP_TIMEZONE, 'YYYY-MM-DD HH24:MI') AS time,
    USERNAME,
    ADMIN_NAME,
    CHANGE_TYPE,
    STATUS
FROM USER_PASSWORD_CHANGES
WHERE TIMESTAMP_TIMEZONE > SYSDATE - 30
ORDER BY TIMESTAMP_TIMEZONE DESC
FETCH FIRST 50 ROWS ONLY
"

Compliance Patterns

Daily Admin Activity Report

netapi ise dc query "
SELECT
    TO_CHAR(TRUNC(TIMESTAMP_TIMEZONE), 'YYYY-MM-DD') AS date,
    COUNT(DISTINCT ADMIN_NAME) AS active_admins,
    SUM(CASE WHEN ADMIN_PASSED = 'Pass' THEN 1 ELSE 0 END) AS logins,
    SUM(CASE WHEN ADMIN_PASSED = 'Fail' THEN 1 ELSE 0 END) AS failed_logins
FROM ADMINISTRATOR_LOGINS
WHERE TIMESTAMP_TIMEZONE > SYSDATE - 30
GROUP BY TRUNC(TIMESTAMP_TIMEZONE)
ORDER BY date DESC
"

Change Summary Report

netapi ise dc query "
SELECT
    TO_CHAR(TRUNC(TIMESTAMP_TIMEZONE), 'YYYY-MM-DD') AS date,
    COUNT(*) AS changes,
    COUNT(DISTINCT ADMIN_NAME) AS admins,
    SUM(CASE WHEN OPERATION_TYPE = 'Delete' THEN 1 ELSE 0 END) AS deletions
FROM CHANGE_CONFIGURATION_AUDIT
WHERE TIMESTAMP_TIMEZONE > SYSDATE - 30
GROUP BY TRUNC(TIMESTAMP_TIMEZONE)
ORDER BY date DESC
"

After-Hours Admin Access

netapi ise dc query "
SELECT
    TO_CHAR(TIMESTAMP_TIMEZONE, 'YYYY-MM-DD HH24:MI') AS time,
    ADMIN_NAME,
    ADMIN_IP_ADDRESS,
    ADMIN_INTERFACE
FROM ADMINISTRATOR_LOGINS
WHERE ADMIN_PASSED = 'Pass'
    AND TIMESTAMP_TIMEZONE > SYSDATE - 7
    AND (
        TO_CHAR(TIMESTAMP_TIMEZONE, 'HH24') < '06'
        OR TO_CHAR(TIMESTAMP_TIMEZONE, 'HH24') > '22'
    )
ORDER BY TIMESTAMP_TIMEZONE DESC
"

See Also