Sécurité

IBM® UrbanCode Deploy met à disposition un modèle de sécurité reposant sur les rôles et les équipes, qui est mappé à votre structure organisationnelle.

D'un point de vue général, le système de sécurité se compose d'un domaine d'authentification, d'un domaine d'autorisation, de rôles et d'équipes. Le domaine d'authentification vérifie l'identité de l'utilisateur ou du système qui tente de se connecter à IBM UrbanCode Deploy. Le domaine d'autorisation gère les groupes d'utilisateurs. Les rôles gèrent les droits d'accès. Les équipes associent des utilisateurs à des rôles et des zones de produit sécurisées.

Présentation des droits d'accès et des types de sécurité

Il est essentiel de comprendre la notion de droit d'accès pour appréhender le système de sécurité reposant sur des équipes. L'utilisation que fait IBM UrbanCode Deploy du terme droit d'accès est familière à la plupart des lecteurs : chaque droit d'accès contrôle l'accès à une zone de produit ou à une fonction du produit. La majorité des droits d'accès fait référence à des activités classiques telles que la création, la lecture, la mise à jour et la suppression. Les droits d'accès définissent les actions possibles mais n'identifient pas les utilisateurs pouvant effectuer ces actions.

La plupart des zones de produit possèdent un ensemble de droits d'accès qui ont un impact sur la façon dont les utilisateurs interagissent avec elles. Les droits d'accès d'une zone de produit sont définis par les types de sécurité. La zone de produit de composant possède des types de sécurité qui ont un impact sur la capacité de l'utilisateur à interagir avec les composants. Les types de sécurité qui sont disponibles pour la zone de produit d'agent ont un impact sur les agents, etc.

D'autres types de sécurité peuvent être définis pour la plupart des zones de produit. Chaque type de sécurité éligible est distribué avec un type "standard" défini, par exemple "Agent standard" ou "Composant standard". Chaque type supplémentaire dans une zone partage le même ensemble de droits d'accès. Par exemple, chaque type d'agent possède le même ensemble de droits d'accès : éditer et afficher. Voir Types de sécurité.

Rôles

Un rôle est un ensemble de droits d'accès accordés. La définition d'un rôle consiste en l'attribution de droits d'accès à tous les types de sécurité qui sont affectés par le rôle. Un rôle de type développeur peut disposer des droits d'accès permettant de créer des applications, mais pas de les exécuter dans des environnements de production. Par ailleurs, un rôle de type déployeur peut être capable d'exécuter des applications, mais pas de les créer. Vous décidez du nombre de rôles et de leurs fonctions. En l'état, IBM UrbanCode Deploy met à disposition un rôle, le rôle d'administrateur, qui possède tous les droits d'accès pour tous les types de sécurité.

Important : Un rôle n'attribue pas les droits d'accès qui lui ont été accordés à tous les utilisateurs. A l'instar des droits d'accès, les rôles définissent les actions possibles mais n'identifient pas les utilisateurs pouvant effectuer ces actions. Les rôles et les droits d'accès associés sont appliqués aux utilisateurs par des équipes.

Equipes

Une équipe est une construction qui associe des utilisateurs ou des groupes à des rôles. Lorsqu'un utilisateur est ajouté à une équipe, cette personne est affectée à un rôle ; les utilisateurs ne peuvent pas être ajoutés à une équipe s'ils ne sont pas affectés à un rôle. Tous les droits d'accès qui sont définis pour le rôle sont affectés automatiquement aux membres du rôle. Des groupes peuvent également être ajoutés à des rôles, auquel cas les droits d'accès qui sont définis pour le rôle sont affectés automatiquement à tous les membres du groupe.

Lorsqu'une équipe est créée, tous les utilisateurs et groupes disponibles pour l'affectation, ainsi que tous les rôles, peuvent être utilisés. Plusieurs rôles peuvent être affectés à des utilisateurs. Si un utilisateur est associé à un rôle qui accorde un droit d'accès particulier et à un autre rôle qui n'accorde pas ce droit, l'utilisateur possède ce droit.

Les équipes sécurisent les ressources. Pour sécuriser un environnement par exemple, une équipe lui est affectée. Une fois l'environnement sécurisé, seuls les membres de l'équipe auxquels a été affecté un rôle avec un droit d'accès approprié peuvent affecter l'environnement.

L'équipe système livrée avec IBM UrbanCode Deploy comporte l'utilisateur admin, qui est affecté au rôle d'administrateur. Le rôle d'administrateur possède tous les droits d'accès pour tous les types de sécurité standard, ainsi que pour les paramètres de serveur et d'interface utilisateur Web. L'équipe système ne peut pas être supprimée.

Sécurité des ressources

Il existe deux types de droit d'accès : les types associés à une portée spécifique et les types dont la portée est plus générale. Les types de sécurité d'environnement possèdent quatre droits d'accès : créer, éditer, exécuter et afficher. A l'exception du droit d'accès "créer", ces droits ont un impact sur une ressource spécifique seulement ; leur portée est un environnement spécifique. Si une équipe disposant du droits d'accès "exécuter" est associée à l'environnement de production par exemple, seuls les membres de l'équipe possédant ce droit peuvent exécuter des applications dans l'environnement. Les membres de l'équipe associés à d'autres rôles qui n'accordent pas le droit d'accès "exécuter" ne peuvent pas exécuter des applications dans cet environnement. Les membres des équipes qui ne sont pas associées à l'environnement ne peuvent pas exécuter d'application, qu'ils possèdent le droit d'accès "exécuter" ou non.

Le droit d'accès "créer" est différent des autres types de droit d'accès. Il n'a pas pour portée une ressource spécifique, mais est plus général. Les membres d'équipe disposant d'un droit d'accès de type "créer" peuvent créer des ressources du type lié sans être associés d'abord à une ressource spécifique. Dans l'exemple concernant l'environnement, les utilisateurs disposant du droit d'accès d'environnement "créer" peuvent créer des environnements même si leur équipe n'est pas associée à un environnement spécifique.

Dans la figure ci-dessous, l'équipe productionTeam est associée à l'environnement tutorialProdEnvironment. Le rôle productionRole possède le droit d'accès "exécuter" pour les environnements. Les membres de l'équipe possédant ce rôle, par exemple prodDeployer, peuvent exécuter des applications dans l'environnement. Les membres de l'équipe ne possédant pas ce rôle, par exemple developerLead, ne peuvent pas exécuter d'application même si l'équipe est associée à l'environnement.

Figure 1. Droits d'accès de sécurité d'équipe
Remarque :
L'utilisateur developerLead peut créer et modifier des environnements. De plus, l'utilisateur developerDB peut créer des environnements même si l'équipe developmentTeam n'est pas associée à cet environnement ou à un autre environnement.

Lorsqu'une équipe est affectée à un objet, le type de sécurité est également déterminé. En variant les types de sécurité, vous pouvez affiner les droits d'accès de l'équipe. Par exemple, une équipe peut disposer d'un ensemble de droits d'accès pour un composant et, si vous changez le type de sécurité, d'un autre ensemble pour un composant différent.


Commentaires en retour