2011-07-19 10 views
5

Me preguntaba si es posible utilizar grupos especificados en, por ejemplo, un archivo de Apache authgroup en allow_read y/o allow_push etc.Uso de grupos en allow_read de mercurial, allow_push etc

Así que básicamente lo que hago es que estoy usando Apache con un archivo de authfile y authgroup para autenticar usuarios. Ahora quiero restringir que algunos repositorios que utilizan allow_read se muestren a usuarios de un grupo específico especificado en el archivo de grupo de auth.

Digamos que tengo sam, frodo y sauron en mi archivo de autenticación y tengo un grupo de hobbits que contienen sam y frodo en el archivo de grupo de auth.

Así que en lugar de escribir:

allow_read = Frodo, Sam

me trataron

allow_read = @hobbits

pero eso no parece funcionar. ¿Alguien sabe si esto es realmente compatible? La idea es si tengo 10 Repositorios solo legibles para hobbits y agrego un hobbit. Solo tengo que cambiar el grupo de autenticación y el archivo de autenticación y no el archivo hgrc de cada repositorio.

Gracias de antemano

Respuesta

0

Parece que necesita para hacer su grupo de control en lugar de Apache en hgrc archivos, como el documentation for hgrc sólo menciona los nombres de usuario.

Le recomendamos que lea Configuring Apache en la página de Publicación de repositorios. La sección 7.4 parece contener la información que necesitará para configurar lo que desea.

+0

no exactamente lo que necesito, me temo. Por ejemplo, digamos que tengo 2 repositorios mientras que el primero solo debe ser visto y accesible por _hobbits_ y el segundo solo por _nonhobbits_. Dado que con apache y decir _LimitExcept_ solo puedo controlar los métodos de acceso _GET_, _POST_ etc. para la página del repositorio, no para cada repositorio – stryba

+0

La razón por la que pensé que sería útil es que hay ejemplos allí que indican que deberá dividir su * hobbits * y * nonhobbits * repos en directorios completamente separados con sus propias configuraciones (7.4.4 fue la pista más fuerte). ¿Las restricciones a un directorio no afectarían el acceso a repos bajo ese directorio? –

+0

Supongo que la restricción a un directorio podría afectar el acceso a repositorios.Pero el problema es que el problema del grupo _hobbit_ _nonhobbit_ es un ejemplo muy simplificado de las constalaciones que podría encontrar. Entonces, como dije para mí, sería más fácil tener soporte grupal en la sección web del archivo _hgrc_ de un repositorio. Pero parece que no es posible en este momento. – stryba

2

Mercurial no tiene ningún soporte integrado para grupos. Hay un parche de un usuario que agrega soporte de grupo, pero los programadores parecían reacios a incluirlo de manera predeterminada; en su lugar, quieren que el contribuyente haga un complemento. A partir de abril de 2013 se seem to have accepted it, pero todavía no veo rastro de él en la versión actualmente incluida con Ubuntu (2.7).

Controlar grupos en Apache, como sugiere Joel, no le da ningún control granular preciso cuando tiene más de un repositorio, por lo que no sirve de nada (al menos no para mí).

Terminé usando la herramienta de código abierto SCM-Manager para ello. SCM-Manager actúa como interfaz para SVN, Git y Mercurial y tiene soporte para varios directorios de usuarios (incluidos LDAP y Crowd), así como su propio directorio de usuarios.

Estoy usando mod_proxy para integrarlo en mi configuración de Apache y funciona bastante bien.