Node:Acceso anonimo, Next:Estructura del repositorio, Previous:El servidor de autentificacion de contrasen~as, Up:Administracion del Repositorio
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.