Ploneフォルダでパーミッションのカスケード

zopeのMLで特定のフォルダ以下のAnonymousアクセスを禁止したいという旨のメールが流れていて、具体的にどうすればいいのか調べてみたら、plone.orgのドキュメントに発見ヾ(゜∀゜)/

何か同じようなのが2つあるんだけど、以下、リミによるHowto(http://plone.org/documentation/how-to/make-permission-settings-inherit)の超訳です。

Making permissions cascade/inherit in a hierarchy

あるフォルダを非公開とした場合に、そのフォルダに含まれるコンテンツも非公開にしたい場合があります(デフォルトではフォルダを非公開にしてもコンテンツは公非公開になりません)。これを可能にするにはどうしたらよいでしょうか。

このようなフォルダ構造があったとします。

root

  • public folder
  • private folder
    • document 1
    • subfolder
      • document 2

ここでprivate folderをプライベート状態に設定したとしても、デフォルトではdocument1, document2, subfolderは見えてしまいますし、誰でもアクセスできてしまいます。

privateフォルダ配下にあるvisibleなものへのアクセス(上記の例ではdocument1, document2, subfolder)を拒否するにはデフォルトのワークフローを変える必要があります。

  1. ZMIにてPloneへ入り、portal_workflowをクリックする
  2. コンテンツタブをクリックし、plone_workflowを選ぶ
  3. Stateタブをクリックし、visible状態を選ぶ
  4. Permissionsタブをクリックすると、画面にいくつかアクセスコントロールが並んでいるのが見える
  5. Anonymousに対してAccess contents informationとViewのチェックをはずす(結果としてAnonymousに対するチェックはすべて無しになるのかな)
  6. 3~5の手順をfolder_workflowに対しても同様に行う

これですべてのvisibleなオブジェクトはパーミッションを親フォルダから継承する事になります。つまり、親フォルダがプライベートならば、その配下にあるオブジェクトはAnonymousからはアクセスできないようになります。

超訳ここまで--------------------------------------------------

ただし、もう一つの同様のHowtoを読むと、これではこのワークフローは既存のオブジェクトには有効になっていないということです。ということで、上記の手順を踏んだ後に、portal_workflowの画面一番下にある、「Update security settings」というボタンを押します。これでPlone上のすべてのオブジェクトに、変更したワークフローが適用されたことになります。めでたしめでたし。

カテゴリ
Plone Plone
トラックバック用URL:
http://nagosui.org/Nagosui/COREBlog2/making-permission-cascade/tbping
コメントを追加

下のフォームに記入してコメントを追加できます。平文テキスト形式。

(必須)
(必須)
(必須)
(Required)
Enter the word

このBlogについて
Plone, Zope, Pythonなどのトピックについてのメモです。
カテゴリ
Plone (100)
Plone Products (23)
COREBlog2 (31)
COREBlog1 (29)
ReadingCOREBlog (7)
Zope (66)
Turbogears (18)
Django (12)
Python (27)
Linux (32)
Nagosui (13)
Design (34)
Misc (49)
moblog (5)
Mac (1)
最近のエントリ
MacOSXにPython2.4をインストール nyusuke 2009年03月21日
Ploneを3.1から3.2へアップグレード nyusuke 2009年03月01日
Plone3.2+その他もろもろのレシピ nyusuke 2009年03月01日
さらばファッキンKDDI nyusuke 2008年12月10日
最近のコメント
Re:WebデザイナーのためのDjangoはじめの一歩 nyusuke 2007年06月01日
Re:WebデザイナーのためのDjangoはじめの一歩 pateo 2007年05月31日
Re:東海Python Workshop 01終了 nyusuke 2007年05月31日
Re:東海Python Workshop 01終了 kfuruhata 2007年05月30日