2009-06-22 9 views
0

Je suis relativement nouveau à ssas et j'ai des problèmes avec quelque chose.Comment limiter les niveaux hiérarchiques SSAS aux utilisateurs?

Le scénario:

  • Un cube avec une hiérarchie de l'entreprise (région, sous-région, pays, entreprise)
  • sécurité de dimension est appliquée en filtrant la dimension de l'entreprise en liant le nom d'utilisateur à une liste de permis entreprises.
  • Activer Visual Total est activé afin que vous puissiez uniquement voir les totaux à chaque niveau de la hiérarchie pour les sociétés auxquelles vous avez accès.

Le problème:

Il a été demandé si un utilisateur ne peut voir que les entreprises d'un pays (par exemple), alors ils ne devraient pas être en mesure de voir les niveaux plus élevés dans la hiérarchie (comme les totaux sera pareil). C'est-à-dire que si vous ne pouvez voir que les entreprises britanniques, vous ne devriez voir que les niveaux de pays et d'entreprise de la hiérarchie et non les niveaux de la sous-région (Europe) et de la région (EMEA).

Est-ce que quelqu'un a des idées sur la façon dont cela peut être accompli, ou même si cela peut être fait? Nous pouvons gérer une solution pour travailler dans la couche de reporting, mais l'exigence est que ceci devrait être géré dans le cube pour permettre de futures solutions de reporting ad-hoc/alternatives.

Idées/choses que j'ai essayé:

  • Essayer de voir si le réglage membre par défaut a un effet sur les niveaux de la hiérarchie, vous pouvez voir (il ne fonctionne pas)
  • Mis en œuvre plusieurs perspectives qui sont identiques à part pour la hiérarchie d'entreprise qu'ils utilisent; chaque perspective utilise une hiérarchie qui a commence à un niveau inférieur et inférieur.

    • cela fonctionne jusqu'à un certain point, mais je ne peux pas voir comment restreindre un utilisateur à une seule perspective
  • HideMemberIf - pour autant que je peux voir ceci est utilisé pour créer un loqueteux hiérarchie et cache les membres inférieurs pas les niveaux supérieurs de la hiérarchie.

Donc, en conclusion, hmmm.

Répondre

2

Vous pouvez le faire en supprimant les autorisations du rôle sur l'affichage des membres dans les hiérarchies associées.

Pour ce faire:

  • ouvrir le Concepteur de rôle
  • choisissez l'onglet Dimension Data
  • sélectionnez la dimension appropriée (assurez-vous qu'il est la dimension du cube, pas la dimension de base de données)
  • pour chaque hiérarchie d'attributs que vous souhaitez masquer:
    • Sélectionnez la hiérarchie d'attributs appropriée dans la liste déroulante
    • sélectionnez « Désélectionnez tous les membres »

assurer ensuite le point de vue qu'ils utilisent ne cherche pas à afficher les hiérarchies; toute tentative de le faire se traduira par une erreur du client, car il ne fait aucun doute que votre cube a diverses requêtes interconnectées faisant référence à ces membres.

De même, tous les calculs qui font référence à ces membres vont lancer des wobblers; les autorisations sont évaluées avant les calculs, vous devez donc soit supprimer ces calculs, soit recourir à la solution sous-optimale consistant à définir la propriété ScriptErrorHandlingMode du cube sur IgnoreAll pendant la production.

Petite remarque: Les perspectives ne sont pas utilisées pour la sécurité, mais pour la présentation. Donc, si vous ne voulez pas que vos utilisateurs voient des choses que vous avez bloquées dans une perspective, gardez à l'esprit qu'ils peuvent les voir par d'autres moyens, par ex. en utilisant MDX ou en utilisant des fonctionnalités client qui ignorent les perspectives.

Petite autre note: certaines personnes suggèrent que la sécurité à ce niveau est un problème côté client. Je ne suis pas d'accord.

+0

Un exemple: 5 sociétés, UK Plc, UK Ltd, France Plc, France Ltd, Allemagne Plc. John peut voir tout le Royaume-Uni (UK Plc & UK Ltd). Ann peut voir FR Plc. Chris peut voir tous Chiffre d'affaires (en M): UK Plc - £ 28, UK Ltd £ 32, FR Plc £ 78, FR Ltd £ 12, DE Plc £ 180 John peut voir le niveau du pays (total £ 60 for UK Ann peut voir le niveau de l'entreprise (78 £ pour FR Plc) Chris peut niveau de la sous-région (total de 330 £ pour l'Europe) Par conséquent, personne ne devrait pouvoir «voir» un total pour la région (EMEA). John n'a pas besoin de voir un total pour la sous-région (car le total sera le même que celui du Royaume-Uni). Ann n'a pas besoin de voir un total pour l'entreprise (pour la même raison). –

+0

Les totaux sont correctement gérés à l'aide de la sécurité de dimension (comme suggéré ci-dessus) avec Activer les totaux visuels cochés –

Questions connexes