Process Mining
2021.10
False
Image de fond de la bannière
Process Mining
Dernière mise à jour 2 avr. 2024

Utilisez une matrice d'accès pour activer l'accès aux données basé sur les rôles

Introduction

Cette page explique comment utiliser une matrice d'accès pour activer l'accès aux données basé sur les rôles pour les utilisateurs finaux.

Partie 1 : Définir le fichier de matrice d'accès

La matrice d'accès définit quels utilisateurs ont accès à quelle partie des données utilisées dans les accélérateurs de découverte, les applications ou les processus.

L'adresse e-mail de l'utilisateur final sera vérifiée dans la matrice d'accès. L'accès est accordé en fonction des relations entre l'adresse e-mail de l'utilisateur et l'attribut utilisé pour identifier les accélérateurs de découverte, les applications ou les processus définis dans le fichier de matrice d'accès.

Consultez l'illustration ci-dessous pour voir un exemple.



Remarque : le fichier Access Matrix doit contenir au moins le champ Email et le champ utilisé pour identifier les données que l'utilisateur est autorisé à voir. Dans cet exemple, l'attribut Company code visibility est utilisé pour identifier les données de processus.

Le formatage de l'e-mail peut être avec ou sans majuscules. Dans l’accélérateur ou l’application, le format sera vérifié et adapté si nécessaire. Voir la partie 4.

Dans cet exemple, la visibilité du code de la société est utilisée comme colonne pour filtrer les données. Cette colonne peut contenir plusieurs valeurs, de sorte que les données soient filtrées de manière à ce que les utilisateurs ne puissent voir que les sociétés qui leur sont autorisées. Les codes d'entreprise sont séparés par des virgules, dans la même colonne.

Partie 2 : Télécharger le fichier d'accès mfatrix

Pour utiliser le fichier Access Matrix dans votre accélérateur de découverte, votre application ou votre processus, vous devez le télécharger dans l'onglet de données du serveur Superadmin. Voir L' onglet Données du serveur (Server data).

Consultez l'illustration ci-dessous pour voir un exemple.



Dans l'exemple ci-dessus, la matrice d'accès pour l'accélérateur de découverte Purchase-to-Pay est utilisée, mais elle peut être utilisée de la même manière pour tout autre accélérateur de découverte ou application. Vous pouvez gérer plusieurs fichiers ou ajouter davantage de colonnes au fichier Excel d'origine.

Pour les restrictions au niveau de l'application, consultez Authentification.

Partie 3 : Créer les tables utilisées pour accéder à la matrice d'accès

Pour accéder à la matrice d'accès à partir de votre accélérateur de découverte ou de votre application, vous devez créer les éléments suivants

tableaux :

  • une table System qui affiche l'utilisateur actuel ;
  • une table de chaînes de connexion pour accéder à la matrice d'accès dans l'onglet Données du serveur ( Server data) .

Consultez l'illustration ci-dessous pour voir un exemple.



Dans cet exemple, les tables suivantes sont utilisées :

  • User
  • Access Matrix.

Table des utilisateurs

Suivez ces étapes pour créer une table système afin d'afficher l'utilisateur actuel.

Étape

Action

1

Ouvrez l'accélérateur ou l'application dans votre environnement de développement et accédez à l'onglet Données (Data) .

2

Cliquez avec le bouton droit dans la liste des tables et sélectionnez Nouvelle table - Table système....

3

Double-cliquez sur la nouvelle table et sélectionnez Utilisateur actuel comme étendue de la table.

Cliquez sur OK.

4

Appuyez sur F2 et renommez la nouvelle table Utilisateur (User).

La table User est une table système qui affiche l'utilisateur actuel. L'accès aux données est vérifié en fonction de l'e-mail.

Table Access_Matrix

La table Access Matrix utilise une chaîne de connexion au fichier de matrice d'accès dans l'onglet de données du serveur Superadmin. Suivez ces étapes pour créer une table de chaînes de connexion afin de charger le fichier de matrice d'accès.

Étape

Action

1

Cliquez avec le bouton droit dans la liste des tables et sélectionnez Nouvelle table - Chaîne de connexion....

2

