zoukankan      html  css  js  c++  java
  • PostgreSQL-2-用户权限管理

    1、创建与删除用户

    CREATE ROLE rolename; 方法1,创建角色

    CREATE USER username; 方法2,创建用户

    CREATE USER指令创建的用户默认是有登录权限的,而CREATE ROLE没有

    DROP ROLE rolename;

    DROP USER username;

    删除用户/角色     

    du 

    du username

    查看用户和用户的属性

    du CREATE ROLE;

    du CREATE USER;

    查看可设置的管理权限(查看属性和成员属于)

    SUPERUSER | NOSUPERUSER → 超级用户,只有超级用户可以创建超级用户

    CREATEDB | NOCREATEDB → 创建出来的用户是否有执行 CREATE DATABASE 的权限

    CREATEROLE | NOCREATEROLE → 创建出来的用户是否有创建其他角色的权限

    LOGIN | NOLOGIN → 创建出来的用户是否有Login的权限

    INHERIT | NOINHERIT → 如果创建的一个用户拥有某一个或某几个角色,若指定INHERIT,则表示该用户自动拥有相应角色的权限

    CONNECTION LIMIT connlimit → 该用户可以使用的并发连接数量,默认值为-1,表示没有限制

    CREATE ROLE role_name WITH optional_permissions;

    在创建用户时设定登录权限,比如:

    CREATE ROLE r1 WITH SUPERUSER;

    CREATE USER u1 WITH PASSWORD 'abc';

    2、修改用户权限

    ALTER ROLE username WITH attribute_options;

    修改权限的命令格式,比如:

    ALTER ROLE r1 WITH CREATEDB;

    ALTER ROLE u1 WITH PASSWORD 'aaa';

    3、切换用户

    c - username;   现有database,切换用户

    c database username;  切换database,并且切换用户

    提示:You are now connected to database "..." as user "...".

    这里u1没有CREATEDB权限,如果输入CREATE DATABASE test1,会提示permission denied

    4、设置用户权限

    CREATE TABLE room(no int, name text, age int);

    INSERT INTO room VALUES(1, '小明', 19);

    INSERT INTO room VALUES(2, '小红', 18);

    INSERT INTO room VALUES(3, '老王', 35);

    SELECT * FROM room;

    创建一个表格,查看数据

    GRANT permission_type ON table_name TO role_name;

    给用户设置权限语法格式

    GRANT UPDATE ON room TO u1; 给u1对于room表格,赋予UPDATE权限

    GRANT ALL ON room TO u1; 给u1对于room表格,赋予所有权限

    GRANT SELECT ON ALL TABLES IN SCHEMA PUBLIC TO u1; 给u1对于postgres数据库所有表格,赋予SELECT权限

    REVOKE permission_type ON table_name FROM user_name;

    给用户撤销访问权限

    REVOKE SELECT ON room FROM u1; 撤销u1对room表格 SELECT的权限

  • 相关阅读:
    Executors 构建线程池
    结构型模式——Bridge(未完成)
    结构型模式——Adapter
    创建型模式——Builder
    创建型模式——Abstract Factory
    Java与线程
    Java内存模型
    类加载
    Class类文件的结构
    垃圾收集器
  • 原文地址:https://www.cnblogs.com/swefii/p/10584078.html
Copyright © 2011-2022 走看看