views:

68

answers:

2

I have trac set up together with subversion. I want to allow some people to be able to add tickets, but I don't want them to access the repository. There will be other users who will be able to access the repo via trac. Currently I am using Apache 2 for authentication.

How secure is trac? How difficult is it for someone with limited access to access the source via trac?

I am not asking on how to disallow access to the source via trac. I know how to do that.

The question again is: How hard is it for someone without access to the source to hack in and get at the source?

+1  A: 

You can set permissions for every Trac user. For example, you can have user accounts that can only access the ticket system, but not the source browser, timeline or wiki.

In particular, you want to not grant the following permissions:

BROWSER_VIEW     # View directory listings in the repository browser
LOG_VIEW    # View revision logs of files and directories in the repository browser
FILE_VIEW   # View files in the repository browser
CHANGESET_VIEW  #View repository check-ins

I am not sure what you mean by "secure". Trac will enforce the permissions you have set for all its web access. It will not show the source browser pages to someone who does not have the proper permissions. In addition to that, you will have to configure SVN as well to not allow anonymous repository read access (otherwise they could by-pass Trac and access the repository directly).

Thilo
I think you missed my question. It is not how to disallow source code access. It is: even though you have disallowed source code access to that user, how difficult will it be to access it anyway?
John Smith
Unless there is a critical security bug in Trac, "Trac will enforce the permissions you have set". So it will not be possible to access the source through Trac. It then boils down to alternative ways to access the repository (svn, hacking the server itself), and to hacking Trac user accounts (guessing passwords, social engineering).
Thilo
A: 

This is possible.

 trac-admin /path/to/project permission remove <user> BROWSER_VIEW
 trac-admin /path/to/project permission remove <user> LOG_VIEW
 trac-admin /path/to/project permission remove <user> FILE_VIEW
 trac-admin /path/to/project permission remove <user> CHANGE_VIEW

This will remove all repository related permissions. We use trac, works well, haven't had any security problems as of yet.

Orbit
That's not what i asked.
John Smith