Re: how to implement user level security in cvs ?

2002-04-18 Thread gabriel rosenkoetter

On Thu, Apr 18, 2002 at 09:28:38PM +0500, Muhammad Shakeel wrote:
>  Can i use solaris access control list ? Is cvs works fine when using acl ?

Yes.

(Think about this logically: cvs is run as the user performing the
action. Therefore, it can only affect a file in a given way if the
user has permission to do so.)

Beware ownership changes of files, though. (And note that you
probably don't want to use ACLs on files anyway, you want to use
them on directories.)

-- 
gabriel rosenkoetter
[EMAIL PROTECTED]



msg20079/pgp0.pgp
Description: PGP signature


Re: how to implement user level security in cvs ?

2002-04-18 Thread Noel Yap

The answer is a little trickier than this, actually.

I remember having to put something in loginfo so that
ACLs would get properly created from the directory
(default ACLs aren't appropriate here since you
probably don't want the directory's execute and write
bits to be inherited by the files).

Noel
--- gabriel rosenkoetter <[EMAIL PROTECTED]> wrote:
> On Thu, Apr 18, 2002 at 09:28:38PM +0500, Muhammad
> Shakeel wrote:
> >  Can i use solaris access control list ? Is cvs
> works fine when using acl ?
> 
> Yes.
> 
> (Think about this logically: cvs is run as the user
> performing the
> action. Therefore, it can only affect a file in a
> given way if the
> user has permission to do so.)
> 
> Beware ownership changes of files, though. (And note
> that you
> probably don't want to use ACLs on files anyway, you
> want to use
> them on directories.)
> 
> -- 
> gabriel rosenkoetter
> [EMAIL PROTECTED]
> 

> ATTACHMENT part 2 application/pgp-signature 



__
Do You Yahoo!?
Yahoo! Tax Center - online filing with TurboTax
http://taxes.yahoo.com/

___
Info-cvs mailing list
[EMAIL PROTECTED]
http://mail.gnu.org/mailman/listinfo/info-cvs



Re: how to implement user level security in cvs ?

2002-04-18 Thread gabriel rosenkoetter

On Thu, Apr 18, 2002 at 12:58:18PM -0700, Noel Yap wrote:
> The answer is a little trickier than this, actually.
> 
> I remember having to put something in loginfo so that
> ACLs would get properly created from the directory
> (default ACLs aren't appropriate here since you
> probably don't want the directory's execute and write
> bits to be inherited by the files).

My memory, though I didn't really push the ACLs hard, was that I
could set ACLs per module by setting them on the directories in
$CVSROOT after the module was already created.

Hrm. Actually, I think I only ever did all-or-nothing access.
Controlling read/write separately is going to require a loginfo
dance, come to think of it.

-- 
gabriel rosenkoetter
[EMAIL PROTECTED]



msg20082/pgp0.pgp
Description: PGP signature


Re: how to implement user level security in cvs ?

2002-04-18 Thread Noel Yap

--- gabriel rosenkoetter <[EMAIL PROTECTED]> wrote:
> On Thu, Apr 18, 2002 at 12:58:18PM -0700, Noel Yap
> wrote:
> > The answer is a little trickier than this,
> actually.
> > 
> > I remember having to put something in loginfo so
> that
> > ACLs would get properly created from the directory
> > (default ACLs aren't appropriate here since you
> > probably don't want the directory's execute and
> write
> > bits to be inherited by the files).
> 
> My memory, though I didn't really push the ACLs
> hard, was that I
> could set ACLs per module by setting them on the
> directories in
> $CVSROOT after the module was already created.
> 
> Hrm. Actually, I think I only ever did
> all-or-nothing access.
> Controlling read/write separately is going to
> require a loginfo
> dance, come to think of it.

Yeah.  I should've been more specific (I just got up
from a nap -- so goes the life of the unemployed :-)

We wanted to allow some users to have read only access
to the repository and I wanted to turn of read access
to the other (just 'cos I'm paranoid).  Even if it
were all or nothing, ACLs would still need to be set
for new subdirectories, IIRC.

Noel


__
Do You Yahoo!?
Yahoo! Tax Center - online filing with TurboTax
http://taxes.yahoo.com/

___
Info-cvs mailing list
[EMAIL PROTECTED]
http://mail.gnu.org/mailman/listinfo/info-cvs



Re: how to implement user level security in cvs ?

2002-04-18 Thread Larry Jones

Muhammad Shakeel writes:
> 
> There is no security for user level permission on a different modules in 
> a cvs repository. If i had to use the unix permissions for  security , 
> then what are the steps i should follow to permit some groups or users 
> for check out access only and to some with checkin access only ?

The short answer is that a user needs write permission on a directory to
modify any of the files in that directory and needs read permission on a
directory to access the files without changing them (checkout, status,
etc.).  Users do need read permission on the files themselves, but do
should never have write permission.  Users also have to be able to
create lock files, so if you're going to have read-only users, you can't
keep the lock files inside the repository; you can use LockDir= in
CVSROOT/config to put them elsewhere.

-Larry Jones

Let's pretend I already feel terrible about it, and that you
don't need to rub it in any more. -- Calvin

___
Info-cvs mailing list
[EMAIL PROTECTED]
http://mail.gnu.org/mailman/listinfo/info-cvs



