10. Groupes et sécurité des groupes

Les groupes permettent à l'administrateur d'isoler des bogues ou produits qui ne devraient être vus que par certaines personnes. L'association entre les produits et les groupes est gérée à partir de la page d'édition du produit sous « éditer les commandes des groupes ».

Si le paramètre makeproductgroups est activé, un nouveau groupe sera automatiquement créé pour chaque nouveau produit. Il est principalement disponible pour la compatibilité descendante avec des sites plus anciens.

Notez que les permissions de groupes sont telles que vous devez être membre de tous les groupes où se trouve un bogue, quelle qu'en soit la raison, pour voir ce bogue. De même, vous devez être membre de tous les groupes d'entrée d'un produit pour ajouter des bogues à un produit et vous devez être membre de tous les groupes « canedit » (« peut modifier ») d'un produit pour faire toute modification de bogues dans ce produit.

[Note]Note

Par défaut, les bogues peuvent également être vus par le propriétaire du bogue, le rapporteur et par toutes les personnes de la liste CC, quel que soit leur statut par rapport à leur accès normal au bogue. La visibilité pour le rapporteur et pour la liste CC peut être annulée (pour un bogue à la fois) en ressortant ce bogue, puis en allant à la section qui commence par « Utilisateurs dans les rôles sélectionnés ci-dessous... » et en décochant la case à côté de « rapporteur » ou « Liste CC » (ou les deux).

10.1. Création des groupes

Pour créer des groupes :

  1. Sélectionnez le lien « groups » dans le bas de page.

  2. Lisez attentivement les instructions sur l'écran « Edit Groups », puis sélectionnez le lien « Add Groups ».

  3. Remplissez les champs « Group », « Description », et « User RegExp ». « User RegExp » vous permet de placer automatiquement tous les utilisateurs qui remplissent les conditions de l'expression rationnelle dans le nouveau groupe. Quand vous avez fini, cliquez sur « Add ».

    Les utilisateurs dont les adresses électroniques correspondent à l'expression rationnelle seront automatiquement membres du groupe tant que leurs adresses électroniques continueront de correspondre à l'expression rationnelle.

    [Note]Note

    C'est une modification du 2.16 où l'expression rationnelle avait pour résultat l'adhésion permanente à un groupe pour un utilisateur. Pour supprimer un utilisateur d'un groupe dans lequel il était à cause d'une expression rationnelle, dans la version 2.16 ou précédemment, l'utilisateur doit être supprimé explicitement du groupe.

    [Avertissement]Avertissement

    Si vous spécifiez un domaine dans le regexp, assurez vous que vous avez bien terminé l'expression rationnelle avec un « $ ». Sinon quand vous autoriserez l'accès à @monentreprise\.com, vous autoriserez l'accès à mauvaisepersonne@monentreprise.com.cracker.net. Il vous faut utiliser @monentreprise\.com$ comme expression rationnelle.

  4. Si vous décidez d'utiliser ce groupe pour contrôler directement l'accès aux bogues, cochez la case « use for bugs » . Les groupes non utilisés pour des bogues restent utiles car les autres groupes peuvent inclure le groupe entier.

  5. Après avoir ajouté votre nouveau groupe, éditez le nouveau groupe. Sur la page d'édition, vous pouvez spécifier d'autres groupes qui devraient être inclus dans ce groupe et quels groupes devraient être autorisés à ajouter ou à supprimer des utilisateurs à partir de ce groupe.

10.2. Affecter des utilisateurs aux groupes

Les utilisateurs peuvent devenir membres d'un groupe de plusieurs façons.

  1. L'utilisateur peut être explicitement placé dans le groupe en éditant le propre profil de l'utilisateur.

  2. Le groupe peut contenir un autre groupe auquel l' utilisateur appartient.

  3. L'adresse électronique de l'utilisateur peut correspondre à une expression rationnelle que le groupe définit pour attribuer automatiquement le statut du membre.

10.3. Affecter les commandes de groupe aux produits

