Sharing a product development with customer

I would like suggestions to create a collaborative environment with my customer. Features to be followed:

- Designers must have as few credentials as possible to work. (To save CAD objetcts)

- The customer can only have access to the product under development that refers to him. (Only reader)

- Designers control when the customer has or doesnot gave access to the product.

- Designers can work on another projects the same time.

Question: Is the best environment to have two collaborative spaces where the designers work with move command from CS_Designers to CS_Customer? Any other environment?
@HG @JM