2010-06-18 6 views
7

J'ai une section de mon arbre de contenu que je voudrais refuser TOUTES les autorisations à l'exception des rôles spécifiques. Cela semble être une tâche vraiment évidente à accomplir, et pourtant je n'en vois pas d'exemple dans le livre de recettes de l'administrateur de sécurité et je n'arrive pas à trouver un moyen facile de le faire en utilisant les outils de sécurité. Je dois manquer quelque chose d'évident... ???Comment sécuriser une branche entière dans un arbre de contenu Sitecore?

Dire que j'ai ceci:

sitecore 
-content 
    -branchA 
    -branchB 

Tout ce que je crée dans l'arborescence de contenu est lisible par extranet \ Anonymous par défaut. Mais même lorsque je clique sur le lien «Require Login» sur le ruban de sécurité, tous les utilisateurs ont toujours un accès en lecture, ils doivent simplement se connecter. Je veux que la branche B soit lisible UNIQUEMENT par les membres de sitecore \ SomeRole. Comment cela est-il fait?

Répondre

9

Ok, suivez cette ligne directrice.

Disons que nous avons Sitecore \ SomeRole et un arbre contenu comme celui-ci:

Home 
    branchA 
    itemA1 
    branchB 
    itemB1 

Nous voudrions nier acccess à branchB et tous ses descendants pour tout le monde, sauf pour SomeRole.

Tout d'abord, dans l'éditeur de sécurité sélectionnez le noeud Accueil, choisissez Sitecore \ rôle de chacun et définissez les autorisations suivantes:

alt text http://img822.imageshack.us/img822/7172/sitecoreeveryonepermiss.png

Découvrez maintenant l'accès à AccessViewer - c'est ce que nous avons besoin:

alt text http://img532.imageshack.us/img532/3512/sitecoreeveryoneaccess.png

Autorisons la branche B pour SomeRole. Retour à l'éditeur de sécurité et permettre explicitement les autorisations pour SomeRole:

alt text http://img80.imageshack.us/img80/120/sitecoresomerolepermiss.png

Et vérifier dans AccessViewer nouveau:

alt text http://img27.imageshack.us/img27/9584/sitecoresomeroleaccess.png

Espérons que cela répond à votre question. Méfiez-vous des versions de Sitecore antérieures à 6.2.X qui présentent un problème: AccessViewer ne s'actualise pas correctement une fois les autorisations définies. Tuez aspnetwp (w3wp) pour résoudre ce problème.

+0

Hmmmm ... ce serait probablement très utile si je voyais les images. :) Tout ce que je peux voir est "Alt text". Je pense que je l'ai compris, bien que ce que j'ai fait était d'aller au nœud Accueil et cliquez sur Supprimer Hériter. Ensuite, définissez refuser l'héritage pour extranet \ Tout le monde. Est-ce que tout le monde va vraiment avoir tout le monde? Je n'avais pas beaucoup de chance avec ça. – Bryan

+0

Désolé, je pensais que les images sont visibles pour tout le monde comme pour moi - rien ne prouve le contraire ... Je vais essayer de mettre à jour la réponse initiale pour afficher les images. Oui, __ Tout le monde veut dire tout le monde. C'est un rôle mondial. Il y a des noms de domaine locaux (sitecore \ Everyone, extranet \ Everyone, etc.) qui sont tous pour tous les rôles d'un domaine particulier. Et il y a tout le monde pour inclure tout cela. –

+0

Voir si les images sont réparées maintenant –

1

Il semble que votre problème est que vous autorisez l'utilisateur extranet \ Anonymous à avoir un accès en lecture trop loin dans l'arborescence. Supprimez le droit d'accès au niveau supérieur (ne le niez pas, supprimez-le) et accordez-le là où vous en avez vraiment besoin (comme à branchA).