Configuration du profil d'accès aux données
Vous devez définir un profil d'accès aux données pour toutes les dimensions sécurisées d’un modèle.
Si aucun profil n'est défini pour une dimension sécurisée, les utilisateurs affectés à ce profil ne disposent pas des droits d'accès à ce modèle. Si vous définissez partiellement l'accès, par exemple, pour l'une des deux dimensions sécurisées, les utilisateurs n’ont toujours pas accès au modèle.
Après avoir créé un profil d'accès aux données, vous devez l'affecter aux utilisateurs en fonction des besoins.
Règles générales de sécurité d'accès aux données
La sécurité d'accès aux données est basée sur les règles suivantes :
Par défaut, seul l'administrateur système a accès aux membres. L’accès aux membres doit être autorisé de façon explicite.
Un accès aux données peut être affecté à un utilisateur de façon individuelle et via l’adhésion à une équipe.
Les droits d'accès aux données circulent dans la hiérarchie de façon descendante, du parent vers l'enfant.
En cas de conflit, le profil d'accès aux données le moins restrictif est appliqué.
En cas de conflit entre accès aux données individuel et par équipe, l’option la moins restrictive est appliquée.
Création de profils d'accès aux données
Accédez à la page Administration et sous la section Sécurité, cliquez sur Profil d’accès aux données.
Dans l'écran qui s'affiche, sélectionnez Nouveau.
Entrer l’ID et la description du nouveau profil d’accès aux données.
Sélectionnez le modèle requis dans la liste.
Pour chaque autorisation et dimension pertinentes, sélectionnez les membres requis et définissez leurs droits d'accès.
Accédez à l'onglet Utilisateurs ou Équipes pour affecter le nouveau profil d'accès aux données aux utilisateurs affectés à l'environnement actuel ou aux équipes ayant des utilisateurs correspondants qui lui sont affectés.
Définition de l’accès aux membres comportant des enfants
Lors de la définition de l’accès à une dimension sécurisée qui possède une ou plusieurs hiérarchies définies, la sécurité est appliquée au membre et à tous ses enfants. Par exemple, si vous accordez l’accès à un membre qui a dix enfants, les utilisateurs ayant accès au membre parent ont également accès aux 10 enfants.
Vous pouvez restreindre un membre enfant d’un parent ayant un accès "Lecture seule" ou "Écriture" en créant votre propre profil d'accès aux données et en affectant à l’enfant un accès "Refusé". Vous pouvez également utiliser le même profil d'accès aux données en tant que parent, mais créer un nouveau poste pour l'enfant.
Résolution des conflits de profils d'accès aux données
Étant donné que vous pouvez définir les accès membre par utilisateur individuel et par équipe, des situations de conflit peuvent survenir. Les sections suivantes décrivent des scénarios potentiels de conflits d’accès membre et les règles que le système applique pour la résolution de ces conflits. Ces scénarios sont basés sur l’hypothèse que la dimension d’entité est une dimension sécurisée et comporte la structure hiérarchique suivante :
Hiérarchie |
Membres |
|||
H1 |
Monde1 |
Ventes |
VentesAsie |
VentesCorée VentesJapon VentesEnLigneAsie |
VentesEurope |
VentesItalie VentesFrance VentesEnLigneEurope |
|||
H2 |
Monde2 |
Asie |
Corée |
VentesCorée |
Japon |
VentesJapon |
|||
eAsie |
VentesEnLigneAsie |
|||
Europe |
Italie |
VentesItalie |
||
France |
VentesFrance |
|||
eEurope |
VentesEnLigneEurope |
|||
Conflit entre profils
En cas de conflit entre des profils d'accès aux données, le profil le moins restrictif est toujours appliqué. Cette section décrit trois scénarios différents présentant des conflits entre profils.
Scénario 1 :
Utilisateur1 appartient à Équipe1 et à Équipe2.
Il existe deux profils d'accès aux données : ProfilA et ProfilB.
ProfilA est affecté à Équipe1 et ProfilB est affecté à Équipe2.
Les profils d'accès aux données sont décrits dans le tableau suivant :
Profil d'accès aux données |
Accès |
Dimension |
Membre |
ProfilA |
Écriture |
Entité |
Ventes |
ProfilB |
Lecture seule |
Entité |
VentesAsie |
Dans ce cas, le profil le moins restrictif des deux, c’est-à-dire ProfilA (Écriture) est appliqué. Par conséquent, ProfilB est ignoré par le système et Utilisateur1 peut envoyer des données à la fois vers VentesCorée et VentesItalie.
Scénario 2 :
Utilisateur1 appartient à Équipe1 et à Équipe2.
Il existe deux profils d'accès aux données : ProfilA et ProfilB.
ProfilA est affecté à Équipe1 et ProfilB est affecté à Équipe2.
Les profils d'accès aux données sont décrits dans le tableau suivant :
Profil d'accès aux données |
Accès |
Dimension |
Membre |
ProfilA |
Lecture seule |
Entité |
Ventes |
ProfilB |
Écriture |
Entité |
VentesAsie |
Dans ce cas, le profil le moins restrictif des deux, c’est-à-dire ProfilB (Écriture) est appliqué pour les membres enfant de VentesAsie. Par conséquent, ProfilA est ignoré par le système et Utilisateur1 peut envoyer des données vers VentesCorée mais pas vers VentesItalie.
Scénario 3 :
Utilisateur1 n’appartient à aucune équipe.
Il existe deux profils d'accès aux données : ProfilA et ProfilB.
Les deux profils sont affectés à l'utilisateur.
Les profils d'accès aux données sont décrits dans le tableau suivant :
Profil d'accès aux données |
Accès |
Dimension |
Membre |
ProfilA |
Refusé |
Entité |
VentesAsie |
ProfilB |
Lecture seule |
Entité |
Ventes |
Dans ce cas, le profil le moins restrictif des deux, c’est-à-dire ProfilB (Lecture seule) est appliqué. Par conséquent, ProfilA est ignoré par le système et Utilisateur1 peut récupérer des données à la fois depuis VentesCorée et VentesItalie.
Conflit entre membres parent et enfant
L’autorité circule toujours dans la hiérarchie de façon descendante, du parent vers l'enfant. Les membres enfant ont accès au niveau de leurs parents, sauf indication contraire.
Scénario 1 :
Utilisateur1 appartient à Équipe1 et ProfilA est affecté à Équipe1.
Deux niveaux de profils d'accès aux données sont définis pour ProfilA.
Les profils d'accès aux données pour ProfilA sont décrits dans le tableau suivant :
Profil d'accès aux données |
Accès |
Dimension |
Membre |
ProfilA |
Écriture |
Entité |
Ventes |
ProfilA |
Lecture seule |
Entité |
VentesAsie |
Dans ce cas, l'accès Écriture du membre Chiffre d'affaires circule de façon descendante vers ses enfants. Ce flux est interrompu par l’affectation d’un accès Lecture seule à VentesAsie (un descendant de Ventes) et l’accès de VentesAsie circule de façon descendante vers ses descendants. Par conséquent, Utilisateur1 peut envoyer des données vers VentesItalie mais pas vers VentesCorée.
Scénario 2 :
Utilisateur1 appartient à Équipe1 et ProfilA est affecté à Équipe1.
ProfilA possède deux niveaux de profils d'accès aux données.
Les profils d'accès aux données pour ProfilA sont décrits dans le tableau suivant :
Profil d'accès aux données |
Accès |
Dimension |
Membre |
ProfilA |
Lecture seule |
Entité |
Ventes |
ProfilA |
Écriture |
Entité |
VentesAsie |
Dans ce cas, l'accès Lecture seule du membre Chiffre d'affaires circule de façon descendante vers ses enfants. Ce flux est interrompu par l’affectation d’un accès Écriture à VentesAsie (un descendant de Ventes) et l’accès de VentesAsie circule de façon descendante vers ses descendants. Par conséquent, Utilisateur1 peut envoyer des données vers VentesCorée mais pas vers VentesItalie.
Conflits lorsqu’un même membre appartient à des hiérarchies différentes
Lorsqu’un membre appartient à des hiérarchies différentes et qu’il y a conflit d'accès membre, l'accès le plus restrictif est appliqué.
Scénario : ProfilA et ProfilB sont affectés à Utilisateur1. Les profils d'accès aux données sont décrits dans le tableau suivant :
Profil d'accès aux données |
Accès |
Dimension |
Membre |
ProfilA |
Lecture seule |
Entité |
Monde1 |
ProfilB |
Écriture |
Entité |
Monde2 |
Dans ce cas, ProfilB détermine l’accès de Utilisateur1. Par conséquent, Utilisateur1 peut envoyer des données vers VentesCorée, même si ProfilA refuse à Utilisateur1 l’accès Écriture vers VentesCorée (dans la hiérarchie Monde1).
Profils d'accès aux données basés sur les attributs
Lorsque vous créez un profil d'accès aux données, vous pouvez affecter différents niveaux d'accès en fonction de leurs propriétés. Les exemples ci-dessous reposent sur la hiérarchie suivante :
ID |
Région |
Pays |
Devise |
|---|---|---|---|
Entité0 |
Europe |
Allemagne |
Euro |
— Entité1 |
Europe |
Allemagne |
Euro |
— — Entité101 |
Europe |
ROYAUME-UNI |
GBP |
— — Entité102 |
Europe |
France |
Euro |
— — Entité103 |
Europe |
Allemagne |
Euro |
— Entité2 |
Amérique du Nord |
ÉTATS-UNIS |
USD |
— — Entité201 |
Amérique du Nord |
ÉTATS-UNIS |
USD |
— — Entité202 |
Amérique du Nord |
Canada |
CAD |
— — Entité203 |
Amérique du Nord |
Mexique |
MXN |
Exemple : un profil d'accès aux données
Le profil d'accès aux données DAP1 est défini comme suit :
Numéro de la règle |
Membres |
Accès |
Commentaire |
Résultat |
|---|---|---|---|---|
1 |
Entité1 |
Lecture |
Accès en lecture à Entité1 et tous ses descendants |
Accès en lecture à Entité1, Entité101, Entité102, Entité103 |
2 |
Pays = Allemagne et Devise = Euro |
Écriture |
Accès en Écriture pour les membres dont le pays est l’Allemagne et la devise est l'euro. |
Accès en Écriture à Entité0, Entité1 et Entité103 |
3 |
Entité103 |
Refusé |
Aucun accès à Entité103 |
Aucun accès à Entité103 |
Lorsqu'il existe des règles en conflit dans un profil d'accès aux données, la priorité est la suivante (de la plus élevée à la plus faible) :
Accès défini exactement sur le membre (qu'il s'agisse d'un membre de base ou d’un membre parent).
Accès défini par attributs (ne sera pas hérité).
ExempleSi les attributs définis sont Currency=Euro: Read et Country=France: Write, puis Entité102 est accessible en écriture.
Accès hérité du parent.
Accès défini sur "Tous les membres" (comme s’il était défini sur un parent virtuel en haut de la hiérarchie).
Le résultat est affiché dans le tableau ci-dessous :
ID |
Accès |
Commentaire |
|---|---|---|
Entité0 |
Écriture |
Défini par la règle numéro 2. |
Entité1 |
Lecture |
Accès en lecture défini par la règle numéro 1 ; accès en Écriture défini par la règle numéro 2. La règle numéro 1 est appliquée car elle s'applique directement à Entité1. |
Entité101 |
Lecture |
Défini par la règle numéro 1. |
Entité102 |
Lecture |
Défini par la règle numéro 1. |
Entité103 |
Refusé |
Accès en lecture défini par la règle numéro 1 ; accès en Écriture défini par la règle numéro 2 ; accès Refusé défini par la règle numéro 3. La règle numéro 3 est appliquée car elle s'applique directement à Entité103. |
Entité2 |
Refusé |
S’il n'existe pas de règle, l'accès est refusé par défaut. |
Entité201 |
Refusé |
S’il n'existe pas de règle, l'accès est refusé par défaut. |
Entité202 |
Refusé |
S’il n'existe pas de règle, l'accès est refusé par défaut. |
Entité203 |
Refusé |
S’il n'existe pas de règle, l'accès est refusé par défaut. |
Exemple : deux profils d'accès aux données
Le profil d'accès aux données DAP2 est défini comme suit :
Numéro de la règle |
Membres |
Accès |
Commentaire |
Résultat |
|---|---|---|---|---|
1 |
Tous les membres |
Lecture |
Accès en lecture pour tous membres |
Accès en lecture pour tous membres |
2 |
Entité1 |
Refusé |
Aucun accès à Entité1 et ses descendants |
Aucun accès à Entité1, Entité101, Entité102 et Entité103 |
3 |
Devise = USD |
Écriture |
Accès en écriture pour les membres dont la devise est USD |
Accès en écriture à Entité2 et Entité201 |
Le résultat de ce profil d'accès aux données est présenté dans le tableau ci-dessous :
ID |
Accès |
Commentaire |
|---|---|---|
Entité0 |
Lecture |
Défini dans la règle numéro 1. |
Entité1 |
Refusé |
Accès en lecture défini par la règle numéro 1 ; accès Refusé défini dans la règle numéro 2. La règle numéro 2 est appliquée car elle s'applique directement à Entité1 et ses descendants. |
Entité101 |
Refusé |
Accès en lecture défini par la règle numéro 1 ; accès Refusé défini dans la règle numéro 2. La règle numéro 2 est appliquée car elle s'applique directement à Entité1 et ses descendants. |
Entité102 |
Refusé |
Accès en lecture défini par la règle numéro 1 ; accès Refusé défini dans la règle numéro 2. La règle numéro 2 est appliquée car elle s'applique directement à Entité1 et ses descendants. |
Entité103 |
Refusé |
Accès en lecture défini par la règle numéro 1 ; accès Refusé défini dans la règle numéro 2. La règle numéro 2 est appliquée car elle s'applique directement à Entité1 et ses descendants. |
Entité2 |
Écriture |
Accès en lecture défini par la règle numéro 1 ; accès en Écriture défini dans la règle numéro 3. La règle numéro 3 est appliquée car elle s'applique directement aux propriétés d’Entité2. |
Entité201 |
Écriture |
Accès en lecture défini par la règle numéro 1 ; accès en Écriture défini dans la règle numéro 3. La règle numéro 3 est appliquée car elle s'applique directement aux propriétés d’Entité201. |
Entité202 |
Lecture |
Défini par la règle numéro 1. |
Entité203 |
Lecture |
Défini par la règle numéro 1. |
Si plusieurs profils d'accès aux données sont affectés à un utilisateur ou à une équipe, la combinaison des règles les moins restrictives de tous les profils est appliquée. Par conséquent, si DAP1 et DAP2 sont affectés à un utilisateur, cet utilisateur disposera des autorisations suivantes :
ID |
Accès accordé par DAP1 |
Accès accordé par DAP2 |
Résultat |
|---|---|---|---|
Entité0 |
Écriture |
Lecture |
Accès en écriture |
Entité1 |
Lecture |
Refusé |
Accès en lecture |
Entité101 |
Lecture |
Refusé |
Accès en lecture |
Entité102 |
Lecture |
Refusé |
Accès en lecture |
Entité103 |
Refusé |
Refusé |
Accès refusé |
Entité2 |
Refusé |
Écriture |
Accès en écriture |
Entité201 |
Refusé |
Écriture |
Accès en écriture |
Entité202 |
Refusé |
Lecture |
Accès en lecture |
Entité203 |
Refusé |
Lecture |
Accès en lecture |