Cliquez avec le bouton droit sur la table et cliquez sur Avancé > Options… ( Advanced > Options…

3

Dans la boîte de dialogue Options de la table , cliquez sur la liste déroulante du champ Étendue de la table dans la section Avancé et définissez l'étendue sur Serveur.

4

Double-cliquez sur la nouvelle table et ajoutez la chaîne de connexion au fichier Access Matrix que vous avez téléchargé dans l'onglet Données du serveur ( Server data) .

Cliquez sur OK.

5

Appuyez sur F2 et renommez la nouvelle table en Access_Matrix.

Voir illustration ci-dessous.



Partie 4 : Créer des expressions pour vérifier les données qu'un utilisateur est autorisé à consulter

Cette partie comprend les étapes suivantes

Étape 1 : Corrigez le format d'entrée ;

Étape 2 : faites correspondre l'utilisateur de connexion à la matrice d'accès ;

Étape 3 : créez une solution de secours pour la génération du cache ;

Étape 4 : filtrer les données.

Étape 1 : corriger le format d'entrée

Pour vous assurer que le formatage des e-mails est similaire entre la matrice d'accès et les utilisateurs finaux trouvés dans Active Directory, vous devez créer une expression pour supprimer le formatage des e-mails. Suivez ces étapes pour créer l’expression.

Étape

Action

1

Cliquez sur la table Access_matrix .

2

Cliquez avec le bouton droit dans la liste des éléments de la table et sélectionnez Nouvelle expression....

3

Entrez E- mail dans le champ Nom et sélectionnez Par enregistrement comme Type.

4

Entrer une expression

trim(lower(Email_input))

5

Cliquez sur OK.

Voir illustration ci-dessous.



Étape 2 : faire correspondre l'utilisateur de connexion à la matrice d'accès

Vous devez créer une expression de recherche dans la table User qui renvoie les sociétés (ou d'autres attributs de données) que l'utilisateur est autorisé à voir.

Étape

Action

1

Cliquez sur la table Utilisateur (User ).

2

Cliquez avec le bouton droit dans la liste des éléments de la table et sélectionnez Nouvelle expression....

3

Saisissez Recherche de visibilité du code de l'entreprise dans le champ Nom et sélectionnez Recherche comme Type.

4

Sélectionnez Access_Matrix comme table d'entrée

5

Entrer une expression

any(records.Company_code_visibility_input)

6

Cliquez avec le bouton droit dans le panneau Paramètres (Settings) et sélectionnez Ajouter un niveau (Add level).

7

Cliquez sur ... et sélectionnez l'expression E- mail .

8

Cliquez avec le bouton droit sur l'expression Email ** et sélectionnez Définir comme niveau d'expression.

9

Cliquez sur OK.

Voir illustration ci-dessous.



Si un utilisateur est autorisé à tout voir, ALL est renvoyé. Si un utilisateur n'est pas défini dans la matrice d'accès, la recherche renverra NULL pour garantir que les nouveaux utilisateurs ne verront aucune donnée.

Étape 3 : créer une solution de secours pour la génération de cache

Il s'agit d'une étape nécessaire pour garantir que toutes les données sont utilisées pour générer le cache lors de la génération du cache. Pour éviter que la matrice d'accès ne renvoie la valeur NULL lors de la génération du cache et du filtrage de toutes les données, vous devez définir une solution de secours.

Pour garantir que le cache est généré pour l'ensemble de données entier, le ALL peut être utilisé comme solution de secours. Cela signifie qu'aucun filtrage n'est appliqué lorsque le cache est généré. Les données ne sont filtrées pour l'utilisateur spécifique qu'après la génération du cache. Cette logique repose sur le fait que le champ e-mail est un champ obligatoire lors de la création de nouveaux utilisateurs, il ne sera donc pas vide pour les autres utilisateurs. Lors de la génération du cache, le champ e-mail est vide, aucun filtre n'est donc appliqué.

Suivez ces étapes pour créer une expression de secours.

Étape

Action

1

Cliquez sur la table Utilisateur (User ).

2

Cliquez avec le bouton droit dans la liste des éléments de la table et sélectionnez Nouvelle expression....

3

Saisissez Visibilité du code de l'entreprise dans le champ Nom et sélectionnez Par enregistrement comme Type.

4

Entrer une expression

if ( Email = NULL , "ALL" , Company_code_visibility_lookup )

5

Cliquez sur OK.

Voir illustration ci-dessous.



Si un utilisateur a affecté 'ALL' , il est autorisé à voir toutes les données. Sinon, les données que l'utilisateur est autorisé à voir sont déterminées par la société (ou tout autre attribut que vous avez spécifié).

Étape 4 : filtrer les données

L'expression doit vérifier si l'utilisateur a affecté « ALL ». Dans ce cas, toutes les données sont présentées à l'utilisateur. Sinon, l'expression doit extraire l'attribut et vérifier si cet attribut figure dans la liste.

Étant donné que les codes d'entreprise de la matrice d'accès sont conservés sur une seule ligne, ils doivent également être fractionnés et rognés pour garantir la création d'une liste pour chaque code d'entreprise (ou tout autre attribut que vous avez spécifié). Le rognage est utilisé pour supprimer tous les espaces indésirables dans le texte.

Suivez ces étapes pour créer une expression afin de filtrer les données.

Étape

Action

1

Cliquez sur la table Cases_data .

2

Cliquez avec le bouton droit dans la liste des éléments de la table et sélectionnez Nouvelle expression....

3

Saisissez Utilisateur du filtre du code de l'entreprise ( Company code filter user) dans le champ Nom (Name ) et sélectionnez Par enregistrement (Per record) comme Type.

5

Saisissez l'expression pour définir la liste des sociétés :

var list := trim(split(Company_code_visibility, ","));

8

Saisissez l'expression à si l'utilisateur a affecté « TOUS ».

if( "ALL" in list , TRUE , split(Company_code, " " ,0) in list )

9

Cliquez sur OK.

Voir illustration ci-dessous.



Cette expression est ensuite utilisée dans les jointures pour filtrer les données, afin de garantir que seules les données accordées sont affichées. Vous trouverez ci-dessous un exemple de jointure qui affiche les résultats d'une société spécifique pour filtrer les données de cas, ce qui réduit considérablement le nombre de cas.

Remarque : il est conseillé d'utiliser des filtres pour les incidents. Cependant, cette approche peut également être utilisée pour filtrer les événements.


Cette page vous a-t-elle été utile ?

Obtenez l'aide dont vous avez besoin
Formation RPA - Cours d'automatisation
Forum de la communauté UiPath
Logo Uipath blanc
Confiance et sécurité
© 2005-2024 UiPath. All rights reserved.