DW: Added datadictionary permissions and checked role using issubset of the...

... configured permission
We may have more permissions in an object than we would have in the defined role, we cannot guarantee that the permissions returned will be a subset of the list hence the better check is to ensure all permission defined in the role exist in the the passed in permissions.