Roger A. Light
5279a424b1
Dynsec: Kick clients in tick event rather than immediately
...
This means that PUBACK/PUBREC should be sent to clients that modify
their own roles.
Closes #2474 . Thanks to Stefano Berlato.
4 years ago
Roger A. Light
14d1c32f9d
Update changelog. Style, whitespace and, linker fixes.
4 years ago
Norbert Heusser
e7e8b6e832
* Added list of connections to dynsec/getClient response
...
* Added new helper function mosquitto_apply_on_all_clients to broker
* Refactoring in dynamic-security plugin
Signed-off-by: Norbert Heusser <norbert.heusser@cedalo.com>
4 years ago
Roger A. Light
8d073771c3
Make some plugin code shared for future use.
4 years ago
Roger A. Light
d032c94d14
Remove global vars.
4 years ago
Roger A. Light
11c5cf039f
Simplify memory use for dynsec.
4 years ago
Roger Light
cd07f1136b
Bump copyrights.
4 years ago
Roger A. Light
8ac11929cc
Merge branch 'master' into develop
4 years ago
Roger A. Light
a1a190b482
Pointless whitespace tidy.
4 years ago
Roger A. Light
14993528ab
Dynsec will generate a config file if it is not found.
4 years ago
Roger A. Light
182384440b
Password salts are now 64 bytes long.
4 years ago
Roger Light
e1c8f09372
Remove C++ style comments.
4 years ago
Roger A. Light
a4389fc9ce
Fix SPDX identifiers: EDL-1.0 -> BSD-3-Clause.
...
The two licenses are the same.
5 years ago
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.
5 years ago
Roger A. Light
791c63372b
Fix cjson include paths.
5 years ago
Roger A. Light
3731535298
Add SPDX license identifiers.
5 years ago
Roger A. Light
692fa5537d
dynsec: Reply with error on add role fail.
5 years ago
Roger A. Light
0605fd402a
dynsec: Command logging.
5 years ago
Roger A. Light
423e1a00d2
dynsec: Tests for group commands with invalid params, plus fixes.
5 years ago
Roger A. Light
6739152fda
dynsec: Various minor fixes.
5 years ago
Roger A. Light
598b1d7b00
dynsec: Fix free on modifyClient.
5 years ago
Roger A. Light
ba8e888e41
dynsec: Refactor some cJSON adding code to reduce redundancy
5 years ago
Roger A. Light
d8775b7d9c
dynsec: Consistent behaviour when setting clientid.
5 years ago
Roger A. Light
c3daa247c2
dynsec: Cover setClientId in 14-dynsec-auth test.
5 years ago
Roger A. Light
584cf51ba7
Update to EPL-2.0
5 years ago
Roger A. Light
5db971a0e9
dynsec: Client id is optional in setClientID.
5 years ago
Roger A. Light
d1bf2c0d13
dynsec: Fix missing correlationData for getDefaultACLAccess.
5 years ago
Roger A. Light
4150b2f233
dynsec: Ignore empty passwords on setClientPassword/modifyClient.
5 years ago
Roger A. Light
e94cf19989
dynsec: Ignore zero length clientid.
5 years ago
Roger A. Light
4f9fe4df4d
dynsec: Rolelist as own file for consistency.
5 years ago
Roger A. Light
fe436cda95
dynsec: Fix potential grouplist leaks.
5 years ago
Roger A. Light
20bf6e706e
dynsec: Fix role clientlists not being freed.
5 years ago
Roger A. Light
67fbe5cc7e
dynsec: Fix some keys being accessed even if they don't exist.
5 years ago
Roger A. Light
63277aad0b
dynsec: setClientId should cope with missing/empty client id.
5 years ago
Roger A. Light
eac0c3bac0
dynsec: modifyClient can now change clientid and password.
5 years ago
Roger A. Light
dbcf945518
dynsec: Kick clients after password changes.
5 years ago
Roger A. Light
b06c5cd88f
dynsec: Add setClientId command.
5 years ago
Roger A. Light
c5fe1fc36b
Dynsec: Fix loading of clients with no password.
5 years ago
Roger A. Light
801e31efda
Dynsec: Validate user/group/role names as UTF-8.
5 years ago
Roger A. Light
3486f0e546
Dynsec: Kick affected clients on role change.
5 years ago
Roger A. Light
bb840ed55b
Conversion fixes.
5 years ago
Roger A. Light
866c395dcc
Dynsec: Add "disabled" property for getClient/listClients.
5 years ago
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
5 years ago
Roger A. Light
30bf47b0d1
Fix printing of ints in dynsec json.
5 years ago
Roger A. Light
66d16280d8
dynsec: Add enableClient disableClient commands.
5 years ago
Roger A. Light
31b1cbb23f
dynsec: Clients can be created with no password.
...
They will be unable to log in until a password is created.
5 years ago
Roger A. Light
c9cb10a079
ctrl: get* output for dynsec.
5 years ago
Roger A. Light
fdff255916
New dynamic security plugin.
5 years ago