Re: how to implement user level security in cvs ?

2002-04-18 Thread gabriel rosenkoetter

On Thu, Apr 18, 2002 at 04:22:30PM -0400, Larry Jones wrote:
> The short answer is that a user needs write permission on a directory to
> modify any of the files in that directory

Say *what*? You mean that specifically to CVS, I hope?

(In the real world, the only relevance write permission on a
directory have is for creation and deletion of files... but you're
saying that CVS actually creates a new file and unlink()s the old
one every time...)

-- 
gabriel rosenkoetter
[EMAIL PROTECTED]



msg20091/pgp0.pgp
Description: PGP signature


Re: how to implement user level security in cvs ?

2002-04-18 Thread gabriel rosenkoetter

On Thu, Apr 18, 2002 at 01:08:20PM -0700, Noel Yap wrote:
> We wanted to allow some users to have read only access
> to the repository and I wanted to turn of read access
> to the other (just 'cos I'm paranoid).  Even if it
> were all or nothing, ACLs would still need to be set
> for new subdirectories, IIRC.

Sure, for subdirectories within a module. I was only working on a
module-by-module granularity. CVS won't whack the permissions on the
directories straight off $CVSROOT (and no one but I could import
modules, as only I had write permission to $CVSROOT).

(This was on a CS department's systems while I was a student there
in order to give access to my partner(s) for a given coding project
in a given class.)

-- 
gabriel rosenkoetter
[EMAIL PROTECTED]



msg20092/pgp0.pgp
Description: PGP signature


Re: how to implement user level security in cvs ?

2002-04-18 Thread gabriel rosenkoetter

-BEGIN PGP SIGNED MESSAGE-
Hash: SHA1

From: gabriel rosenkoetter <[EMAIL PROTECTED]>
To: [EMAIL PROTECTED]
Cc: 
Bcc: 
Subject: Re: how to implement user level security in cvs ?
Reply-To: 
In-Reply-To: <[EMAIL PROTECTED]>; from [EMAIL PROTECTED] on Thu, 
Apr 18, 2002 at 05:35:25PM -0400

On Thu, Apr 18, 2002 at 05:35:25PM -0400, Larry Jones wrote:
> Please do not send MIME and/or HTML encrypted messages to the list.
> Plain text only, PLEASE.

Um... but that's a totally standards-compliant PGP signature which
is, in fact, plain text. (It's a clear text signature, only in a
separate MIME part so that MUAs have an easy time recognizing it.)

Did you bother to look at that, or just have a knee-jerk response?

In any case, I guess I'll just clear-sign this one in the editor and
not have mutt do its usually thing.

> > Say *what*? You mean that specifically to CVS, I hope?
> Yes; that was the context of the discussion.

Fair enough.

- -- 
gabriel rosenkoetter
[EMAIL PROTECTED]
-BEGIN PGP SIGNATURE-
Version: GnuPG v1.0.6 (NetBSD)
Comment: For info see http://www.gnupg.org

iEYEARECAAYFAjy/PqEACgkQ9ehacAz5CRoW/ACgpwinSwgxDICBuJ2z2cMAWRFT
BBEAnAsXR8koG3/AIN5tXkfKlSuXVeRd
=o0Ix
-END PGP SIGNATURE-



msg20097/pgp0.pgp
Description: PGP signature


Re: how to implement user level security in cvs ?

2002-04-18 Thread Larry Jones

gabriel rosenkoetter writes:
>
> Mime-Version: 1.0
> Content-Type: multipart/signed; micalg=pgp-md5;
>   protocol="application/pgp-signature"; boundary="YC8Ek3FeOE8ywfXk"

Please do not send MIME and/or HTML encrypted messages to the list.
Plain text only, PLEASE.

> On Thu, Apr 18, 2002 at 04:22:30PM -0400, Larry Jones wrote:
> > The short answer is that a user needs write permission on a directory to
> > modify any of the files in that directory
> 
> Say *what*? You mean that specifically to CVS, I hope?

Yes; that was the context of the discussion.

> (In the real world, the only relevance write permission on a
> directory have is for creation and deletion of files... but you're
> saying that CVS actually creates a new file and unlink()s the old
> one every time...)

Exactly.  Modifying an RCS file generally requires changes throughout
the file, and there's no way to do that (portably) other than rewriting
the file.  CVS (and RCS) always write a whole new file rather than
overwriting the existing file to prevent an unfortunate system crash
from leaving you with a partial file and no way to recover the missing
information.

-Larry Jones

I've got to start listening to those quiet, nagging doubts. -- Calvin

___
Info-cvs mailing list
[EMAIL PROTECTED]
http://mail.gnu.org/mailman/listinfo/info-cvs



Re: how to implement user level security in cvs ?

2002-04-18 Thread Shane McDaniel



gabriel rosenkoetter wrote:
> 
> On Thu, Apr 18, 2002 at 09:28:38PM +0500, Muhammad Shakeel wrote:
> >  Can i use solaris access control list ? Is cvs works fine when using acl ?
> 
> Yes.
> 
> (Think about this logically: cvs is run as the user performing the
> action. Therefore, it can only affect a file in a given way if the
> user has permission to do so.)
> 
> Beware ownership changes of files, though. (And note that you
> probably don't want to use ACLs on files anyway, you want to use
> them on directories.)
> 

