Create a secure application role
--建立應用角色
create role hr_read identified using hr.hr_read_check;
--給角色賦權
grant select on scott.emp to hr_read;
--建立角色認證過程(HR)
CREATE OR REPLACE PROCEDURE hr.hr_read_check
AUTHID CURRENT_USER IS
BEGIN
DBMS_SESSION.SET_ROLE('HR_READ') ;
END;
/
--在sqlplus 中執行:
SQL> declare i number;
2 begin
3 hr.hr_read_check;
4 select count(*) into i from hr.aa;
5 dbms_output.put_line(i);
6 end;
7 /
select count(*) into i from hr.aa;
*
ERROR 位於第 4 行:
ORA-06550: 第 4 行, 第 32 列:
PL/SQL: ORA-00942: 表或檢視不存在
ORA-06550: 第 4 行, 第 1 列:
PL/SQL: SQL Statement ignored
為什麼?
但是如在sqlplus中直接執行:
SQL> exec hr_read_check;
PL/SQL 過程已成功完成。
SQL> select count(*) from hr.aa;
COUNT(*)
----------
1
為什麼?
為什麼角色設定在pl/sql中不成立?
為什麼在sqlplus 環境中可以成立.
過程中的許可權必需顯式(GRANT)授與,不能透過角色進行。
也就是說: 應用角色只能在session級使用, 而不能在procedure內。
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/90618/viewspace-1266399/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- Create a SharePoint Application Page for Anonymous AccessAPP
- Oracle Secure BackupOracle
- PostgreSQL Role ManagementSQL
- oracle set roleOracle
- Ctrete new role
- Cookie Secure 屬性Cookie
- cookie Secure與HttpOnlyCookieHTTP
- Laravel workflow with database and roleLaravelDatabase
- Oracle OCP(30):ROLEOracle
- 聊聊Oracle Default RoleOracle
- 認識SQL Server2000 Server Role 和 Database RoleSQLServerDatabase
- Secure gRPC with TLS/SSLRPCTLS
- SetUp a Secure Ubuntu Server[轉]UbuntuServer
- ORACLE- Secure Backup DocumentationOracle
- Multi Role的實現
- ansible-role角色
- 9 Role Transitions 角色轉換
- 2.2.4.1 Principles of Privilege and Role Grants in a CDB
- 2.2.4 Overview of Privilege and Role Grants in a CDBView
- MySQL角色(role)功能介紹MySql
- oracle: default role 詳解(轉)Oracle
- Oracle 角色 自定義角色 RoleOracle
- [轉載] The role of the Software Architect
- Mysql_secure_installation詳解MySql
- 初始 Oracle Secure Backup (OSB) Cloud ModuleOracleCloud
- 安裝HP-UX Secure ShellUX
- Oracle OCP(31):USER & ROLE & PRIVILEGE 其它Oracle
- AWS Switching to an IAM role (AWS CLI)
- 聊聊spring security的role hierarchySpring
- 有關Oracle role的總結Oracle
- Role of Public,Private,Virtual, and SCAN IPs
- Catch Application Exceptions in a Windows Forms ApplicationAPPExceptionWindowsORM
- How to Install and Secure Redis on Centos7RedisCentOS
- OSB(Oracle Secure Backup) 磁帶重用方法Oracle
- Local Connections and Secure Remote Connections (36)REM
- 深度探索:Secure Hash Algorithm(SHA)全景解析Go
- Create DatabaseDatabase
- Oracle角色許可權之Default RoleOracle