Book Image

Professional Plone 4 Development

Book Image

Professional Plone 4 Development

Overview of this book

A years of experience in Plone development and project management are combined with an approachable writing style to create an engaging and highly-informative guide to working with Plone. Professional Plone 4 Development stands as an excellent resource for developers of all levels. - Eric Steele, Plone Release Manager Plone is a web content management system that features among the top 2% of open source projects and is used by more than 300 solution providers in 57 countries. Its powerful workflow system, outstanding security track record, friendly user interface, elegant development model and vibrant community makes Plone a popular choice for building content-centric applications. By customising and extending the base platform, integrators can build unique solutions tailored to specific projects quickly and easily.If you want to create your own web applications and advanced websites using Plone 4, Professional Plone 4 Development is the book you need.The https://www.packtpub.com/Professional-Plone-web-applications-CMS/book first edition of this book remains one of the most widely read and recommended Plone books. This second edition is completely revised and up-to-date for Plone 4.1, covering new topics such as Dexterity, Diazo, jQuery and z3c.form, as well as improved ways of working with existing technologies such as Buildout, SQLAlchemy and the Pluggable Authentication Service. It retains the writing style and comprehensive approach that made the first edition so popular. Built around a realistic case study, Professional Plone 4 Development will take you from an understanding of Plone’s central concepts, through basic customization, theming, and custom development, to deployment and optimization. The book is divided into four sections: First, you will be introduced to Plone and the case study, and learn how to set up a development environment. The second section covers basic customization, including theming a Plone site using Diazo. The third section focuses on custom development – building new content types and user interfaces, customizing security and integrating with external databases. The final chapters cover deployment and performance optimization.
Table of Contents (6 chapters)

Chapter 6. Security and Workflow

Security should never be an afterthought when building web applications. Zope and Plone provide a robust and flexible security model that lets us worry about our application logic instead of thinking too much about how to lock it down, so long as we understand a few basics.

In this chapter, we will:

  • Explain the building blocks of Zope security: users, roles, and permissions
  • Demonstrate the use of workflow, the primary mechanism for managing permissions in Plone
  • Build a custom workflow for the Optilux website and add it to the policy package we created in the previous chapter.
  • Discuss the differences between protected and trusted Python code in Zope

Security primitives

Zope's security is declarative: views, actions, and attributes on content objects are declared to be protected by permissions. Zope takes care of verifying that the current user has the appropriate access rights for a resource. If not, an AccessControl.Unauthorized exception will be...