Limite el acceso de los usuarios a los repositorys en Assembla u otro service de alojamiento SVN

Estuve investigando la solución de hosting Assembla SVN después de leer algunas críticas bastante positivas. Sin embargo, uno de mis requisitos es limitar el acceso de los usuarios a ciertos repositorys que he configurado. La razón es que tenemos un contratista que quiero verificar en su código en un repository assembla en particular, pero no quiero otorgarles acceso a otros repositorys de código que he configurado.

Las únicas restricciones que pude ver a este respecto fue configurar a los usuarios para editar, ver o todos los modos que no parece encajar con lo que estoy buscando. Intenté leer las preguntas frecuentes de Assembla pero no pude encontrar información sobre esto.

Estamos en el package de inicio que da 1 espacio y 3 usuarios.

Entonces, ¿es posible usar el service Assembla? Si no es así, ¿hay opciones gratuitas o tan baratas que hagan esto?

Gracias.

ACTUALIZACIÓN: decidí investigar esto un poco más para Assembla y parece que no ofrece este control de grano fino como sugerencia de David. Encontré esta información en su foro de soporte en http://forum.assembla.com/forums/2-Subversion-and-Git/topics/3567-Team-permissions-to-different-repositories-in-the-same-space .

Supongo que la pregunta ahora es si alguien sabe de otra solución de hosting svn que ofrezca este control de nivel de usuario.

Assembla le brinda la posibilidad de agregar múltiples repositorys dentro del mismo proyecto, o espacio que ellos le llamen, y tiene diferentes permissions por rol (vigilante, miembro, propietario) en cada uno de estos repositorys. O puede elegir una solución de cartera para administrar múltiples espacios dentro de una sola cartera con diferentes equipos y permissions. Es un producto complejo que hace muchas cosas, solo necesita tomarse un time y revisarlo más a background.

He estado usando Assembla durante varios meses. Y esta es mi pequeña contribución al tema. En realidad, hay una diferencia entre repositorys y espacios. Si crea un espacio en Assembla, puede agregar varios repositorys al mismo espacio. Un espacio es solo un lugar donde tienes tu proyecto. Si vas a la pestaña de administración de tu espacio en las secciones de herramientas, encontrarás la opción de agregar otro repository svn dentro del mismo espacio. Y sí, es cierto, si otorga cierto acceso a un determinado usuario, entonces el usuario obtiene el mismo acceso al rest de los repositorys. Por lo tanto, supongamos que quieres que un determinado usuario tenga acceso de edición a svn repo1 pero no a snv repo2, entonces debes crear un espacio diferente para mantener ese segundo repository.

¡Espero eso ayude!

  1. Las ACL de Assemlba funcionan por proyecto , no por repo (es decir, usted otorga el mismo acceso a todos los repos dentro del proyecto para todos y cualquier nivel de usuario)
  2. El repository abierto permite el acceso de lectura para todos
  3. Consecuencia del punto 1 y el punto 2: si agrega usuario en un proyecto con un repository, es bastante fácil encontrar otros repositorys "ocultos" en caso común (si el usuario común compartió los proyectos)
  4. Consecuencia del punto 1 y del punto 2 y del punto 3: si desea un repository realmente seguro , debe crear un proyecto privado y recostackr todos los repos en su interior.

Miré a Assembla, pero no pude encontrar ninguna información y no quería crear un espacio. ¿Assmebla le da acceso al server de repository de Subversion en sí? De lo contrario, probablemente no haya una forma de especificar los detalles que desea.

Vamos a aclarar algunas cosas en sus definiciones:

  • Repositorio : Un repository es un directory de Subversion creado con el command svnadmin create . Puede contener un solo proyecto o múltiples proyectos, cada uno con su propio trunk , branches y directorys de tags .
  • Módulo : este es un proyecto en un repository de Subversion. Puede haber múltiples modules en un único repository o un solo module. Cada module normalmente contendrá sus propios directorys de trunk , tags y branches .

Creo que Assmebla dice que un espacio es un único repository de Subversion. Cuando dices varios repositorys , supongo que hablas de múltiples modules en un solo repository / espacio .

En Subversion, si tiene control sobre el server Subversion y el directory del repository en sí, puede controlar el acceso al directory por usuario. De esta manera, podría tener un único repository con múltiples modules (que supongo que tiene) y puede controlar quién tiene acceso de lectura y escritura a cada module.

Si Assembla es como la mayoría de los sitios de alojamiento de Subversion, no le dan acceso directo al server. En su lugar, utiliza las herramientas que le proporcionan, y es muy raro que un sitio le proporcione herramientas para otorgarle este grado de control. En cambio, un usuario tiene acceso al repository, o no. (Y ese acceso podría include o no acceso de escritura).

Si desea un repository separado en Assembla para este contratista, probablemente tendrá que crear un segundo espacio solo para este contratista y pagar dos espacios.

Una cosa más sobre Subversion: no puedes svn copy svn merge , svn merge , o usar svn:external entre repositorys. No sé si este último es un problema para usted o no.

Desde entonces he mirado un poco y creo que he encontrado una solución svn para el tipo de restricciones de acceso que estoy buscando.

La solución que ahora estoy buscando es VersionShelf . Aunque no parecen ser tan rápidos como Assembla para checkins / checkouts (el uso temprano parece indicar esto) parecen ofrecer las restricciones de acceso por repository al nivel de grano fino que necesito.

Una vez más, parece que Assembla y Unfuddle (que también revisé) tienen esto en su function principal solicitada, por lo que puede suceder con estas soluciones en el futuro cercano.