Sur la page d'édition du produit, il y a une page pour éditer le « Group Controls » d'un produit. Cela vous permet de paramétrer le lien qui existe entre un groupe et un produit. Les groupes peuvent être applicables, par défaut et obligatoires ainsi qu'être utilisés pour contrôler qui a le droit d'entrer un rapport de bogue ou pour limiter à un groupe particulier le droit de modifier les rapports de bogue.

Pour chaque groupe, il est possible de spécifier si être membre de ce groupe...

  1. est nécessaire pour entrer un bogue (Entry).

  2. est sans objet pour ce produit (NA), est une restriction que les membres de ce groupe peuvent ajouter à ce produit (Shown), est une restriction par défaut lorsque les membres de ce groupe ajoutent un bogue à ce produit (Default), ou est une restriction obligatoire à placer sur les bogues de ce produit (Mandatory).

  3. est sans objet pour ce produit pour les non membres (NA), est une restriction que les non membres de ce groupe peuvent ajouter à ce produit (Shown), est une restriction par défaut lorsque les non membres de ce groupe ajoutent un bogue à ce produit (Default), ou est une restriction obligatoire à placer sur les bogues de ce produit lorsqu'ils sont entrés par des non membres (Mandatory).

  4. est nécessaire pour faire toute modification sur les bogues de ce produit y compris des commentaires.

Ces paramètres sont souvent indiqués dans cet ordre. Par exemple, pour un produit qui demande, pour entrer un bogue, qu'un utilisateur soit membre du groupe « foo » et demande ensuite que le bogue reste en permanence restreint au groupe « foo » et enfin que seuls les membres du groupe « foo » puissent modifier ce bogue, bien que celui-ci puisse être visible pour d'autres, le paramétrage du groupe serait résumé ainsi :

 
foo: ENTRY, MANDATORY/MANDATORY, CANEDIT

10.4. Applications courantes des commandes de groupe

10.4.1. Accès utilisateur général avec le groupe Securité

Pour laisser tout utilisateur soumettre des bogues dans chaque produit (A, B, C...) et laisser tout utilisateur soumettre ces bogues dans un groupe de sécurité...

 
Produit A...
security: SHOWN/SHOWN
Produit B...
security: SHOWN/SHOWN
Produit C...
security: SHOWN/SHOWN

10.4.2. Accès utilisateur général avec un produit Security

Pour laisser tout utilisateur soumettre des bogues dans un produit de sécurité tout en gardant ces bogues invisibles à toute personne étrangère au groupe securityworkers à moins qu'un membre du groupe securityworkers enlève cette restriction...

 
Product Security...
securityworkers: DEFAULT/MANDATORY

10.4.3. Isolation du produit avec un groupe commun

Pour laisser les utilisateurs du produit A accéder aux bogues du produit A, les utilisateurs du produit B à accéder au produit B et l'équipe du support à accéder aux deux, 3 groupes sont nécessaires

  1. Support : contient les membres de l'équipe de support.

  2. AccessA : contient les utilisateurs du produit A et le groupe Support.

  3. AccessB : contient les utilisateurs du produit B et le groupe Support.

Une fois ces 3 groupes définis les commandes de groupe des produits peuvent être fixées à...

Product A...
AccessA: ENTRY, MANDATORY/MANDATORY
Product B...
AccessB: ENTRY, MANDATORY/MANDATORY

Si on le souhaitait, le groupe Support pourrait être autorisé à rendre les bogues inaccessibles aux utilisateurs et pourrait être autorisé à publier les bogues concernant tous les utilisateurs dans un produit courant qui est en lecture seule pour toute personne extérieure au groupe de soutien. Cette configuration pourrait être...

Product A...
AccessA: ENTRY, MANDATORY/MANDATORY
Support: SHOWN/NA
Product B...
AccessB: ENTRY, MANDATORY/MANDATORY
Support: SHOWN/NA
Product Common...
Support: ENTRY, DEFAULT/MANDATORY, CANEDIT