Is there a way to restrict when a user can do a commit, but allow anyone
to do checkouts.  Preferably gracefully through CVS but even through
permission manipulation if possible.

-shane
___
Info-cvs mailing list
[EMAIL PROTECTED]
http://mail.gnu.org/mailman/listinfo/info-cvs



Re: how to implement user level security in cvs ?

2002-04-18 Thread Noel Yap

--- Shane McDaniel <[EMAIL PROTECTED]> wrote:
> Is there a way to restrict when a user can do a
> commit, but allow anyone
> to do checkouts.  Preferably gracefully through CVS
> but even through
> permission manipulation if possible.

This is exactly what this thread is about.  You can
use file system ACLs (man setfacl for more info)
coupled with a loginfo script to set repo file
permissions to something reasonable.

Noel


__
Do You Yahoo!?
Yahoo! Tax Center - online filing with TurboTax
http://taxes.yahoo.com/

___
Info-cvs mailing list
[EMAIL PROTECTED]
http://mail.gnu.org/mailman/listinfo/info-cvs



Re: how to implement user level security in cvs ?

2002-05-14 Thread Muhammad Shakeel



Dear Noel yap,
AOA

Sorry i am asking a question related to little older thread in mailing list.
I implemeted ACL on directory level as was suggested, and do not implemented
on files. But what is reason that it is not recomended ? If a user  have
a permission on folder but not on a file then he cannot checkout the code.


Can u please also recall to tell me what is required to do in loginfo file
in this case ?


Regards,
shakeel


