想问下老师这个题目的重点应该放在哪里 谢谢
- 判断user A可否在server X里做Action S。
- 管理permission。
- User可以属于多个group。
这个是Stripe的面经
然后如果一个公司之前没有这种系统,现在你做出来了,为什么让别的team/service去adopt你的新系统,不是很清楚这一问怎么回答好,之前面logging system也被问过这个问题
那主要是设计数据库里的表,用 SQL 数据库,有一张表存 user ↔ group 对应,一张表存 action ↔ 有权限的用户+有权限的群组。
然后如果一个公司之前没有这种系统,现在你做出来了,为什么让别的team/service去adopt你的新系统,不是很清楚这一问怎么回答好,之前面logging system也被问过这个问题
这个系统复用性很好,别人不需要 reinvent the wheel。可以跟其他组沟通看他们的需要是什么,在系统中可以添加支持。主要出发点是为了对方省时间,而不是抢 scope.
谢谢老师 retrieve 权限 有什么best practice吗 一般是用lib还是service呢,是real time call还是一半会有个client side cache?
我觉得应该是 service real time call + client side cache.
IAM 很复杂的。 看看Google的 Zanzibar: Zanzibar: Google’s Consistent, Global Authorization System – Google Research
也有OpenSource版本的 Zanzibar
