第二章 SQL命令参考-SET SESSIONAUTHORIZATION
来源:互联网 发布:linux查看dns命令 编辑:程序博客网 时间:2024/06/05 18:33
SET SESSIONAUTHORIZATION
Sets the session role identifier and thecurrent role identifier of the current session.
Synopsis
SET [SESSION |LOCAL] SESSION AUTHORIZATION rolename
SET [SESSION |LOCAL] SESSION AUTHORIZATION DEFAULT
RESET SESSIONAUTHORIZATION
Description
此命令将会话角色标识符和当前SQL会话上下文的当前角色标识符设置为角色名称。角色名称可以写成标识符或字符串文字。例如,使用此命令可以暂时成为非特权用户,然后再切换回超级用户。
会话角色标识符最初设置为客户端提供的(可能已认证的)角色名称。
当前的角色标识符通常等于会话用户标识符,但是可能在setuid函数和类似机制的情况下暂时改变;它也可以通过SET ROLE进行更改。当前用户标识符与权限检查相关。
会话用户标识只有在初始会话用户(认证用户)具有超级用户权限的情况下才能被改变。否则,该命令仅在指定了经过验证的用户名时才被接受。
DEFAULT和RESET形式将会话和当前用户标识符重置为最初认证的用户名。这些形式可以由任何用户执行。
Parameters
SESSION
指定该命令对当前会话生效。 这是默认的。
LOCAL
指定该命令仅对当前事务生效。 COMMIT或ROLLBACK后,会话级别的设置再次生效。 请注意,如果SET LOCAL在事务外执行,则它将不起作用。
rolename
要承担的角色的名称。
NONE
RESET
将会话和当前角色标识重置为用于登录的角色标识。
Examples
SELECTSESSION_USER, CURRENT_USER;
session_user |current_user
--------------+--------------
peter | peter
SET SESSIONAUTHORIZATION 'paul';
SELECTSESSION_USER, CURRENT_USER;
session_user |current_user
--------------+--------------
paul| paul
Compatibility
SQL标准允许一些其他表达式代替文字角色名称,但这些选项在实践中并不重要。 Greenplum数据库允许标识符语法(角色名),而SQL不支持。 SQL在事务过程中不允许此命令; Greenplum数据库不做这个限制。 SESSION和LOCAL修饰符是一个Greenplum数据库扩展,RESET语法也是如此。
See Also
SETROLE
- 第二章 SQL命令参考-SET SESSIONAUTHORIZATION
- 第二章 SQL命令参考-SET ROLE
- 第二章 SQL命令参考-ABORT
- 第二章 SQL命令参考-ALTER AGGREGATE
- 第二章 SQL命令参考-ALTER CONVERSION
- 第二章 SQL命令参考-ALTER DATABASE
- 第二章 SQL命令参考-ALTER FILESPACE
- 第二章 SQL命令参考-ALTER FUNCTION
- 第二章 SQL命令参考-ANALYZE
- 第二章 SQL命令参考-BEGIN
- 第二章 SQL参考命令-CHECKPOINT
- 第二章 SQL参考命令-CLOSE
- 第二章 SQL参考命令-CLUSTER
- 第二章 SQL参考命令-COMMENT
- 第二章 SQL命令参考-COPY
- 第二章 SQL命令参考-CREATE TABLESPACE
- 第二章 SQL命令参考-CREATE TYPE
- 第二章 SQL命令参考-CREATE VIEW
- Eclipse自动补全(取消“=”,空格,“.”和“;”的自动补全,加入TAB的自动补全)
- 第二章 引入"进程"概念的原因
- js鼠标事件大全
- 后序式运算(C/python略)
- ubuntu14.04安装opencv3.0遇到的问题
- 第二章 SQL命令参考-SET SESSIONAUTHORIZATION
- 嵌入式驱动开发-内核、文件系统的挂载基于(exynos4412)
- 学习笔记之JSP的标签和在JSP中使用JavaBean
- 基于HBuilder的 离线安卓打包
- JavaScript中prototype用法
- SpringBoot项目打包
- [leetcode] 232. Implement Queue using Stacks
- 在线图片上传、预览、裁切、放大、缩小之 cropbox.js 的应用
- JQuery DataTables 自定义按钮实现