Noel Yap wrote:
[EMAIL PROTECTED]">
  The answer is a little trickier than this, actually.I remember having to put something in loginfo so thatACLs would get properly created from the directory(default ACLs aren't appropriate here since youprobably don't want the directory's execute and writebits to be inherited by the files).Noel--- gabriel rosenkoetter <[EMAIL PROTECTED]> wrote:
  
On Thu, Apr 18, 2002 at 09:28:38PM +0500, MuhammadShakeel wrote:

   Can i use solaris access control list ? Is cvs
  
  works fine when using acl ?Yes.(Think about this logically: cvs is run as the userperforming theaction. Therefore, it can only affect a file in agiven way if theuser has permission to do so.)Beware ownership changes of files, though. (And notethat youprobably don't want to use ACLs on files anyway, youwant to usethem on directories.)-- gabriel rosenkoetter[EMAIL PROTECTED]
  
  
  
ATTACHMENT part 2 application/pgp-signature 

__Do You Yahoo!?Yahoo! Tax Center - online filing with TurboTaxhttp://taxes.yahoo.com/___Info-cvs mailing list[EMAIL PROTECTED]http://mail.gnu.org/mailman/listinfo/info-cvs


-- 
Regards,

Muhammad Shakeel
Streaming Networks (Pvt.) Limited
House 8, St. 31, F-7/1
Islamabad - 44000, Pakistan

Talk:  +92-51-2823585, +92-51-2275589
Fax:   +92-51-2820832
Email: [EMAIL PROTECTED]
Web:   streaming-networks.com






Re: how to implement user level security in cvs ?

2002-05-14 Thread Noel Yap

Given:
1. CVS recreates (ie copies and removes) the archive
file each time there is a checkin.
2. CVS, by default, creates locks within the repo
directory.  The location of the locks can be
configured by setting LockDir within CVSROOT/config.
3. A user can create and remove files within a
directory if and only if (iff) that user has write
permissions to that directory.
4. A user can use a directory iff that user has
execute permissions to that directory.
5. A user can modify a file iff that user has write
permissions to that file.

Therefore:
1. A user will need repo file and directory read
permissions to checkout/checkin a file.
2. A user will need repo directory write permissions
to checkin a file.
3. It is safer if a user did not have repo file write
permissions.

Given:
1. Default ACLs cannot tell the difference between
directories and files.
2. Repo directory permissions need to be treated
differently from repo file permissions.

Therefore:
1. A loginfo script will need to reset file ACLs for
each commit.  It will also need to set ACLs on new
elements.  Typically, this setting is a combination of
inheritance from the parent directory for ACL users
and groups and read permissions, files are never
writable, files may need to be executable, and
directories are always writable and executable.

Noel

--- Muhammad Shakeel
<[EMAIL PROTECTED]> wrote:
> Dear Noel yap,
> AOA
> 
> Sorry i am asking a question related to little older
> thread in mailing 
> list. I implemeted ACL on directory level as was
> suggested, and do not 
> implemented on files. But what is reason that it is
> not recomended ? If 
> a user  have a permission on folder but not on a
> file then he cannot 
> checkout the code.
> 
> Can u please also recall to tell me what is required
> to do in loginfo 
> file in this case ?
> 
> 
> Regards,
> shakeel
> 
> 
> Noel Yap wrote:
> 
> >The answer is a little trickier than this,
> actually.
> >
> >I remember having to put something in loginfo so
> that
> >ACLs would get properly created from the directory
> >(default ACLs aren't appropriate here since you
> >probably don't want the directory's execute and
> write
> >bits to be inherited by the files).
> >
> >Noel
> >--- gabriel rosenkoetter <[EMAIL PROTECTED]> wrote:
> >
> >>On Thu, Apr 18, 2002 at 09:28:38PM +0500, Muhammad
> >>Shakeel wrote:
> >>
> >>> Can i use solaris access control list ? Is cvs
> >>>
> >>works fine when using acl ?
> >>
> >>Yes.
> >>
> >>(Think about this logically: cvs is run as the
> user
> >>performing the
> >>action. Therefore, it can only affect a file in a
> >>given way if the
> >>user has permission to do so.)
> >>
> >>Beware ownership changes of files, though. (And
> note
> >>that you
> >>probably don't want to use ACLs on files anyway,
> you
> >>want to use
> >>them on directories.)
> >>
> >>-- 
> >>gabriel rosenkoetter
> >>[EMAIL PROTECTED]
> >>
> >
> >>ATTACHMENT part 2 application/pgp-signature 
> >>
> >
> >
> >
> >__
> >Do You Yahoo!?
> >Yahoo! Tax Center - online filing with TurboTax
> >http://taxes.yahoo.com/
> >
> >___
> >Info-cvs mailing list
> >[EMAIL PROTECTED]
> >http://mail.gnu.org/mailman/listinfo/info-cvs
> >
> 
> -- 
> Regards,
> 
> Muhammad Shakeel
> Streaming Networks (Pvt.) Limited
> House 8, St. 31, F-7/1
> Islamabad - 44000, Pakistan
> 
> Talk:  +92-51-2823585, +92-51-2275589
> Fax:   +92-51-2820832
> Email: [EMAIL PROTECTED]
> Web:   streaming-networks.com
> 
> 
> 


__
Do You Yahoo!?
LAUNCH - Your Yahoo! Music Experience
http://launch.yahoo.com

___
Info-cvs mailing list
[EMAIL PROTECTED]
http://mail.gnu.org/mailman/listinfo/info-cvs



Re: how to implement user level security in cvs ?

2002-05-15 Thread Muhammad Shakeel



Dear Noel,

Thanks a lot for quick and valuable reply. I implemented the ACL but  did
not implemented ACL on file level. Therefore on file level i had given a
read permission to others (r--r--r--) by setting CVSUMASK. Therefore the
folders also got the read permission in others field. Is this only read permission
can make any security risk ? It seems without execute permission on a folder
no one can access the files inside that folder.

 Yes, It is important to refresh the ACL after checkin, because CVS changes
the file ownership and group information to the one who checked in the file.
Also the PreservePermission in CVSROOT/config file does seems to be properly
implemented. 
>From the last paragraph of ur reply shows files level ACL is also required. 
Should we need to implement ACL for files too ? Is any referece script for 
loginfo ACL is available ?

Regards
shakeel







Noel Yap wrote:
[EMAIL PROTECTED]">
  Given:1. CVS recreates (ie copies and removes) the archivefile each time there is a checkin.2. CVS, by default, creates locks within the repodirectory.  The location of the locks can beconfigured by setting LockDir within CVSROOT/config.3. A user can create and remove files within adirectory if and only if (iff) that user has writepermissions to that directory.4. A user can use a directory iff that user hasexecute permissions to that directory.5. A user can modify a file iff that user has writepermissions to that file.Therefore:1. A user will need repo file and directory readpermissions to checkout/checkin a file.2. A user will need repo directory write permissionsto checkin a file.3. It is safer if a user did not have repo file writepermissions.Given:1. Default ACLs cannot tell the difference betweendirectories and files.2. Repo directory permissions need to be
 treateddifferently from repo file permissions.Therefore:1. A loginfo script will need to reset file ACLs foreach commit.  It will also need to set ACLs on newelements.  Typically, this setting is a combination ofinheritance from the parent directory for ACL usersand groups and read permissions, files are neverwritable, files may need to be executable, anddirectories are always writable and executable.Noel--- Muhammad Shakeel<[EMAIL PROTECTED]> wrote:
  
Dear Noel yap,AOASorry i am asking a question related to little olderthread in mailing list. I implemeted ACL on directory level as wassuggested, and do not implemented on files. But what is reason that it isnot recomended ? If a user  have a permission on folder but not on afile then he cannot checkout the code.Can u please also recall to tell me what is requiredto do in loginfo file in this case ?Regards,shakeelNoel Yap wrote:

  The answer is a little trickier than this,
  
  actually.
  
I remember having to put something in loginfo so

that

  ACLs would get properly created from the directory(default ACLs aren't appropriate here since youprobably don't want the directory's execute and
  
  write
  
bits to be inherited by the files).Noel--- gabriel rosenkoetter <[EMAIL PROTECTED]> wrote:

  On Thu, Apr 18, 2002 at 09:28:38PM +0500, MuhammadShakeel wrote:
  
Can i use solaris access control list ? Is cvs

works fine when using acl ?Yes.(Think about this logically: cvs is run as the


user

  
performing theaction. Therefore, it can only affect a file in agiven way if theuser has permission to do so.)Beware ownership changes of files, though. (And


note

  
that youprobably don't want to use ACLs on files anyway,


you

  
want to usethem on directories.)-- gabriel rosenkoetter[EMAIL PROTECTED]


  ATTACHMENT part 2 application/pgp-signature 
  
  __Do You Yahoo!?Yahoo! Tax Center - online filing with TurboTaxhttp://taxes.yahoo.com/___Info-cvs mailing list[EMAIL PROTECTED]http://mail.gnu.org/mailman/listinfo/info-cvs
  
  -- Regards,
  
  __Do You Yahoo!?LAUNCH - Your Yahoo! Music Experiencehttp://launch.yahoo.com___Info-cvs mailing list[EMAIL PROTECTED]http://mail.gnu.org/mailman/listinfo/info-cvs
 

Re: how to implement user level security in cvs ?

2002-05-15 Thread Noel Yap

--- Muhammad Shakeel
<[EMAIL PROTECTED]> wrote:
> Thanks a lot for quick and valuable reply. I
> implemented the ACL but  
> did not implemented ACL on file level. Therefore on
> file level i had 
> given a read permission to others (r--r--r--) by
> setting CVSUMASK. 

Be careful that you're not turning off file execute
bits for scripts.

> Therefore the folders also got the read permission
> in others field. Is 
> this only read permission can make any security risk
> ?

Read perms for other is only a security risk if you
the info within the repository is so confidential that
others on the system should not be able to see it.

> It seems without 
> execute permission on a folder no one can access the
> files inside that 
> folder.

Yes, as I think I stated in my previous email, execute
permissions will be necessary for anyone who needs
access to the repository.

>  Yes, It is important to refresh the ACL after
> checkin, because CVS 
> changes the file ownership and group information to
> the one who checked 
> in the file.

File ownership doesn't matter, really (except for
being able to change file permissions).  The file
permissions are more important.

> Also the PreservePermission in
> CVSROOT/config file does 
> seems to be properly implemented.

Don't use it.  I've think I've heard it's so bad that
it should be ripped out.

>  From the last paragraph of ur reply shows files
> level ACL is also 
> required. Should we need to implement ACL for files
> too ? Is any 
> referece script for loginfo ACL is available ?

File-level permissioning is necessary to guarantee
that those that need read permissions get them (of
course, you could grant read permissions to everyone
if you don't think your stuff is that confidential). 
It's also important to preserve the execute bit (CVS
does this automatically for normal permissions, but
not for ACLs).

I'll see if I can dig up my script.

Noel



__
Do You Yahoo!?
LAUNCH - Your Yahoo! Music Experience
http://launch.yahoo.com

___
Info-cvs mailing list
[EMAIL PROTECTED]
http://mail.gnu.org/mailman/listinfo/info-cvs



Re: how to implement user level security in cvs ?

2002-05-16 Thread Muhammad Shakeel



Dear Noel,

Thanks for your reply. I implemented a ACL on a folder in my repository,
when some one checkin in this folder, loginfo execute the script and refreshes
the whole ACL recursively  in that folder. But when  a user who is not the
owner of the files in repository (Although he has rwx permissions), check
in a file the script on its execution gives an error message :

not a owner of the file/folder.

It means scripts with loginfo execute with the permission of that user who
is checking in. 
To  add or modify a ACL, some one should be the owner of the ACL.
It means script failded at that point.

 Instead of above script, If in another script if i try to copy the ACL of
a parent folder to the newly  created folder in that folder, then how to
send its paths of bothe folder from loginfo to the script in the arguments
?

Instead of using script to refresh the whole ACL or copy the ACL. I also
implement the default ACL at the start to a folder. But 
Default ACL permission also do not reflect all the ACL in the new folder
created  within that folder.

Please help to proceed. It seems i am stuck again. 

:-[ 

Regards,
shakeel





Noel Yap wrote:
[EMAIL PROTECTED]">
  --- Muhammad Shakeel<[EMAIL PROTECTED]> wrote:
  
Thanks a lot for quick and valuable reply. Iimplemented the ACL but  did not implemented ACL on file level. Therefore onfile level i had given a read permission to others (r--r--r--) bysetting CVSUMASK. 

Be careful that you're not turning off file executebits for scripts.

  Therefore the folders also got the read permissionin others field. Is this only read permission can make any security risk?
  
  Read perms for other is only a security risk if youthe info within the repository is so confidential thatothers on the system should not be able to see it.
  
It seems without execute permission on a folder no one can access thefiles inside that folder.

Yes, as I think I stated in my previous email, executepermissions will be necessary for anyone who needsaccess to the repository.

   Yes, It is important to refresh the ACL aftercheckin, because CVS changes the file ownership and group information tothe one who checked in the file.
  
  File ownership doesn't matter, really (except forbeing able to change file permissions).  The filepermissions are more important.
  
Also the PreservePermission inCVSROOT/config file does seems to be properly implemented.

Don't use it.  I've think I've heard it's so bad thatit should be ripped out.

   From the last paragraph of ur reply shows fileslevel ACL is also required. Should we need to implement ACL for filestoo ? Is any referece script for loginfo ACL is available ?
  
  File-level permissioning is necessary to guaranteethat those that need read permissions get them (ofcourse, you could grant read permissions to everyoneif you don't think your stuff is that confidential). It's also important to preserve the execute bit (CVSdoes this automatically for normal permissions, butnot for ACLs).I'll see if I can dig up my script.Noel__Do You Yahoo!?LAUNCH - Your Yahoo! Music Experiencehttp://launch.yahoo.comFrom - Thu May 16 09:36:14 2002X-UIDL: 3af5815d35daX-Mozilla-Status: X-Mozilla-Status2: Return-Path: <[EMAIL PROTECTED]>Received: from fencepost.gnu.org (fencepost.gnu.org [199.232.76.164])	by isb.
streaming-networks.com (8.11.0/8.11.0) with ESMTP id g4FGqgs08635	for <[EMAIL PROTECTED]>; Wed, 15 May 2002 21:52:47 +0500Received: from localhost ([127.0.0.1] helo=fencepost.gnu.org)	by fencepost.gnu.org with esmtp (Exim 3.34 #1 (Debian))	id 1780rs-0007xj-00; Wed, 15 May 2002 11:39:08 -0400Received: from web21409.mail.yahoo.com ([216.136.232.79])	by fencepost.gnu.org with smtp (Exim 3.34 #1 (Debian))	id 1780rE-0007rM-00	for <[EMAIL PROTECTED]>; Wed, 15 May 2002 11:38:28 -0400Message-ID: [EMAIL PROTECTED]"><[EMAIL PROTECTED]>Received: from [65.215.21.55] by web21409.mail.yahoo.com via HTTP; Wed, 15 May 2002 08:38:27 PDTFrom:
 Noel Yap <[EMAIL PROTECTED]>Subject: Re: how to implement user level security in cvs ?To: Muhammad Shakeel <[EMAIL PROTECTED]>Cc: [EMAIL PROTECTED]In-Reply-To: <3CE2857A.5020206@streaming-
  
  
  -
  
  
  


Re: how to implement user level security in cvs ?

2002-05-17 Thread Noel Yap

--- Muhammad Shakeel
<[EMAIL PROTECTED]> wrote:
> Thanks for your reply. I implemented a ACL on a
> folder in my repository, 
> when some one checkin in this folder, loginfo
> execute the script and 
> refreshes the whole ACL recursively  in that folder.
> But when  a user 
> who is not the owner of the files in repository
> (Although he has rwx 
> permissions), check in a file the script on its
> execution gives an error 
> message :
> 
> not a owner of the file/folder.

First, reread _carefully_ my prior email.  It has a
lot of information packed into it.

Recursively resetting the ACLs is extremely time
consuming and may break something (eg if you have some
subdirectory with more ACLs on it).

> It means scripts with loginfo execute with the
> permission of that user 
> who is checking in.
> To  add or modify a ACL, some one should be the
> owner of the ACL.
> It means script failded at that point.

All this is correct.  Keep in mind, though, that when
a user checks in a file, a brand new archive is
created that is owned by that user.  The same goes for
new directories.  This means that users can set
permissions on newly checked in files and new
directories.

> Instead of above script, If in another script if i
> try to copy the ACL 
> of a parent folder to the newly  created folder in
> that folder, then how 
> to send its paths of bothe folder from loginfo to
> the script in the 
> arguments ?

You should be able to derive the parent directory from
the new element's name (ie use dirname).  IIRC, it's
the new element's name that's passed into loginfo
scripts.

> Instead of using script to refresh the whole ACL or
> copy the ACL. I also 
> implement the default ACL at the start to a folder.
> But
> Default ACL permission also do not reflect all the
> ACL in the new folder 
> created  within that folder.

Again, please reread my prior email.  Permissions
between directories and files will tend to need to be
different (directories need to be executable and
writable, files need not be).  To reiterate (and put
it more strongly), DO NOT USE DEFAULT ACL'S.

> Please help to proceed. It seems i am stuck again.

Reread and memorize my prior email.  I haven't been
able to look for my loginfo script.  I'll try to do it
tonight.

Noel


__
Do You Yahoo!?
LAUNCH - Your Yahoo! Music Experience
http://launch.yahoo.com

___
Info-cvs mailing list
[EMAIL PROTECTED]
http://mail.gnu.org/mailman/listinfo/info-cvs



Re: how to implement user level security in cvs ?

2002-05-17 Thread Nick Papadonis

Muhammad Shakeel <[EMAIL PROTECTED]> writes:
> Thanks for your reply. I implemented a ACL on a folder in my
> repository, when some one checkin in this folder, loginfo execute the
> script and refreshes the whole ACL recursively  in that folder. But
> when  a user who is not the owner of the files in repository (Although
> he has rwx permissions), check in a file the script on its execution
> gives an error message :

Muhammad,

I didn't catch this whole thread, but would like to offer ACL
insight.  I researched this area and ended up using the ACL script
included with the CVS source.  When setup correctly, this script turns out
suitable for controlling access on a per module, directory, branch,
and user basis.

Hope this helps.

- Nick

___
Info-cvs mailing list
[EMAIL PROTECTED]
http://mail.gnu.org/mailman/listinfo/info-cvs



Re: how to implement user level security in cvs ?

2002-05-18 Thread Noel Yap

I might have made an incorrect assumption, but I
believe Muhammad is asking about file system ACLs. 
Muhammad, can you confirm this, please?

Noel
--- Nick Papadonis <[EMAIL PROTECTED]> wrote:
> Muhammad Shakeel
> <[EMAIL PROTECTED]> writes:
> > Thanks for your reply. I implemented a ACL on a
> folder in my
> > repository, when some one checkin in this folder,
> loginfo execute the
> > script and refreshes the whole ACL recursively  in
> that folder. But
> > when  a user who is not the owner of the files in
> repository (Although
> > he has rwx permissions), check in a file the
> script on its execution
> > gives an error message :
> 
> Muhammad,
> 
> I didn't catch this whole thread, but would like to
> offer ACL
> insight.  I researched this area and ended up using
> the ACL script
> included with the CVS source.  When setup correctly,
> this script turns out
> suitable for controlling access on a per module,
> directory, branch,
> and user basis.
> 
> Hope this helps.
> 
> - Nick
> 
> ___
> Info-cvs mailing list
> [EMAIL PROTECTED]
> http://mail.gnu.org/mailman/listinfo/info-cvs


__
Do You Yahoo!?
LAUNCH - Your Yahoo! Music Experience
http://launch.yahoo.com

___
Info-cvs mailing list
[EMAIL PROTECTED]
http://mail.gnu.org/mailman/listinfo/info-cvs



Re: how to implement user level security in cvs ?

2002-05-18 Thread Noel Yap

--- Noel Yap <[EMAIL PROTECTED]> wrote:
> able to look for my loginfo script.  I'll try to do
> it
> tonight.

Here it is.

Hope it helps,
Noel

Enc


__
Do You Yahoo!?
LAUNCH - Your Yahoo! Music Experience
http://launch.yahoo.com


loginfo.pl
Description: loginfo.pl


Re: how to implement user level security in cvs ?

2002-06-14 Thread Noel Yap

--- Muhammad Shakeel
<[EMAIL PROTECTED]> wrote:
> Dear Noel,
> 
> loginfo script is not working when  i insert a tag.
> Of course loginfo 
> runs it only on check in, add and import case, but
> not in case of tag. 
> Should i run it through taginfo file as well or some
> changes in script 
> are requred ?
> 
> Thanks for ur help.

File system ACLs are only good for file system
elements.  CVS keeps one archive file for each file,
not for each branch, so it won't do anything for
branches.

I think there may be other partial solutions for
branches in which commitinfo does the checking (and
therefore doesn't afford real security since users can
subvert it).

Are you asking 'cos you want user level permissioning
for branches?

Noel


__
Do You Yahoo!?
Yahoo! - Official partner of 2002 FIFA World Cup
http://fifaworldcup.yahoo.com

___
Info-cvs mailing list
[EMAIL PROTECTED]
http://mail.gnu.org/mailman/listinfo/info-cvs



Re: how to implement user level security in cvs ?

2002-06-18 Thread Noel Yap

--- Muhammad Shakeel
<[EMAIL PROTECTED]> wrote:
> Dear Noel,
> 
> At the moment i am interested only to  refresh the
> ACL when we tag a 
> file. Because the loginfo script u sent me does not
> refresh the ACL when 
> i insert a tag on  a file or files. CVS actually
> removes the ACL 
> information from that tagged file or files because
> it recreates the file 
> in case of tag as well, like the case when some one
> check in a file. So 
> it was a requirement to run a script through 
> taginfo administrative file.
> 
> Can u please help in this regard.

I guess I've never tagged anything while I was using
ACLs so this is news to me.

Hopefully, you'll be able to do the same things inside
the taginfo script as you're doing inside the loginfo
script.  This should work if the taginfo script is
executed after the file has been created.  Now that I
think about it, I believe the taginfo script is
executed before the file is created (so that you can
check tag naming conventions).  If this is true, your
options are:
1. Hack CVS to add a post-tag trigger.  IMHO, CVS's
triggers can stand a good redesign so that most (if
not all) commands can have pre- and post-triggers.
2. Create a cvs wrapper that'll do what you need. 
This shouldn't be too difficult.  I think all you'd
need to do is wrap the cvs server, parse out the
affected files, and make ACL changes for each of those
files.

Sorry I can't supply a ready-made script.

Noel


__
Do You Yahoo!?
Yahoo! - Official partner of 2002 FIFA World Cup
http://fifaworldcup.yahoo.com

___
Info-cvs mailing list
[EMAIL PROTECTED]
http://mail.gnu.org/mailman/listinfo/info-cvs



RE: how to implement user level security in cvs ?

2002-06-18 Thread Stanton, Curt (NCI/IMS)

I would love to see the commands have pre and post triggers.  I think it
would be useful to a great number of people.

Thanks, I just wanted to add my two cents.

-Curt Stanton

-Original Message-
From: Noel Yap [mailto:[EMAIL PROTECTED]] 
Sent: Tuesday, June 18, 2002 8:24 AM
To: Muhammad Shakeel; [EMAIL PROTECTED]
Subject: Re: how to implement user level security in cvs ?


--- Muhammad Shakeel
<[EMAIL PROTECTED]> wrote:
> Dear Noel,
> 
> At the moment i am interested only to  refresh the
> ACL when we tag a
> file. Because the loginfo script u sent me does not
> refresh the ACL when 
> i insert a tag on  a file or files. CVS actually
> removes the ACL 
> information from that tagged file or files because
> it recreates the file 
> in case of tag as well, like the case when some one
> check in a file. So 
> it was a requirement to run a script through 
> taginfo administrative file.
> 
> Can u please help in this regard.

I guess I've never tagged anything while I was using
ACLs so this is news to me.

Hopefully, you'll be able to do the same things inside
the taginfo script as you're doing inside the loginfo
script.  This should work if the taginfo script is
executed after the file has been created.  Now that I
think about it, I believe the taginfo script is
executed before the file is created (so that you can
check tag naming conventions).  If this is true, your
options are:
1. Hack CVS to add a post-tag trigger.  IMHO, CVS's
triggers can stand a good redesign so that most (if
not all) commands can have pre- and post-triggers.
2. Create a cvs wrapper that'll do what you need. 
This shouldn't be too difficult.  I think all you'd
need to do is wrap the cvs server, parse out the
affected files, and make ACL changes for each of those
files.

Sorry I can't supply a ready-made script.

Noel


__
Do You Yahoo!?
Yahoo! - Official partner of 2002 FIFA World Cup
http://fifaworldcup.yahoo.com

___
Info-cvs mailing list
[EMAIL PROTECTED]
http://mail.gnu.org/mailman/listinfo/info-cvs

___
Info-cvs mailing list
[EMAIL PROTECTED]
http://mail.gnu.org/mailman/listinfo/info-cvs



[Fwd: Re: how to implement user level security in cvs ?]

2002-05-19 Thread Muhammad Shakeel




Hi Nick,

 Thanks for your reply. I need a loginfo script like the Noel send me in
perl.  As i  implented the ACL on my repository. There for the following
reason the unix script was required as Noel explained in his previous mail.

Given:
1. Default ACLs cannot tell the difference between
directories and files.
2. Repo directory permissions need to be treated
differently from repo file permissions.

Therefore:
1. A loginfo script will need to reset file ACLs for
each commit.  It will also need to set ACLs on new
elements.  Typically, this setting is a combination of
inheritance from the parent directory for ACL users
and groups and read permissions, files are never
writable, files may need to be executable, and
directories are always writable and executable.

 Script is in perl  and i need to learn it. I will appreciate if u can help 
in this regard.

 Regards,
 shakeel


 Nick Papadonis wrote:
[EMAIL PROTECTED]">
  Muhammad Shakeel <[EMAIL PROTECTED]> writes:
  
Thanks for your reply. I implemented a ACL on a folder in myrepository, when some one checkin in this folder, loginfo execute thescript and refreshes the whole ACL recursively  in that folder. Butwhen  a user who is not the owner of the files in repository (Althoughhe has rwx permissions), check in a file the script on its executiongives an error message :

Muhammad,I didn't catch this whole thread, but would like to offer ACLinsight.  I researched this area and ended up using the ACL scriptincluded with the CVS source.  When setup correctly, this script turns outsuitable for controlling access on a per module, directory, branch,and user basis.Hope this helps.- Nick


-- 
Regards,

Muhammad Shakeel
Streaming Networks (Pvt.) Limited
House 8, St. 31, F-7/1
Islamabad - 44000, Pakistan

Talk:  +92-51-2823585, +92-51-2275589
Fax:   +92-51-2820832
Email: [EMAIL PROTECTED]
Web:   streaming-networks.com



-- 
Regards,

Muhammad Shakeel
Streaming Networks (Pvt.) Limited
House 8, St. 31, F-7/1
Islamabad - 44000, Pakistan

Talk:  +92-51-2823585, +92-51-2275589
Fax:   +92-51-2820832
Email: [EMAIL PROTECTED]
Web:   streaming-networks.com






[Fwd: Re: how to implement user level security in cvs ?]

2002-05-19 Thread Muhammad Shakeel






   Dear Noel,
 AOA

 Thanks for a reference script. Shell script would be easier for me. The
script realized me the that perl should be learned.  I arranged a perl 5
book. It will take some time. 


 Regards,
 shakeel


 Noel Yap wrote:
[EMAIL PROTECTED]">
  --- Noel Yap <[EMAIL PROTECTED]> wrote:
  
able to look for my loginfo script.  I'll try to doittonight.

Here it is.Hope it helps,NoelEnc__Do You Yahoo!?LAUNCH - Your Yahoo! Music Experiencehttp://launch.yahoo.com


  

  
  
 Part 1.1
  
  
  

  


 Content-Type:

text/plain
  

  
  

  






  

  
  
 loginfo.pl
  
  
  

  


 Content-Description:

loginfo.pl
  
  


 Content-Type:

application/octet-stream
  
  


 Content-Encoding:

base64
  

  
  

  





-- 
Regards,

Muhammad Shakeel
Streaming Networks (Pvt.) Limited
House 8, St. 31, F-7/1
Islamabad - 44000, Pakistan

Talk:  +92-51-2823585, +92-51-2275589
Fax:   +92-51-2820832
Email: [EMAIL PROTECTED]
Web:   streaming-networks.com



-- 
Regards,

Muhammad Shakeel
Streaming Networks (Pvt.) Limited
House 8, St. 31, F-7/1
Islamabad - 44000, Pakistan

Talk:  +92-51-2823585, +92-51-2275589
Fax:   +92-51-2820832
Email: [EMAIL PROTECTED]
Web:   streaming-networks.com