Node:Acceso anonimo, Next:, Previous:El servidor de autentificacion de contrasen~as, Up:Administracion del Repositorio



Acceso anonimo

Hasta ahora s�lo hemos visto c�mo usar el servidor de autentificaci�n de contrase�as para dar acceso total al repositorio (aunque es cierto que se puede restringir ese acceso mediante permisos de fichero Unix cuidadosamente elegidos). Pasar a acceso an�nimo y de s�lo lectura es un paso simple: s�lo hay que a�adir un nuevo fichero, o quiz� dos, en CVSROOT/. Los nombres de los ficheros son readers y writers - el primero contiene una lista de nombres de usuario que pueden leer el repositorio solamente, y el segundo los usuarios que pueden leer y escribir.

Si lista un nombre de usuario en CVSROOT/readers, ese usuario tendr� acceso de s�lo lectura a todos los proyectos del repositorio. Si lista un nombre de usuario en CVSROOT/writers, ese usuario tendr� acceso a escritura, y todos los usuarios de pserver que no est�n listados en writers tendr�n acceso de s�lo lectura (es decir, si el fichero writers existe, implica acceso de s�lo lectura para todos los que no est�n listados en �l). Si el mismo nombre de usuario se encuentra listado en los dos ficheros, CVS resuelve el conflicto del modo m�s conservador: el usuario tendr� acceso de s�lo lectura.

El formato de los ficheros es muy simple: un usuario por l�nea (no olvide poner una nueva l�nea en blanco despu�s del �ltimo usuario). Un fichero readers de muestra ser�a:

anonymous
splotnik
guest
jbrowse

Hay que notar que los ficheros se refieren a nombres de usuario de CVS, no de sistema. Si usa alias de usuario en el fichero CVSROOT/passwd (poniendo un nombre de usuario de sistema despu�s de los segundos dos puntos), el nombre de usuario m�s a la izquierda es el que hay que listar en el fichero readers o writers.

Para ser preciso, hay una descripci�n formal del comportamiento del servidor para decidir si dar acceso de s�lo lectura o de lectura y escritura:

Si existe un fichero readers y este usuario est� listado en �l, se le dar� acceso de s�lo lectura. Si existe un fichero writers y este usuario no est� listado en �l, se le dar� tambi�n acceso de s�lo lectura (esto es cierto incluso si existe un fichero readers pero esa persona no est� listada en �l). Si esa persona est� listada en ambos, se le dar� acceso de s�lo lectura. En todos los dem�s casos, a esa persona se le dar� acceso completo de lectura y escritura.

As�, un repositorio t�pico con acceso a CVS an�nimo tendr� esto (o algo parecido) en CVSROOT/passwd

anonymous:XR4EZcEs0szik

esto (o algo parecido) en /etc/passwd

anonymous:!:1729:105:Usuario CVS An�nimo:/usr/local/nuevorepos:/bin/false

y esto en CVSROOT/readers:

anonymous

Y, por supuesto, la configuraci�n mencionada anteriormente en /etc/services y /etc/inetd.conf. �Y eso es todo!

Hay que remarcar que algunos sistemas Unix antiguos no permiten nombres de usuario mayores de ocho caracteres. Una forma de arreglar esto ser�a llamar al usuario anon en lugar de anonymous en CVSROOT/passwd y los ficheros de sistema, porque la gente asume a menudo que anon es una abreviatura de anonymous de todas formas. Pero ser�a mejor poner algo como esto en el fichero CVSROOT/passwd

anonymous:XR4EZcEs0szik:cvsanon

(y luego, por supuesto, usar cvsanon en los ficheros de sistema). De este modo ser� capaz de publicar una direcci�n de repositorio que use anonymous, que es m�s o menos el est�ndar ahora. La gente que acceda al repositorio con

cvs -d :pserver:anonymous@cvs.foobar.com:/usr/local/nuevorepos (etc...)

realmente ejecutar�an en el servidor como cvsanon (o lo que sea). Pero no necesitar�an conocer o preocuparse de c�mo est�n configuradas las cosas en el lado del servidor - s�lo ver�an la direcci�n publicada.