Child pages
  • Groups
Skip to end of metadata
Go to start of metadata


As at Open-AudIT 2.0 we have changed the way Groups are used within Open-AudIT. Groups used to be the way to assign a user rights to devices. A user had a level of access to a group (or groups). This is no longer the case.

As at Open-AudIT 2.0, users are assigned a role (or roles) and access is based upon the organisations a user has access to. Groups are used mainly for reporting convenience and Baselines within Open-AudIT Enterprise.

How Does it Work?

Groups are used as  simple lists of devices that match the required conditions. They no longer (as at 2.0) support returning different attribute lists for display. If requested using JSON they return a list of's only. If requested using the web interface, they return the standard column attribute list.

Creating a Group

A group can be created using the web interface if a user has a role that contains the group::create permission. Go to menu: Manage -> Groups -> Create Groups. There is also a create button on the collection page. A user must include the filter clause in the where filter, ie - WHERE @filter. This is required so Open-AudIT can return only those devices a user has access rights to. Examples are on the Help -> Defaults -> Default Groups page (see below).

View Users Details

Go to menu: Manage-> Groups -> List Groups.

You will see a list of groups. You can view a group by clicking on the blue view icon. You can also edit or delete groups.

Default Groups

There are sixteen default groups. They are below. The default group definitions can also be found in the application at Help -> Defaults -> Default Groups. You will see a list of the default groups and the attributes used to create them.

mysql> SELECT name FROM groups;
| name                                  |
| All Devices                           |
| Apple Computers                       |
| Centos Computers                      |
| Computers                             |
| Computers                             |
| Debian Computers                      |
| Linux Computers                       |
| Open-AudIT Enterprise Managed Devices |
| Printers                              |
| Public IP Devices                     |
| RedHat Computers                      |
| Routers                               |
| Switches                              |
| Windows Computers                     |
| Windows Servers                       |
| Windows Workstations                  |
16 rows in set (0.00 sec)

Database Schema

The schema for the database is below. It can also be found in the application is the user has database::read permission by going to menu: Admin -> Database -> List Tables, then clicking on the "groups" table.

CREATE TABLE `groups` (
  `id` int(10) unsigned NOT NULL AUTO_INCREMENT,
  `org_id` int(10) unsigned NOT NULL DEFAULT '1',
  `name` varchar(100) NOT NULL DEFAULT '',
  `description` text NOT NULL,
  `sql` text NOT NULL,
  `link` text NOT NULL,
  `expose` enum('y','n') NOT NULL DEFAULT 'y',
  `edited_by` varchar(200) NOT NULL DEFAULT '',
  `edited_date` datetime NOT NULL DEFAULT '2000-01-01 00:00:00',
  PRIMARY KEY (`id`)

Example Database Entry

         id: 15
     org_id: 1
       name: Windows Servers
description: Devices with type = computer and os_name like Windows Server.
        sql: SELECT DISTINCT( FROM system WHERE @filter AND system.type = 'computer' AND os_name LIKE '%windows%server%'
     expose: y
  edited_by: system
edited_date: 2016-11-28 04:53:59

API / Web Access

You can access the /groups collection using the normal Open-AudIT JSON based API. Just like any other collection. Please see the API documentation for further details.

API Routes

Request MethodIDActionResulting FunctionPermission RequiredURL ExampleNotesExample Response
creategroups::create/groupsInsert a new groups entry.groups_create.json
readgroups::read/groups/{id}Returns a groups details.groups_read.json
updategroups::update/groups/{id}Update an attribute of a groups entry.groups_update.json
deletegroups::delete/groups/{id}Delete a groups entry.groups_delete.json
collectiongroups::read/groupsReturns a list of groups.groups_collection.json

Web Application Routes

In addition to the above, when accessing Open-AudIT using a web browser.

Request MethodIDActionResulting FunctionPermission RequiredURL ExampleNotes
GETncreatecreate_formgroups::create/groups/createDisplays a standard web form for submission to POST /groups.
GETyupdateupdate_formgroups::update/groups/{id}/updateShow the group details with the option to update attributes using PATCH to /groups/{id}
GETnimportimport_formgroups::create/groups/importDisplays a standard web form for submission to POST /groups/import.
POSTnimportimportgroups::create/groups/importImport multiple groups using a CSV.