There are 2 things to review.
- When a user request to create a view port, do we check permission?
- When creating view port, the user can define calculated columns. There is no permission check on this. Maybe we need a flag to disable calculated column?