diff options
author | Anton Tananaev <anton@traccar.org> | 2024-01-18 07:06:46 -0800 |
---|---|---|
committer | Anton Tananaev <anton@traccar.org> | 2024-01-18 07:06:46 -0800 |
commit | 22f45bd129f275b930ab2166a6b76713ca972abf (patch) | |
tree | 578772e7012a17cd3fb07083977a733687fdb913 /src/main/java/org | |
parent | 2eba0bdf8c02036d6761667f0aa022ead9587c11 (diff) | |
download | trackermap-server-22f45bd129f275b930ab2166a6b76713ca972abf.tar.gz trackermap-server-22f45bd129f275b930ab2166a6b76713ca972abf.tar.bz2 trackermap-server-22f45bd129f275b930ab2166a6b76713ca972abf.zip |
Option to disable device sharing
Diffstat (limited to 'src/main/java/org')
-rw-r--r-- | src/main/java/org/traccar/api/resource/DeviceResource.java | 3 | ||||
-rw-r--r-- | src/main/java/org/traccar/config/Keys.java | 7 |
2 files changed, 10 insertions, 0 deletions
diff --git a/src/main/java/org/traccar/api/resource/DeviceResource.java b/src/main/java/org/traccar/api/resource/DeviceResource.java index 00a3fc5b9..c3ced9b84 100644 --- a/src/main/java/org/traccar/api/resource/DeviceResource.java +++ b/src/main/java/org/traccar/api/resource/DeviceResource.java @@ -204,6 +204,9 @@ public class DeviceResource extends BaseObjectResource<Device> { @FormParam("expiration") Date expiration) throws StorageException, GeneralSecurityException, IOException { User user = permissionsService.getUser(getUserId()); + if (permissionsService.getServer().getBoolean(Keys.DEVICE_SHARE_DISABLE.getKey())) { + throw new SecurityException("Sharing is disabled"); + } if (user.getTemporary()) { throw new SecurityException("Temporary user"); } diff --git a/src/main/java/org/traccar/config/Keys.java b/src/main/java/org/traccar/config/Keys.java index e79264908..02e684875 100644 --- a/src/main/java/org/traccar/config/Keys.java +++ b/src/main/java/org/traccar/config/Keys.java @@ -341,6 +341,13 @@ public final class Keys { 0.0); /** + * Disable device sharing on the server. + */ + public static final ConfigKey<Boolean> DEVICE_SHARE_DISABLE = new BooleanConfigKey( + "disableShare", + List.of(KeyType.SERVER)); + + /** * Speed limit threshold multiplier. For example, if the speed limit is 100, but we only want to generate an event * if the speed is higher than 105, this parameter can be set to 1.05. Default multiplier is 1.0. */ |