Raritan / Server Technology Xerus™ PDU JSON-RPC API
All Classes Namespaces Functions Variables Typedefs Enumerations Enumerator Pages
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  */
12 module 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  /** %Role information */
26  structure Info {
27  string description; ///< Free-form description
28  boolean locked; ///< \c true if the role cannot be deleted
29  vector<Privilege> privileges; ///< List of privileges for this role
30  };
31 
32  /**
33  * Retrieve role information.
34  *
35  * @return role info
36  */
38 
39  /**
40  * Change role settings.
41  *
42  * @param info New role information
43  *
44  * @return 0 if OK
45  * @return 1 if the role information is invalid
46  */
47  int updateFull(in Info info);
48 
49  };
50 
51 }
52 
53 #endif /* !__LIBISYS_AUTH_ROLE_IDL__ */
Role management interface
Definition: Role.idl:15
Info getInfo()
Retrieve role information.
int updateFull(in Info info)
Change role settings.
User Management
Definition: Role.idl:12
Role information
Definition: Role.idl:26
vector< Privilege > privileges
List of privileges for this role.
Definition: Role.idl:29
string description
Free-form description.
Definition: Role.idl:27
boolean locked
true if the role cannot be deleted
Definition: Role.idl:28
A granted privilege.
Definition: Role.idl:20
string name
Privilege name.
Definition: Role.idl:21
vector< string > args
Privilege arguments.
Definition: Role.idl:22