Raritan PX2/PX3 JSON-RPC API
RadiusManager.idl
1 /* SPDX-License-Identifier: BSD-3-Clause */
2 /*
3  * Copyright 2012 Raritan Inc. All rights reserved.
4  */
5 
6 #include "RadiusServerSettings.idl"
7 
8 /** Local and Remote Authentication Management */
9 module auth {
10 
11  /** RADIUS server configuration interface */
12  interface RadiusManager_2_0_0 {
13 
14  constant int ERR_INVALID_CFG = 1; ///< The server configuration is invalid
15  constant int ERR_SERVER_UNSPECIFIED = 2; ///< Unspecified error
16  constant int ERR_INVALID_SHARED_SECRET = 3; ///< The shared secret is invalid
17  constant int ERR_SERVER_UNREACHABLE = 4; ///< RADIUS server could not be contacted
18  constant int ERR_AUTHENTICATION_FAILED = 5; ///< User could not be authenticated
19  constant int ERR_NO_ROLES = 6; ///< No roles are defined for the user
20  constant int ERR_NO_KNOWN_ROLES = 7; ///< No known rules are defined for the user
21 
22  /**
23  * Get a list of RADIUS server settings
24  *
25  * @return list of radius.ServerSettings
26  */
27  vector<radius.ServerSettings_2_0_0> getRadiusServers();
28 
29  /**
30  * Sets a list of RADIUS servers.
31  * Any existing RADIUS Server configuration will be cleared / overwritten.
32  *
33  * @return 0 on success
34  * @return \c ERR_INVALID_CFG in case of invalid configuration
35  */
36  int setRadiusServers(in vector<radius.ServerSettings_2_0_0> serverList);
37 
38  /**
39  * Tests an RADIUS server configuration.
40  *
41  * @return 0 on success
42  * @return \c ERR_SERVER_UNSPECIFIED an unspecified error occurred
43  * @return \c ERR_INVALID_CFG RADIUS server configuration is invalid (reused from setRadiusServers)
44  * @return \c ERR_INVALID_SHARED_SECRET the shared secret is invalid
45  * @return \c ERR_SERVER_UNREACHABLE RADIUS server could not be contacted
46  * @return \c ERR_AUTHENTICATION_FAILED user could not be authenticated
47  * @return \c ERR_NO_ROLES no roles are defined for the user
48  * @return \c ERR_NO_KNOWN_ROLES no known roles are defined for the user
49  */
50  int testRadiusServer(in string username, in string password, in radius.ServerSettings_2_0_0 settings);
51 
52  };
53 }
Local and Remote Authentication Management.
Definition: AuthManager.idl:7
Server settings.
Definition: RadiusServerSettings.idl:17
RADIUS server configuration interface.
Definition: RadiusManager.idl:12
RADIUS server interface.
Definition: RadiusServerSettings.idl:7