Commit Graph

35 Commits

Author SHA1 Message Date
Roger Light
7e1a818c54 Fix invalid behaviour in dynsec plugin.
This occurred if a group or client was deleted before a role that was
attached to the group or client is deleted.

Closes #1998. Thanks to Willem Eradus.
2021-01-08 00:01:10 +00:00
Roger A. Light
791c63372b Fix cjson include paths. 2020-12-04 22:15:19 +00:00
Roger A. Light
3731535298 Add SPDX license identifiers. 2020-12-01 20:46:56 +00:00
Roger A. Light
692fa5537d dynsec: Reply with error on add role fail. 2020-11-30 10:32:09 +00:00
Roger A. Light
0605fd402a dynsec: Command logging. 2020-11-30 10:10:12 +00:00
Roger A. Light
423e1a00d2 dynsec: Tests for group commands with invalid params, plus fixes. 2020-11-28 00:01:58 +00:00
Roger A. Light
6739152fda dynsec: Various minor fixes. 2020-11-27 14:34:46 +00:00
Roger A. Light
598b1d7b00 dynsec: Fix free on modifyClient. 2020-11-26 15:11:20 +00:00
Roger A. Light
ba8e888e41 dynsec: Refactor some cJSON adding code to reduce redundancy 2020-11-26 14:49:28 +00:00
Roger A. Light
d8775b7d9c dynsec: Consistent behaviour when setting clientid. 2020-11-26 12:18:57 +00:00
Roger A. Light
c3daa247c2 dynsec: Cover setClientId in 14-dynsec-auth test. 2020-11-26 00:13:40 +00:00
Roger A. Light
584cf51ba7 Update to EPL-2.0 2020-11-25 17:34:21 +00:00
Roger A. Light
5db971a0e9 dynsec: Client id is optional in setClientID. 2020-11-24 12:04:47 +00:00
Roger A. Light
d1bf2c0d13 dynsec: Fix missing correlationData for getDefaultACLAccess. 2020-11-23 14:06:19 +00:00
Roger A. Light
4150b2f233 dynsec: Ignore empty passwords on setClientPassword/modifyClient. 2020-11-19 12:03:51 +00:00
Roger A. Light
e94cf19989 dynsec: Ignore zero length clientid. 2020-11-18 13:08:09 +00:00
Roger A. Light
4f9fe4df4d dynsec: Rolelist as own file for consistency. 2020-11-18 11:54:13 +00:00
Roger A. Light
fe436cda95 dynsec: Fix potential grouplist leaks. 2020-11-18 11:46:23 +00:00
Roger A. Light
20bf6e706e dynsec: Fix role clientlists not being freed. 2020-11-18 11:46:23 +00:00
Roger A. Light
67fbe5cc7e dynsec: Fix some keys being accessed even if they don't exist. 2020-11-18 09:34:28 +00:00
Roger A. Light
63277aad0b dynsec: setClientId should cope with missing/empty client id. 2020-11-17 16:10:01 +00:00
Roger A. Light
eac0c3bac0 dynsec: modifyClient can now change clientid and password. 2020-11-17 16:07:54 +00:00
Roger A. Light
dbcf945518 dynsec: Kick clients after password changes. 2020-11-17 14:58:41 +00:00
Roger A. Light
b06c5cd88f dynsec: Add setClientId command. 2020-11-17 14:58:23 +00:00
Roger A. Light
c5fe1fc36b Dynsec: Fix loading of clients with no password. 2020-11-07 23:49:00 +00:00
Roger A. Light
801e31efda Dynsec: Validate user/group/role names as UTF-8. 2020-11-04 13:32:27 +00:00
Roger A. Light
3486f0e546 Dynsec: Kick affected clients on role change. 2020-11-04 10:18:30 +00:00
Roger A. Light
bb840ed55b Conversion fixes. 2020-11-03 10:09:18 +00:00
Roger A. Light
866c395dcc Dynsec: Add "disabled" property for getClient/listClients. 2020-10-30 12:35:34 +00:00
Roger A. Light
5b28fac61d Dynsec: Kick clients on access changes
This works in the following circumstances:

* client is deleted
* client is modified
* client has role added
* client has role removed
* group is deleted
* group is modified
* group has role added
* group has role removed
* group has client added
* group has client removed
* anonymous group is changed

The following circumstances are not yet fixed:

* role is deleted
* role is modified
* role has ACL added
* role has ACL removed
2020-10-30 12:35:02 +00:00
Roger A. Light
30bf47b0d1 Fix printing of ints in dynsec json. 2020-10-29 23:51:32 +00:00
Roger A. Light
66d16280d8 dynsec: Add enableClient disableClient commands. 2020-10-29 15:17:12 +00:00
Roger A. Light
31b1cbb23f dynsec: Clients can be created with no password.
They will be unable to log in until a password is created.
2020-10-29 14:35:11 +00:00
Roger A. Light
c9cb10a079 ctrl: get* output for dynsec. 2020-10-29 09:59:07 +00:00
Roger A. Light
fdff255916 New dynamic security plugin. 2020-10-27 00:54:55 +00:00