Personal tools
You are here: Home Documents How-to VerboseSecurityで想定外の権限不足の原因を調べる

VerboseSecurityで想定外の権限不足の原因を調べる

Document Actions
プロダクトを入れたり、セキュリティー設定を変えたらページが見えなくなった、など想定外の権限不足が発生したときに、詳細な原因を表示することが出来ます。

Zopeのセキュリティー設定はRole毎に細かく権限を設定することが出来ますが、カスタマイズした結果見えて欲しいページが権限不足で見えなくなるという想定外の自体も起こります。しかもZope標準設定ではこのときに表示されるエラーメッセージからは原因が分からないことが多々あります。

フォルダのViewを不許可にして表示してみる

試しに、フォルダのView権限を不許可にしてアクセスしてみます。

securitynoview.jpg/image_preview

このように、photoというフォルダのセキュリティータブでviewの権限を全てOFFにしました。この状態でPlone上でこのフォルダを表示しようとすると、VerboseSecurityの有り無しで以下のようにエラーメッセージが変わります。

VerboseSecurity無し

英語:Unauthorized: You are not allowed to access 'Language' in this context.
意訳:未認証:contextの'Language'にアクセスしました

VerboseSecurity有り

英語:Unauthorized: Your user account does not have the required permission. Access to 'Language' of (ATFolder at /plone/photo) denied. Your user account, admin, exists at /acl_users. Access requires one of the following roles: ['Reviewer']. Your roles in this context are ['Authenticated', 'Manager', 'Owner'].
意訳:未認証: あなたのアカウントは必要なパーミッションが不足しています。 ATFloder(/plone/photo)のLanguageへのアクセスが拒否されました。 あなたのアカウントは/acl_usersにあるadminです。 アクセスには、['Reviewer']ロールが必要です。 あなたのロールは['Authenticated','Manager','Owner']です。

設定方法

Zopeのバージョンが2.8.1よりも前

VerboseSecurityプロダクトを使います。まずは以下のプロダクトをインストールします。

次に、Zopeインスタンスの etc/zope.conf の以下のディレクティブを以下のように設定します:

security-policy-implementation python

Zope2.8.1以降

標準機能としてZopeに取り込まれました。このため、VerboseSecurityプロダクトを入れないでください。

設定方法は、Zopeインスタンスの etc/zope.conf の以下のディレクティブを以下のように設定します:

verbose-security on
security-policy-implementation python
The following items are included in this how-to:
Image フォルダのView権限を全てOFFにする

This How-to applies to: Zope 2.9.0, Zope 2.8.5, Zope 2.8.x, Zope 2.7.7, Zope 2.7.x

by しみずかわ last modified 2006-02-10 18:54

Powered by Plone, the Open Source Content Management System