Legrand / Raritan Xerus™ JSON-RPC API for Remote Access Devices like KX4-101, KX3G2
Loading...
Searching...
No Matches
Role.idl
1/* SPDX-License-Identifier: BSD-3-Clause */
2/*
3 * Copyright 2009 Raritan Inc. All rights reserved.
4 */
5
6#ifndef __LIBISYS_AUTH_ROLE_IDL__
7#define __LIBISYS_AUTH_ROLE_IDL__
8
9/**
10 * %User Management
11 */
12module usermgmt {
13
14 /** %Role management interface */
15 interface Role {
16
17 constant int ERR_INVALID_VALUE = 1; ///< Invalid arguments
18
19 /** A granted privilege */
20 structure Privilege {
21 string name; ///< Privilege name
22 vector<string> args; ///< Privilege arguments
23 };
24
25 /** A restriction */
26 structure Restriction {
27 string name; ///< Restriction name
28 vector<string> args; ///< Restriction arguments
29 };
30
31 /** %Role information */
32 structure Info {
33 string description; ///< Free-form description
34 boolean locked; ///< \c true if the role cannot be deleted
35 vector<Privilege> privileges; ///< List of privileges for this role
36 vector<Restriction> restrictions; ///< List of restrictions for this role
37 };
38
39 /**
40 * Retrieve role information.
41 *
42 * @return role info
43 */
45
46 /**
47 * Change role settings.
48 *
49 * @param info New role information
50 *
51 * @return 0 if OK
52 * @return 1 if the role information is invalid
53 */
54 int updateFull(in Info info);
55
56 };
57
58}
59
60#endif /* !__LIBISYS_AUTH_ROLE_IDL__ */
Role management interface
Definition Role.idl:15
Info getInfo()
Retrieve role information.
constant int ERR_INVALID_VALUE
Invalid arguments.
Definition Role.idl:17
int updateFull(in Info info)
Change role settings.
User Management
Definition Role.idl:12
Role information
Definition Role.idl:32
vector< Restriction > restrictions
List of restrictions for this role.
Definition Role.idl:36
vector< Privilege > privileges
List of privileges for this role.
Definition Role.idl:35
string description
Free-form description.
Definition Role.idl:33
boolean locked
true if the role cannot be deleted
Definition Role.idl:34
A granted privilege.
Definition Role.idl:20
string name
Privilege name.
Definition Role.idl:21
vector< string > args
Privilege arguments.
Definition Role.idl:22
string name
Restriction name.
Definition Role.idl:27
vector< string > args
Restriction arguments.
Definition Role.idl:28