
Adding Determinism and Safety to Uber IAM Policy Changes
9/18/2025
This post introduces the Policy Simulator, a new system designed to enhance the safety of IAM policy changes at Uber. It details the architecture, which involves fetching access logs from PEPs, optimizing their ingestion into Apache Pinot for low-latency access, and replaying them on two authorization engines (reference and proposed) to compare access control results. The post also outlines optimizations for log ingestion, such as prioritizing key data (actor, action, resource), focusing on distinct occurrences, and excluding irrelevant data. It explains how the simulator helps prevent outages by providing real-time impact analysis before policy deployment.