postgresql 对数据库,schema,表和序列授权方式

日常使用 用户权限管理涉及到的东西很多,本文也只是大致说明了一小部分,大部分的还得继续学习。那么现在按照一个正常项目上线的流程来创建一个应用账号为例,看看需要怎么操作。 比如一个项...
  • 日常使用

用户权限管理涉及到的东西很多,本文也只是大致说明了一小部分,大部分的还得继续学习。那么现在按照一个正常项目上线的流程来创建一个应用账号为例,看看需要怎么操作。

比如一个项目zjy上线:用管理账号来操作

  • 创建数据库:
    postgres=# create database zjy;
    CREATE DATABASE
  • 创建账号:账号和数据库名字保持一致(search_path)
    postgres=# create user zjy with password 'zjy';
    CREATE ROLE
  • 创建schema:不能用默认的public的schma
    postgres=# \c zjy
    You are now connected to database "zjy" as user "postgres".
    zjy=# create schema zjy;
    CREATE SCHEMA
  • 授权:
    复制代码
    #访问库
    zjy=# grant connect on database zjy to zjy;
    GRANT
    #访问schmea
    zjy=# grant usage on schema zjy to zjy;
    GRANT
    #访问表
    zjy=# grant select,insert,update,delete on all tables in schema zjy to zjy;
    GRANT
    #如果访问自增序列,需要授权
    zjy=# grant select,update on all sequences in schema zjy to zjy;
    GRANT
    
    注意:上面的授权只对历史的一些对象授权,后期增加的对象是没有权限的,需要给个默认权限
    
    #默认表权限
    zjy=# ALTER DEFAULT PRIVILEGES IN SCHEMA zjy GRANT select,insert,update,delete ON TABLES TO zjy;
    ALTER DEFAULT PRIVILEGES
    
    #默认自增序列权限
    zjy=# ALTER DEFAULT PRIVILEGES IN SCHEMA zjy GRANT select,update ON sequences TO zjy;
    ALTER DEFAULT PRIVILEGES
    复制代码
  • 发表于 2020-05-14 00:18
  • 阅读 ( 54 )

你可能感兴趣的文章

相关问题

0 条评论

请先 登录 后评论
shitian
shitian

662 篇文章

作家榜 »

  1. shitian 662 文章
  2. 石天 437 文章
  3. 每天惠23 33 文章
  4. 小A 29 文章