权限、角色

    xiaoxiao2022-07-14  150

    一。权限

    权限最大的用户是: sysdba和sysoper

    1.创建用户:

    create user zhangsan identified by mima; 创建完的用户没有任何权限,包括登录的权限都没有。

    2.用户授权

    grant create tablespace,connect to zhangsan;

    3.一个开发者需要的权限:

    创建会话:grant create session to 用户名; 创建表:grant create table to 用户名; 创建视图: 创建序列: 创建过程:

    4.dba给用户修改密码:

    alter user scott identified by tiger;

    5.对象权限:

    对象权限表视图序列存储过程alter√√delete√√execute√index√insert√√references√select√√√update√√

    6.授予对象权限

    ①授予在emp表上进行查询的权限: grant select on emp to sue,rich;

    ②为用户和角色授予dept表上的某些列的修改权限: grant update(dname, loc) on dept to jack,john;

    ③with grant option: 被授权的用户还能把权限给其他人。 grant insert, select on dept to tom with grant option;

    ④to public : 允许系统中所有用户访问Alice的dept表: grant select on alice.dept to public;

    7.回收对象权限

    revoke select, insert on dept from scott;

    注意: 假设Scott把权限给了A,A把权限给了B,那么Scott只能收回A的权限,而不能收回B的权限。 如果Scott收回了A的权限,相应的B的权限也不存在了。

    8.验证授权情况

    数据字典表描述role_sys_privs授予角色的系统权限role_tab_privs授予角色的表权限user_role_privs用户能存取的角色user_tab_privs_made在用户对象上所授予的系统权限情况user_tab_privs_recd授权给用户的对象权限user_col_privs_made在用户对象的列上所授予的对象权限情况user_col_privs_recd授予对象的某些列的对象权限情况

    二。角色

    Oracle用角色来简化对权限的管理。

    1.创建角色:

    create role manage;

    2.给角色授权:

    grant create table,create view to manage;

    3.授予开发者的角色:

    grant connect, resource to 开发者;

    其中,connect和resource是dba默认的角色。

    最新回复(0)