Project objects such as Files, Tickets, Pages, Discussions and Checklists can be marked as private:
Default visibility for new objects is configurable on a project-by-project basis. If you set Default Visibility when creating a new project to be Private, then all forms used for creating new objects in that project will have Private visibility selected by default when you open them:
When an object is marked as private, it is visible only to people who have can_see_private_objects permission set to Yes in their System Role. Other people will not be able to see or access it.
For example, you have a user with a Member role who has the can_see_private_objects permission set to Yes. You also have one user with a Client Company Manager or Client Company Member role where can_see_private_objects permission is set to No. Both users have access to the Tickets section in a given project. When you create a Private Ticket in that project, only the user with a Member role will be able to see it because they have sufficient permissions, while the other users (those with a Client role) will not be able to see that ticket.
By default, only system roles that are used for members of the Owner Company (Administrator, Project Manager and Member) have can_see_private_objects permission set to Yes. This default setup is useful if you want to have a private discussion or create some private Tickets on a particular project issue, without your clients ever knowing about it.