内容提要
Heroku推出细粒度访问控制(FGAC),取代原有固定角色权限,允许按组织、团队或应用级别分配部署、扩展、日志查看等具体能力。用户可通过仪表盘或CLI管理权限,并集成Okta等身份提供商。现有权限已自动迁移,无需手动操作。
延伸解读
权限模型升级:从固定角色到细粒度控制
Heroku原有的角色体系(如admin、member、collaborator)将权限捆绑在一起,导致开发者可能拥有超出其职责的权限,或者为了获取某项权限而不得不授予过多权限。FGAC将权限拆分为独立的能力,如部署、扩展、查看日志等,使组织能够按需分配,避免“全有或全无”的权限困境。这种变化有助于在保障安全的同时,提升开发效率。
多层级权限管理:组织、团队与应用
FGAC支持在组织、团队和应用三个层级分配权限,这意味着权限可以精确到单个应用或操作,例如只允许某用户查看日志而不允许修改配置,或者只授予某个应用的部署权限而不涉及整个流水线。这种灵活性让权限管理更加贴近实际工作需求,减少了不必要的权限暴露。
自动化与集成:CLI和API支持
除了仪表盘,Heroku还提供了CLI命令和Platform API,方便平台团队将权限管理集成到自动化脚本和身份提供商(如Okta、Microsoft Entra ID)中。这有助于减少人工管理权限的负担,并支持与现有身份管理流程同步。需要注意的是,CLI需更新至v11.10.0或更高版本才能使用相关命令。
现有权限自动迁移,无需手动操作
对于现有Heroku用户,原有的权限已自动迁移到FGAC模型,无需手动调整,团队访问权限保持不变。这意味着升级过程对用户透明,但用户可以通过仪表盘或CLI进一步利用FGAC的高级功能,如更精细的权限分配和审计。
Q&A
什么是细粒度访问控制(FGAC)?
细粒度访问控制(FGAC)是Heroku推出的一种新的权限管理方式,取代了原有的固定角色(如admin、member、collaborator)权限,允许按组织、团队或应用级别分配部署、扩展、日志查看等具体能力。
FGAC与Heroku原有的权限系统有何不同?
原有的权限系统使用预定义角色,每个角色带有固定的权限组合;而FGAC提供单独的能力控制,如部署、扩展dynos、查看日志、管理配置变量等,可以更精细地分配权限。
FGAC支持哪些级别的权限分配?
FGAC支持在组织级、团队级或应用级分配权限。例如,可以只授予用户查看日志的权限,而不允许修改配置;或者只授予对某个应用的访问权限,而不是整个流水线。
如何通过Heroku CLI管理FGAC权限?
可以使用Heroku CLI命令管理权限,例如:`heroku access --app my-app`查看权限,`heroku access:add user@company.com --app my-app --permissions operate,view`添加成员,`heroku access:update existing-user@company.com --app my-app --permissions deploy,manage`更新权限。需要CLI v11.10.0或更高版本。
FGAC如何与身份提供商(如Okta)集成?
FGAC可以集成Okta、Microsoft Entra ID或Ping Identity等身份提供商,通过Platform API编程方式分配、更新和撤销权限,实现与集中式身份管理系统的同步。
现有Heroku用户的权限是否需要手动迁移到FGAC?
不需要。Heroku会自动将现有权限迁移到新的FGAC模型,用户无需任何操作,团队访问权限会继续正常工作。
FGAC如何帮助平衡开发速度与安全性?
FGAC通过将权限精确到应用、流水线或操作级别,使安全团队可以设置精确的防护措施,而不会阻碍工程工作流。例如,开发者可以拥有部署权限而不需要计费权限,从而减少管理瓶颈。