|
|
|
|
|
by joshuanapoli
1096 days ago
|
|
Zanzibar evaluates recursively, where AWS IAM is single-pass. So AWS groups do not nest, but Zanzibar groups do. In Zanzibar a relation on an object (an implicit set of users) can be the subject of a rule; you can define “users who have editor permission on an object also have viewer permission” in one rule. This isn’t possible in AWS; there is no way to reference the set of principals who are allowed a particular action or policy. I think that AWS policies tend to have a lot of duplicate rules because of lacking recursion. Zanzibar rules should be easier to maintain and audit. AWS IAM is also just quite “hairy” from gradual evolution over the years. On the other hand, Zanzibar has a clean model. It would be nice to have a compiler that would emit AWS IAM Policies given Zanzibar-style rule tuples. |
|