What problem does it solve? Designing access control is error-prone: teams pick the wrong authorization model, scatter permission checks across layers, and leave enforcement gaps that lead to privilege escalation bugs. This Skill provides a structured decision framework for authorization design, from model selection through architecture to structural enforcement. ## Core Features & Use Cases - Model Selection: Decision trees for choosing between RBAC, ABAC, ReBAC, or hybrids, with warnings about role explosion. - XACML Architecture: Guidance on separating PAP, PIP, PDP, and PEP responsibilities, plus decentralized vs. centralized placement patterns. - DDD Layer Placement: Rules for deciding whether authorization logic belongs in the application layer, domain layer (Specification pattern), or a dedicated bounded context. - Structural Enforcement: Four levels of enforcement strength, from architecture tests (ArchUnit) to Authorized<T> types and command bus middleware, with CQRS integration patterns. - Use Case: When reviewing code with @PreAuthorize annotations or designing a multi-tenant SaaS, use this Skill to decide where permission checks live, how to prevent forgotten checks, and how to combine ORM filters with PostgreSQL Row-Level Security. ## Quick Start Ask the AI to design the authorization model for a new feature, specifying your roles, resources, and whether permissions depend on entity relationships or attributes.