[svn.haxx.se] · SVN Dev · SVN Users · SVN Org · TSVN Dev · TSVN Users · Subclipse Dev · Subclipse Users · this month's index

Re: SVNServe path based authorization help.

From: Sami Mikhail <thesamim_at_yahoo.com>
Date: Wed, 7 May 2008 07:00:19 -0700 (PDT)

Here is the ls list:

C:\>svn ls svn://localhost/
MyMiscFoo/

C:\>svn ls svn://localhost/MyMiscFoo
branches/
trunk/

C:\>svn ls svn://localhost/MyMiscFoo/trunk
MyProject/
baz/
branchholder.txt
com/
foo/

C:\>svn ls svn://localhost/MyMiscFoo/trunk/MyProject
devDirectories/

I will search on the thread you pointed out further down.

Actually the root of the repository is c:\dev\MySVNRepo. Starting svnserve:
svnserve -d -r c:\dev\MySVNRepo

Tried:
MySVNRepo:/trunk/MyProject/devDirectories/database
and
MySVNRepo:/MyProject/devDirectories/database

as identifiers in the sections but got the same result.

(Is there a way to get verbose logs out of svnserve ?)

Thanks all for the continued help!

PS: Please note (in case it is not entirely obvious) MySVNRepo is a vast simplification of a complex repository i will be applying the authorization permissions to. The thinking is that if I can't get it to work in the simple case, I'm only going to muck up the complicated case. :)

----- Original Message ----
From: Hari Kodungallur <hkodungallur_at_gmail.com>
To: Sami Mikhail <thesamim_at_yahoo.com>
Cc: Bert Huijben (Spambox) <bert-spam_at_vip.vsoft.nl>; users_at_subversion.tigris.org
Sent: Tuesday, May 6, 2008 9:10:31 PM
Subject: Re: SVNServe path based authorization help.

On Tue, May 6, 2008 at 1:28 PM, Sami Mikhail <thesamim_at_yahoo.com> wrote:
Bert:

Thanks for the catch on '@' prefix for group names.

Thanks also for the pointer re: canonical paths, but I must be missing something fundamental.

Here's a run down of what I have tried so far (apologies for the length.)

URL repository:
svn://localhost/MyMiscFoo/trunk/MyProject/devDirectories/database

Working Copy:
E:\blis\svnplay\trunk\MyProject\devDirectories\database
(note: I have also tried checking out from MyProject and below... same results.)

What is the root of the repository? [under which you will see files like db, conf, hooks etc]. I am assuming it is MyMiscFoo.

What you specify with the access control file depends on that. AssumingMyMiscFoo is the root of the repository, then [MyMiscFoo:/trunk] iscorrect.
And if MyMiscFoo is a directory directly below the root, then [/MyMiscFoo/trunk] is correct.

 

Attempt:
[groups]
da = harry, sally
dba = fred, george
developers = ron, hermione, neville
[/]

@developers = rw
* = r
[/trunk/MyProject/devDirectories/database/]
@dba = rw
[/trunk/MyProject/devDirectories/java/sql]
@da = rw

result:
fred cannot commit E:\blis\svnplay\trunk\MyProject\devDirectories\database\bar.sql
ron can commit E:\blis\svnplay\trunk\MyProject\devDirectories\database\bar.sql
harry cannot E:\blis\svnplay\trunk\MyProject\devDirectories\java\sql

attempt:
[groups]
da = harry, sally
dba = fred, george
developers = ron, hermione, neville
[/]

@developers = rw
* = r
[/MyMiscFoo/trunk/MyProject/devDirectories/database/]
@dba = rw
[/MyMiscFoo/trunk/MyProject/devDirectories/java/sql]
@da = rw

result:
fred cannot commit E:\blis\svnplay\trunk\MyProject\devDirectories\database\bar.sql
ron can commit E:\blis\svnplay\trunk\MyProject\devDirectories\database\bar.sql
harry cannot E:\blis\svnplay\trunk\MyProject\devDirectories\java\sql

[groups]
da = harry, sally
dba = fred, george
developers = ron, hermione, neville
[/]

@developers = rw
* = r
[MyMiscFoo:/trunk/MyProject/devDirectories/database/]
@dba = rw
[MyMiscFoo:/trunk/MyProject/devDirectories/java/sql]
@da = rw

result:
fred cannot commit E:\blis\svnplay\trunk\MyProject\devDirectories\database\bar.sql
ron can commit E:\blis\svnplay\trunk\MyProject\devDirectories\database\bar.sql
harry cannot E:\blis\svnplay\trunk\MyProject\devDirectories\java\sql

[groups]
da = harry, sally
dba = fred, george
developers = ron, hermione, neville
[/]

@developers = rw
* = r
[MyMiscFoo:/MyProject/devDirectories/database/]
@dba = rw
[MyMiscFoo:/MyProject/devDirectories/java/sql]
@da = rw

result:
fred cannot commit E:\blis\svnplay\trunk\MyProject\devDirectories\database\bar.sql
ron can commit E:\blis\svnplay\trunk\MyProject\devDirectories\database\bar.sql
harry cannot E:\blis\svnplay\trunk\MyProject\devDirectories\java\sql

I am guessing there is something wrong with the path based access controls. I think ron is able to commit because the auth with [/] is working and rest of the auth is not taking effect. Something not quite right with the all the paths I think.

Would it be possible to show us the directory structure using "svn ls" for each directory?

svn ls svn://localhost/
svn ls svn://localhost/MyMiscFoo
svn ls svn://localhost/MyMiscFoo/trunk
etc

Additionally, there was an issue with authz on Windows that is somewhat similar to your issue http://svn.haxx.se/users/archive-2006-03/0057.shtml
I dont know whether whether it was really an issue or whether it was fixed.

Thanks,
-Hari

<snip rest of the email thread>
Received on 2008-05-07 16:00:52 CEST

This is an archived mail posted to the Subversion Users mailing list.

This site is subject to the Apache Privacy Policy and the Apache Public Forum Archive Policy.