|
|
|
@ -21,10 +21,12 @@ import org.thingsboard.server.common.data.HasCustomerId; |
|
|
|
import org.thingsboard.server.common.data.HasTenantId; |
|
|
|
import org.thingsboard.server.common.data.TbResourceInfo; |
|
|
|
import org.thingsboard.server.common.data.User; |
|
|
|
import org.thingsboard.server.common.data.id.ApiKeyId; |
|
|
|
import org.thingsboard.server.common.data.id.DashboardId; |
|
|
|
import org.thingsboard.server.common.data.id.EntityId; |
|
|
|
import org.thingsboard.server.common.data.id.TbResourceId; |
|
|
|
import org.thingsboard.server.common.data.id.UserId; |
|
|
|
import org.thingsboard.server.common.data.pat.ApiKeyInfo; |
|
|
|
import org.thingsboard.server.common.data.security.Authority; |
|
|
|
import org.thingsboard.server.service.security.model.SecurityUser; |
|
|
|
|
|
|
|
@ -48,6 +50,7 @@ public class CustomerUserPermissions extends AbstractPermissions { |
|
|
|
put(Resource.ASSET_PROFILE, profilePermissionChecker); |
|
|
|
put(Resource.TB_RESOURCE, customerResourcePermissionChecker); |
|
|
|
put(Resource.MOBILE_APP_SETTINGS, new PermissionChecker.GenericPermissionChecker(Operation.READ)); |
|
|
|
put(Resource.API_KEY, apiKeysPermissionChecker); |
|
|
|
} |
|
|
|
|
|
|
|
private static final PermissionChecker customerAlarmPermissionChecker = new PermissionChecker() { |
|
|
|
@ -202,4 +205,14 @@ public class CustomerUserPermissions extends AbstractPermissions { |
|
|
|
return user.getTenantId().equals(entity.getTenantId()); |
|
|
|
} |
|
|
|
}; |
|
|
|
|
|
|
|
private static final PermissionChecker apiKeysPermissionChecker = new PermissionChecker<ApiKeyId, ApiKeyInfo>() { |
|
|
|
|
|
|
|
@Override |
|
|
|
@SuppressWarnings("unchecked") |
|
|
|
public boolean hasPermission(SecurityUser user, Operation operation, ApiKeyId entityId, ApiKeyInfo entity) { |
|
|
|
return user.getTenantId().equals(entity.getTenantId()) && user.getId().equals(entity.getUserId()); |
|
|
|
} |
|
|
|
}; |
|
|
|
|
|
|
|
} |
|
|
|
|