2013-06-21 3 views
0

Existe-t-il un moyen de contrôler l'accès en lecture/accès à svn en utilisant une autorisation basée sur le chemin qui repose sur des expressions régulières ou des caractères génériques? Je sais que je peux utiliser svnperms pour contrôler l'accès en écriture via le script commit mais je dois aussi limiter l'accès en lecture/affichage et j'ai actuellement un projet root avec des fichiers de commit auxquels tous les utilisateurs ont besoin d'accéder et de sous-répertoires. que seules des personnes spécifiques devraient avoir accès. L'octroi de l'accès au répertoire principal du projet l'accorde automatiquement à tous les sous-répertoires. Si je pouvais mettre en place une règle regex, je pourrais facilement limiter l'accès.Comment puis-je utiliser des caractères génériques ou des expressions régulières pour contrôler l'autorisation/le contrôle d'accès basé sur le chemin pour svn?

Si je ne peux pas trouver un moyen de contrôler l'accès via un caractère générique ou des modèles dont j'ai besoin pour refactoriser la structure de répertoire pour déplacer les fichiers de niveau supérieur dans un sous-répertoire sur lequel je peux définir des autorisations.

S'il vous plaît laissez-moi savoir si vous connaissez soit:

    scénario
  • crochet qui peut contrôler vue l'accès
  • d'extension apache qui peut fournir des capacités de authz avec des jokers ou des motifs regex
+0

http://subversion.tigris.org/issues/show_bug.cgi?id=2662 – bahrep

Répondre

1

au Juin 2013, il est impossible de le faire. Ainsi, la solution au problème consiste à réorganiser le référentiel, ce qui n'est pas nécessaire. Quand une chose est trop difficile, cela conduit généralement à repenser le design ou l'approche.

à structure Maven conduit à cette exigence: racine/pom.xml racine/projet1/pom.xml root/projet2/pom.xml etc ..

Nous pouvons le remplacer par /root/pom.xml /project1/pom.xml /project2/pom.xml etc ..

Nous pouvons définir les svn perms comme suit l'octroi de tous les accès en lecture au projet de niveau supérieur et lire écrire à leur projet . Si un serveur de génération d'intégration continue remplit un repo Maven interne avec l'instantané racine, les utilisateurs doivent uniquement extraire des projets spécifiques.

[repo:/root] 
* = r 
@releng = rw 

[repo:/project1] 
@teamOne = rw 

[repo:/project2] 
@teamTwo = rw 
Questions connexes