Comprendre le contrôle d'accès
Le contrôle d'accès d'une application HCL Commerce est composé des éléments suivants : les utilisateurs, les actions, les ressources et les relations.
- Les utilisateurs sont les personnes qui utilisent le système. Aux fins du contrôle d'accès, les utilisateurs doivent être regroupés en groupes d'accès pertinents. Les rôles sont un attribut commun utilisé pour déterminer l'appartenance à un groupe d'accès. Les rôles sont affectés aux utilisateurs par organisation. Pour plus d'informations sur les rôles, voir Rôles. Parmi les exemples de groupes d'accès, on retrouve les clients inscrits, les clients invités ou les groupes administratifs comme les représentants du service clientèle.
- Les actions sont les activités effectuées par les utilisateurs sur la ressource. Aux fins du contrôle d'accès, les actions doivent également être regroupées en groupes d'actions pertinents. Par exemple, une vue est une action courante utilisée dans un magasin. Une vue est utilisée pour afficher une page de magasin aux clients. Les vues utilisées dans votre magasin doivent être déclarées en tant qu'actions et affectées à un groupe d'actions avant de pouvoir être consultées.
- Les ressources sont les entités protégées. Par exemple, si l'action est une vue, la ressource à protéger est la commande qui a fait appel à la vue, comme com.ibm.commerce.command.ViewCommand. Pour les besoins du contrôle d'accès, les ressources sont regroupées dans des groupes de ressources.
- Les relations représentent la relation entre l'utilisateur et la ressource. Les stratégies de contrôle d'accès peuvent nécessiter qu'une relation entre l'utilisateur et la ressource soit satisfaite. Par exemple, les utilisateurs peuvent n'être autorisés qu'à afficher les commandes qu'ils ont créées.
Dans une application HCL Commerce, il existe deux principaux niveaux de contrôle d'accès. Le premier niveau de contrôle d'accès est effectué par WebSphere Application Server. A cet égard, HCL Commerce utilise WebSphere Application Server pour protéger les beans et les servlets d'entreprise. Le deuxième niveau de contrôle d'accès est le système de contrôle d'accès détaillé de HCL Commerce.
La structure de contrôle d'accès de HCL Commerce utilise les stratégies de contrôle d'accès pour déterminer si un utilisateur donné est autorisé à effectuer une action donnée sur une ressource donnée. Cette structure de contrôle d'accès fournit un contrôle d'accès détaillé. Elle fonctionne en conjonction avec le contrôle d'accès fourni par le WebSphere Application Server, mais ne le remplace pas.
Types de contrôle d'accès
Il existe deux types de contrôle d'accès, tous deux fondés sur des stratégies : contrôle d'accès au niveau de la commande et contrôle d'accès au niveau de la ressource.
Le contrôle d'accès au niveau de la commande (également appelé "basé sur les rôles") utilise un vaste type de stratégie. Vous pouvez spécifier que tous les utilisateurs d'un rôle particulier peuvent exécuter certains types d'instructions. Par exemple, vous pouvez spécifier que les utilisateurs disposant du rôle Représentant de compte peuvent exécuter n'importe quelle instruction dans le groupe de ressources AccountRepresentativesCmdResourceGroup. Ou, comme décrit dans le diagramme suivant, un autre exemple de stratégie consiste à spécifier que tous les administrateurs vendeurs peuvent effectuer n'importe quelle action spécifiée dans le groupe SellerAdministratorsViews sur toute ressource spécifiée par le ViewCommandResourceGroup.
Une stratégie de contrôle d'accès au niveau de la commande a toujours le ExecuteCommandActionGroup en tant que groupe d'actions pour les commandes de contrôleur. Pour les vues, le groupe de ressources est toujours ViewCommandResourceGroup.
Toutes les commandes de contrôleur doivent être protégées par un contrôle d'accès au niveau de la commande. En outre, toute vue qui peut être utilisée directement, ou qui peut être lancée par une redirection à partir d'une autre commande (contrairement au lancement par le passage à la vue) doit être protégée par un contrôle d'accès au niveau de la commande.
Le contrôle d'accès au niveau de la commande détermine si l'utilisateur est autorisé à exécuter la commande particulière dans le magasin que vous avez spécifié. Si une stratégie permet à l'utilisateur d'exécuter la commande, une stratégie de contrôle d'accès au niveau de la ressource peut être appliquée ensuite pour déterminer s'il peut accéder à la ressource en question.
A prendre en compte quand un administrateur vendeur tente d'exécuter une tâche administrative. Le premier niveau de vérification du contrôle d'accès détermine si cet utilisateur est autorisé à exécuter la commande d'administration du vendeur spécifique dans le magasin actuel. L'utilisateur est autorisé à exécuter la commande si la commande appartient au groupe de ressources ViewCommand et que l'utilisateur a le rôle Administrateur vendeur dans l'organisation du magasin actuel. Si c'est le cas, la commande peut alors déclencher une vérification de contrôle d'accès au niveau de la ressource si nécessaire. Pour satisfaire à cette vérification, une stratégie au niveau de la ressource devrait accorder l'accès. Une telle stratégie peut indiquer que les administrateurs vendeurs ne sont autorisés à effectuer des tâches administratives que sur des ressources appartenant à l'organisation dont l'utilisateur est administrateur vendeur.
Pour résumer, dans le contrôle d'accès au niveau de la commande, la "ressource" est la commande elle-même et l'"action" consiste à exécuter la commande dans le magasin actuel. La vérification du contrôle d'accès détermine si l'utilisateur est autorisé à exécuter la commande dans le magasin actuel. En revanche, dans le contrôle d'accès au niveau de la ressource, la "ressource" est toute ressource protégeable à laquelle la commande ou le bean accède et l'"action" est la commande elle-même.
Autres concepts de contrôle d'accès
HCL Commerce vous permet de déterminer, par le biais du contrôle d'accès, quelles tâches un utilisateur particulier, qu'il s'agisse de clients, d'acheteurs, d'administrateurs, de distributeurs, de fabricants ou de fournisseurs, peut effectuer par rapport à votre entreprise.
Pour faciliter la gestion des bases de données et assurer la sécurité, l'accès à HCL Commerce doit être limité à des personnes et à des organisations spécifiques. Le processus de restriction de l'accès est appelé contrôle d'accès ou autorisation. L'autorisation peut être définie comme les lignes directrices de sécurité qui :
- Autorisent ou refusent à un utilisateur d'un système l'accès aux ressources gérées par un système.
- Spécifient les actions que l'utilisateur peut effectuer sur chaque ressource.
Le modèle d'autorisation de HCL Commerce est basé sur l'application de stratégies de contrôle d'accès. Les stratégies de contrôle d'accès sont mises en application par le gestionnaire des stratégies de contrôle d'accès. En règle générale, lorsqu'un utilisateur tente d'accéder à une ressource protégée, le gestionnaire de stratégies de contrôle d'accès détermine d'abord les stratégies de contrôle d'accès qui s'appliquent à l'utilisateur, puis, en fonction de ces stratégies, si l'utilisateur est autorisé à effectuer l'opération demandée sur la ressource concernée.
L'administrateur de site gère les stratégies de contrôle d'accès qui s'appliquent à un site ou à un magasin.