This is for those who are familiar with Plone 2, but not yet with Plone 3.
Use Zope 3 techniques:
Try to avoid old style (Zope 2) techniques in new code:
<browser:page> takes in an attribute permission.
Example:
<!-- permission comes from -->
<browser:page
for="getpaid.core.interfaces.IStore"
name="null_payment_button"
class=".button.NullPaymentButton"
permission="zope2.View"
template="templates/button.pt"
/>
– _ModuleSecurityInfo: http://svn.zope.org/Zope/trunk/src/AccessControl/SecurityInfo.py?rev=96262&view=markup