AdminRules Rest API¶
Security¶
The Geofence Rest API is only accessible to users with the role ROLE_ADMIN.
Input/Output¶
Data Object Transfer¶
Both XML and JSON are supported for transfer of data objects. The default is XML. Alternatively, JSON may be used by setting the 'content-type' (POST) and 'accept' (GET) http headers to 'application/json' in your requests.
Encoding of an AdminRule in XML:
<AdminRule>
<id>..</id>
<priority>..</priority>
<userName>..</userName>
<roleName>..</roleName>
<addressRange>..</addressRange>
<workspace>..</workspace>
<access>..</access>
</AdminRule>
Encoding of a rule in JSON:
{"id":..,"priority":..,"userName":"..","roleName":"..","addressRange":"..","workspace":"..","access":".."}
In case a rule that has "any" ("*") for a particular field the field is either not included (default), left empty or specified with a single asterisk (the latter two may be used for updates to distinguish from "do not change this field").
access should be either ADMIN or USER.
addressRange is a string in CIDR notation (block/bits: e.g. 127.0.0.1/32).
Encoding of a list of rules in XML:
<AdminRules count="n">
<AdminRule> ... </AdminRule>
<AdminRule> ... </AdminRule>
...
</AdminRules>
The result of a count would not include the actual
Encoding of a list of rules in JSON:
{"count":n,"adminrules":[{..},{..},..]}
Filter Parameters¶
All filter parameters are optional.
-
- Name
- Type
- Description
-
- page
- number
- Used for paging a list of rules. Specifies the number of the page. Leave out for no paging. If specified,
entriesshould also be specified.
-
- entries
- number
- Used for paging a list of rules. Specifies the number of entries per page. Leave out for no paging. If specified,
pageshould also be specified.
-
- userName
- string
- Filter rules on username (excludes all other specified usernames).
-
- userAny
- 0 or 1.
- Specify whether rules matching any username should be included or not.
-
- roleName
- string
- Filter rules on rolename (excludes all other specified rolenames).
-
- roleAny
- 0 or 1.
- Specify whether rules matching any rolename should be included or not.
-
- workspace
- string
- Filter rules on workspace (excludes all other specified workspaces).
-
- workspaceAny
- 0 or 1.
- Specify whether rules matching any workspace should be included or not.
Requests¶
/geofence/rest/adminrules/¶
Query all adminrules or add a new adminrule.
-
- Method
- Action
- Supported parameters
- Response
-
- GET
- List all adminrules, with respect to any added filters
- page, entries, userName, userAny, roleName, roleAny, workspace, workspaceAny
- 200 OK. List of adminrules in XML.
-
- POST
- Add a new adminrule
- None
- 201 Inserted. Created
IDheader.
/geofence/rest/adminrules/count¶
Counts (filtered) adminrules.
-
- Method
- Action
- Supported parameters
- Response
-
- GET
- Count all adminrules, with respect to any added filters
- userName, userAny, roleName, roleAny, workspace, workspaceAny
- 200 OK. Rule list count in XML.
/geofence/rest/adminrules/id/<id>¶
Query, modify or delete a specific adminrule.
-
- Method
- Action
- Supported parameters
- Response
-
- GET
- Read adminrule information
- None
- 200 OK. AdminRule in XML.
-
- POST
- Modify the adminrule, unspecified fields remain unchanged.
- None
- 200 OK.
-
- DELETE
- Delete the adminrule
- None
- 200 OK.