List<String>never contains meaning PermissionsEnum.
The condition list.contains(enum.ABC) || list.contains(enum.XYZ)will not work.
Instead, you can map PermissionsEnum.values()to Stream<String>and call Stream#anyMatchon it:
boolean result = Arrays.stream(PermissionsEnum.values())
.map(PermissionsEnum::getValue)
.anyMatch(list::contains);
* I assumed that the constructor parameter is accessible by the method getValue.
, ( ), :
Set<String> values = Arrays.stream(PermissionsEnum.values())
.map(PermissionsEnum::getValue)
.collect(Collectors.toSet());
boolean result = list.stream().anyMatch(values::contains);