有什么权限管理最佳实践吗 - V2EX
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
dzdh
V2EX    PostgreSQL

有什么权限管理最佳实践吗

  •  
  •   dzdh 2024-11-04 09:51:05 +08:00 3806 次点击
    这是一个创建于 408 天前的主题,其中的信息可能已经有所发展或是发生改变。

    场景是这样。

    一个库 owner 是 user

    几个开发者 只有只读和建表删表权限 usera/userb

    开发者自己建的表会自动 owner 给自己。导致其他人没权限。

    阿里云 rds-pg 。有什么解决方案?

    13 条回复    2024-11-04 17:33:32 +08:00
    encro
        1
    encro  
       2024-11-04 09:56:31 +08:00
    采用统一的 migrate 命令,用统一的账户,没必要每个用户开不同的数据库账号吧。
    dzdh
        2
    dzdh  
    OP
       2024-11-04 10:04:39 +08:00
    @encro #1 目前开发规范和流程所致。之前 mysql 是这么玩。dev 库大家一起弄。上生产时导出导入。
    abolast
        3
    abolast  
       2024-11-04 10:56:32 +08:00   1
    dev 环境开全权限,test 开只读,导入导出让运维帮忙,生成的话只允许提交 sql 到仓库,自动化程序来执行(交给高权限的人来呗,运维开发个程序给高权限的人用)
    adoal
        4
    adoal  
       2024-11-04 11:04:27 +08:00
    数据库的 owner 是一种角色,有义务为别人设置权限,不论它的岗位是不是专职 dba
    xiaogu2014
        5
    xiaogu2014  
       2024-11-04 11:14:21 +08:00
    可以考虑用一些 migration 的方式。比如 java 的 flyway 之类的。可以手动 trigger/自动随着部署 trigger 。
    以及用户更改表的权限 revoke 吧。 保留修改数据的。所有更改表的都通过上面的 migration 的方式进行。
    xuanbg
        6
    xuanbg  
       2024-11-04 11:20:19 +08:00
    都只管自己不管别人的是吧。数据库表应该有专人管理维护的呀,不然还不得乱了套。
    dzdh
        7
    dzdh  
    OP
       2024-11-04 11:28:47 +08:00
    没法像 mysql 那样 按 db 给权限吗 下面的表自动继承
    dk7952638
        8
    dk7952638  
       2024-11-04 11:40:59 +08:00
    casbin, 支持非常多的权限模型
    panxiuqing
        9
    panxiuqing  
       2024-11-04 14:19:12 +08:00
    @dzdh #7 mysql 的 db 不是对应 pg 的 schema 吗。
    dzdh
        10
    dzdh  
    OP
       2024-11-04 14:59:06 +08:00
    @panxiuqing 那 pg 可以给 schema 弄个权限或 owner 然后所有在这个 schema 里操作都继承么
    panxiuqing
        11
    panxiuqing  
       2024-11-04 17:01:18 +08:00
    @dzdh #10 schema 有 owner ,schema 的 owner 可以决定其他 user 在 schema 中的权限,schema 中 table 的 owner 默认是 table 的创建人。
    dzdh
        12
    dzdh  
    OP
       2024-11-04 17:03:05 +08:00
    @panxiuqing #11 如果把 schema 的 owner grant 给其他 user 。那其他 user 在这个 schema 里建的 table ,其他被 grant 过的 user 们 能操作这个 schema 里其他 user 创建的 table 吗?
    panxiuqing
        13
    panxiuqing  
       2024-11-04 17:33:32 +08:00
    @dzdh #12 table 不会自动继承 schema “本身”的权限,可以设置 schema 内的默认权限(也只影响新建的表)。
    关于     帮助文档     自助推广系统     博客     API     FAQ     Solana     4307 人在线   最高记录 6679       Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 28ms UTC 10:05 PVG 18:05 LAX 02:05 JFK 05:05
    Do have faith in what you're doing.
    ubao msn snddm index pchome yahoo rakuten mypaper meadowduck bidyahoo youbao zxmzxm asda bnvcg cvbfg dfscv mmhjk xxddc yybgb zznbn ccubao uaitu acv GXCV ET GDG YH FG BCVB FJFH CBRE CBC GDG ET54 WRWR RWER WREW WRWER RWER SDG EW SF DSFSF fbbs ubao fhd dfg ewr dg df ewwr ewwr et ruyut utut dfg fgd gdfgt etg dfgt dfgd ert4 gd fgg wr 235 wer3 we vsdf sdf gdf ert xcv sdf rwer hfd dfg cvb rwf afb dfh jgh bmn lgh rty gfds cxv xcv xcs vdas fdf fgd cv sdf tert sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf shasha9178 shasha9178 shasha9178 shasha9178 shasha9178 liflif2 liflif2 liflif2 liflif2 liflif2 liblib3 liblib3 liblib3 liblib3 liblib3 zhazha444 zhazha444 zhazha444 zhazha444 zhazha444 dende5 dende denden denden2 denden21 fenfen9 fenf619 fen619 fenfe9 fe619 sdf sdf sdf sdf sdf zhazh90 zhazh0 zhaa50 zha90 zh590 zho zhoz zhozh zhozho zhozho2 lislis lls95 lili95 lils5 liss9 sdf0ty987 sdft876 sdft9876 sdf09876 sd0t9876 sdf0ty98 sdf0976 sdf0ty986 sdf0ty96 sdf0t76 sdf0876 df0ty98 sf0t876 sd0ty76 sdy76 sdf76 sdf0t76 sdf0ty9 sdf0ty98 sdf0ty987 sdf0ty98 sdf6676 sdf876 sd876 sd876 sdf6 sdf6 sdf9876 sdf0t sdf06 sdf0ty9776 sdf0ty9776 sdf0ty76 sdf8876 sdf0t sd6 sdf06 s688876 sd688 sdf86