Legrand / Raritan / Server Technology Xerus™ JSON-RPC API
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 /** %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