We've been using trac and svn internally with fairly good results. Now we'd like to open up parts of our system to external vendors - eg. we'd like to create an area on the twiki for our external designer to upload images, document things, and so forth. We need to be able to restrict his access to only that part of the twiki.
Similarly we have external developers working on specific modules that we'd like to provide twiki and svn access to, but only for their subset of the project.
We started to do this with trac, then switched to pursuing basecamp, then basecamp alternatives, and then generally floundered.
What do you recommend?