This document discusses authentication, authorization, and fine-grained access control. It introduces different levels of authorization from anonymous access to fine-grained control varying across users and resources. It provides examples of implementing fine-grained security using annotations and services. API security is also discussed, combining authentication with authorization annotations. Pattern languages are presented as a way to discuss difficult technical concepts using consistent terminology.