Table of Contents |
---|
Introduction
Devices are the core item of interest to Open-AudIT.
...
A device in Open-AudIT has an Open-AudIT specific name. This is distinct from its hostname, dns hostname, sysName or any other retrieved attribute. Open-AudIT will populate the name attribute based on the information it has determined about a device. The name can be overwritten by the user at any time. Where possible, the first option will be chosen and where possible on subsequent audits, will be changed to the first option: hostname, sysName, dns_hostname, sysName, IP address.
Creating a Devices Entry
...
A device can be created using the web interface if a user has a role that contains the devices::create permission. Go to menu: Manage-> Devices -> Create Devices. There is also a create button on the collection page.
Open-AudIT automatically populates attributes of devices that have been found during the audit process. However, it is possible to add devices manually in 3 different ways:
- Manual input.
Filling in the relevant attributes for the device. - Copy and paste an audit report.
We can add devices by pasting the text found in an audit report. - Upload an audit report file.
Upload a report file containing devices information.
View Device Details
Go to menu: Manage -> Devices -> List Devices.
You will see a list of devices. This view allows you export the list of devices in CSV and JSON format.
You can view all the device's details by clicking on the blue purple view icon.
Import Multiple Devices
It is possible to import one or many devices using a CSV file, Audit Script Result, or a NMIS Nodes file.
...
You should use a header line containing the names of the columns you wish to populate, then your data lines below that.
Code Block | ||||||
---|---|---|---|---|---|---|
| ||||||
"name","org_id","type","ip" "mail","1","computer","192.168.1.110" "router","1","router","192.168.1.1" "laser","1","printer","192.168.1.10" |
Export Devices
...
Finally, we obtain a CSV file with our results by pressing the "Export" button.
Database Schema
The database schema
...
can
...
be found in the application
...
is the user has database::read permission by going to menu: Admin -> Database -> List Tables, then clicking on the
...
Code Block | ||||
---|---|---|---|---|
| ||||
CREATE TABLE `system` (
`id` int(10) unsigned NOT NULL AUTO_INCREMENT,
`uuid` varchar(100) NOT NULL DEFAULT '',
`name` varchar(200) NOT NULL DEFAULT '',
`ip` varchar(45) NOT NULL DEFAULT '',
`hostname` varchar(100) NOT NULL DEFAULT '',
`dns_hostname` varchar(100) NOT NULL DEFAULT '',
`domain` varchar(100) NOT NULL DEFAULT '',
`dns_domain` varchar(100) NOT NULL DEFAULT '',
`dbus_identifier` varchar(255) NOT NULL DEFAULT '',
`fqdn` text NOT NULL,
`description` text NOT NULL,
`type` varchar(50) NOT NULL DEFAULT '',
`comments` text NOT NULL,
`icon` varchar(50) NOT NULL DEFAULT '',
`os_group` varchar(50) NOT NULL DEFAULT '',
`os_family` varchar(50) NOT NULL DEFAULT '',
`os_name` varchar(100) NOT NULL DEFAULT '',
`os_version` varchar(50) NOT NULL DEFAULT '',
`attached_system_id` int(10) DEFAULT NULL,
`manufacturer` varchar(100) NOT NULL DEFAULT '',
`model` varchar(200) NOT NULL DEFAULT '',
`serial` varchar(200) NOT NULL DEFAULT '',
`uptime` varchar(50) NOT NULL DEFAULT '',
`form_factor` varchar(50) NOT NULL DEFAULT '',
`os_bit` tinyint(3) unsigned NOT NULL DEFAULT '0',
`memory_count` int(10) unsigned NOT NULL DEFAULT '0',
`processor_count` tinyint(3) unsigned NOT NULL DEFAULT '0',
`os_installation_date` date NOT NULL DEFAULT '2000-01-01',
`printer_port_name` varchar(50) NOT NULL DEFAULT '',
`printer_shared` varchar(50) NOT NULL DEFAULT '',
`printer_shared_name` varchar(50) NOT NULL DEFAULT '',
`printer_color` enum('y','n','') NOT NULL DEFAULT '',
`printer_duplex` enum('y','n','') NOT NULL DEFAULT '',
`status` varchar(100) NOT NULL DEFAULT '',
`environment` enum('production','dev','dr','eval','pre-prod','test','train','uat') NOT NULL DEFAULT 'production',
`class` enum('desktop','laptop','tablet','workstation','server','virtual server','virtual desktop','hypervisor','') NOT NULL DEFAULT '',
`function` varchar(100) NOT NULL DEFAULT '',
`owner` varchar(100) NOT NULL DEFAULT '',
`org_id` int(10) unsigned NOT NULL DEFAULT '1',
`location_id` int(10) unsigned NOT NULL DEFAULT '1',
`location_level` varchar(100) NOT NULL DEFAULT '',
`location_suite` varchar(100) NOT NULL DEFAULT '',
`location_room` varchar(100) NOT NULL DEFAULT '',
`location_rack` varchar(100) NOT NULL DEFAULT '',
`location_rack_position` varchar(100) NOT NULL DEFAULT '',
`location_rack_size` int(10) unsigned NOT NULL DEFAULT '0',
`location_latitude` float(10,6) NOT NULL,
`location_longitude` float(10,6) NOT NULL,
`asset_number` varchar(50) NOT NULL DEFAULT '',
`vm_server_name` varchar(150) NOT NULL DEFAULT '',
`vm_system_id` int(10) unsigned DEFAULT NULL,
`vm_group` varchar(150) NOT NULL DEFAULT '',
`cluster_name` varchar(150) NOT NULL DEFAULT '',
`cluster_type` varchar(150) NOT NULL DEFAULT '',
`invoice_id` int(10) unsigned DEFAULT NULL,
`purchase_invoice` varchar(50) NOT NULL DEFAULT '',
`purchase_order_number` varchar(50) NOT NULL DEFAULT '',
`purchase_cost_center` varchar(50) NOT NULL DEFAULT '',
`purchase_vendor` varchar(100) NOT NULL DEFAULT '',
`purchase_date` date NOT NULL DEFAULT '2000-01-01',
`purchase_service_contract_number` varchar(255) NOT NULL DEFAULT '',
`lease_expiry_date` date NOT NULL DEFAULT '2000-01-01',
`purchase_amount` varchar(50) NOT NULL DEFAULT '',
`warranty_duration` int(5) unsigned NOT NULL DEFAULT '0',
`warranty_expires` date NOT NULL DEFAULT '2000-01-01',
`warranty_type` enum('','24x7x365','9x5x5','Next Business Day') NOT NULL DEFAULT '',
`switch_system_id` int(10) DEFAULT NULL,
`switch_port` int(10) unsigned NOT NULL DEFAULT '0',
`patch_panel` varchar(45) NOT NULL DEFAULT '',
`patch_panel_port` int(10) unsigned NOT NULL DEFAULT '0',
`wall_port` varchar(100) NOT NULL DEFAULT '',
`contact_name` varchar(50) NOT NULL DEFAULT '',
`service_number` varchar(100) NOT NULL DEFAULT '',
`service_provider` varchar(100) NOT NULL DEFAULT '',
`service_type` varchar(100) NOT NULL DEFAULT '',
`service_plan` varchar(100) NOT NULL DEFAULT '',
`service_network` varchar(100) NOT NULL DEFAULT '',
`unlock_pin` varchar(100) NOT NULL DEFAULT '',
`serial_imei` varchar(100) NOT NULL DEFAULT '',
`serial_sim` varchar(100) NOT NULL DEFAULT '',
`nmis_group` varchar(50) NOT NULL DEFAULT '',
`nmis_name` varchar(50) NOT NULL DEFAULT '',
`nmis_role` varchar(50) NOT NULL DEFAULT '',
`nmis_export` enum('y','n') NOT NULL DEFAULT 'n',
`oae_manage` enum('y','n') NOT NULL DEFAULT 'y',
`snmp_oid` text NOT NULL,
`sysDescr` text NOT NULL,
`sysObjectID` varchar(255) NOT NULL DEFAULT '',
`sysUpTime` varchar(255) NOT NULL DEFAULT '',
`sysContact` varchar(255) NOT NULL DEFAULT '',
`sysName` varchar(255) NOT NULL DEFAULT '',
`sysLocation` varchar(255) NOT NULL DEFAULT '',
`first_seen` datetime NOT NULL DEFAULT '2000-01-01 00:00:00',
`last_seen` datetime NOT NULL DEFAULT '2000-01-01 00:00:00',
`last_seen_by` varchar(150) NOT NULL DEFAULT '',
`last_user` varchar(150) NOT NULL DEFAULT '',
`omk_uuid` text NOT NULL,
PRIMARY KEY (`id`),
KEY `ip` (`ip`),
KEY `name` (`name`)
) ENGINE=InnoDB AUTO_INCREMENT=40 DEFAULT CHARSET=utf8; |
A typical entry looks as below.
...
theme | Eclipse |
---|---|
language | text |
...
details button for the table.
API / Web Access
You can access the
...
collection using the normal Open-AudIT JSON based API. Just like any other collection. Please
...
see The Open-AudIT API documentation for further details
...
Access is provided as part of a roles permissions. Summaries is a standard resource and can have create, read, update and delete permissions.
...
.
...
API Routes
Request Method | ID | Action | Resulting Function | Permission Required | URL Example | Notes | Example Response |
---|---|---|---|---|---|---|---|
POST | n | create | devices::create | /devices | Insert a new (manual) devices entry. | ||
GET | y | read | devices::read | /devices/{id} | Returns a devices details. | ||
PATCH | y | update | devices::update | /devices/{id} | Update an attribute of a devices entry. | ||
GET | n | collection | devices::read | /devices | Returns a list of devices. | ||
POST | n | import | import | devices::create | /devices/import | Import multiple devices using a CSV. |
Web Application Routes
Request Method | ID | Action | Resulting Function | Permission Required | URL Example | Notes |
---|---|---|---|---|---|---|
GET | n | create | create_form | devices::create | /devices/create | Displays a standard web form for submission to POST /devices. |
GET | y | update | update_form | devices::update | /devices/{id} | Show the devices details with the option to update attributes using PATCH to /devices/{id} |
GET | n | import | import_form | devices::create | /devices/import | Displays a standard web form for submission to POST /devices/import. |
...