Consider we are creating a content management system where
users can login and post their contents. The posted contents will be moderated
by the administrator of the site. Meaning, Administrator can either approve or
reject the content posted by the user. The posted content can be viewed by
anyone once it is approved by the admin. In this scenario we can have 2 roles
defined, namely Admin and Publishers. The sample application attached with this
article uses the same scenario explained in this article.