The problem with permissions management is that companies often start by building their own authorization systems, which can become complex and difficult to maintain as the company grows. Companies may also face challenges such as scalability, compatibility, and data consistency issues. Custom code-based authorization systems have pros (flexibility) but cons (inflexibility, potential security risks), while policy engines offer a more abstracted approach with benefits (formally proven correct policies) but drawbacks (complexity, potential performance issues). Google's Zanzibar is a centralized authorization system built on top of a globally distributed database (Spanner), which provides scalability, flexibility, and a single view of permissions. However, it also has limitations (difficult to handle data available at request time) and requires careful consideration when choosing the right tool for the job. The open-source implementation of Zanzibar called SpiceDB is an alternative solution that addresses some of these limitations.