论坛 
IT客
设为首页
加入收藏
关于我们
首页  | 程序 | IT新闻 | IT基础 | 网络 | 系统 | 数据库 | 软件开发 | 软件下载 | 电影频道 | FLASH | 图片 | 技术文档 | 分类信息
网络 Cisco 网络设备 解决方案 系统 Windows Linux 服务器 系统安全 程序 Java Dotnet 数据库 Oracle MySQL MSSQL 软件开发 Web开发 桌面开发 IT基础 网页设计 平面设计 多媒体 工具软件 即时通讯 Flash FLASH爆笑 FLASH游戏 FLASH MTV FLASH彩铃 图片 明星 美女 笑话大全
子栏目  | 入门基础 | 安装配置 | 体系架构 | PLSQL | 备份恢复 | 性能调优 | 开发技术 | 考试认证
首页 > 数据库 > Oracle > 入门基础 >
 
使用product_user_profile来实现用户权限的设定-入门基础
作者: 发布时间:2008-04-14 04:37:55 来源:

  我们有时候在以普通用户登录SQL*Plus的时候,会碰到下面的错误提示:
  Error accessing PRODUCT_USER_PROFILE
  Warning: Product user profile information not loaded!
  You may need to run PUPBLD.SQL as SYSTEM
  
  其实在实际意义上这只是一个警告而已,并不是真正的错误,遇到这个提示,并不会影响我们正常使用SQL*Plus,也不会对数据库功能产生影响。
  
  如果数据库是使用dbca创建的那么不用担心这个问题,通常是我们手动创建数据库的情况下,忘了执行一些脚本才导致出现这样的警告。PRODUCT_USER_PROFILE其实有很强大的功能,这是SYSTEM模式下的一个表,在此表中存在的数据可以让客户端程序登入的时候检查是否在命令的执行上有什么限制。基本上我们是以它来限制SQL*Plus这个客户端程序(目前好像也只有这个程序才会去自动检查这张表:D)
  
  如果不想看到这个警告,作如下操作:
  以SYSTEM用户登入SQL*Plus,然后执行PUPBLD.SQL,这个文件通常在$ORACLE_HOME/sqlplus/admin目录中。
  SQL> @$ORACLE_HOME/sqlplus/admin/pupbld.sql
  
  执行完毕以后,可以desc product_user_profile来验证一下改表已经创建,并且熟悉一下表的结构。
  
  以上不是这篇小文章的重点,下面我们要利用这张表来限制SCOTT用户不能执行DROP命令,即使SCOTT用户拥有DROP TABLE的权限。
  SQL> insert into product_user_profile (
   2 product, userid, attribute, char_value)
   3 values (
   4 'SQL*Plus','SCOT%','DROP','DISABLED');
  
  1 row inserted
  
  Executed in 0.01 seconds
  
  SQL> commit;
  
  Commit complete
  
  Executed in 0 seconds
  
  然后退出SYSTEM用户,用SCOTT用户登录,作个测试:
  SQL> create table t_test_profile(
   2 id number);
  
  Table created.
  
  Elapsed: 00:00:00.10
  
  SQL> drop table t_test_profle;
  SP2-0544: invalid command: drop
  
  这就是product_user_profile的作用,回顾一下:
  1。如果我们把DROP改成CREATE或者UPDATE那么就对用户禁止了这些命令。
  2。从上面的insert语句,我们可以看到对于用户的限制支持通配符,所有以SCOT开头的用户都不能执行指定的命令。
  3。修改了product_user_profile内容,用户必须重新登录SQL*Plus,修改才会生效,也就是只有在登录的时候,SQL*Plus才会检查一遍product_user_profile表中的内容。
  
评论】【加入收藏夹】【 】【打印】【关闭
※ 相关信息
 ·logminer使用方法 -入门基础  (2008-04-14)
 · ORACLE培训教程(4)-Pro * C 的使  (2008-04-14)
 ·Linux上Sybase ASE11.9.2的安装、  (2008-04-14)
 ·Red Hat Linux 7.0安装使用手记  (2008-04-14)
 ·TurboLinux 入门教程:第二课 为什  (2008-04-14)
 ·WAS 5.x中数据源的配置使用及常见  (2008-04-13)
 ·Resin的使用和安装  (2008-04-13)
 ·Java环境配置的Classpath使用故障  (2008-04-13)
 ·使用BEA Workshop开发ZK应用—安  (2008-04-13)
 ·使用EditPlus配置Java编译环境  (2008-04-13)

发表评论
用户名: 密码:
验证码: 匿名发表
 
 搜索文章
 最新文章
·Win2K入侵检测实例分析
·Win2000 Server安全入门
·使用微软安全工具包加固Win2
·Windows2000安全检查清单
· 安全管理
·利用安全工具包保持系统的最
·怎么实施和做好入侵检测
·Win2k建立安全WEB站点的解决
·用“$”来加强共享资源的安全
·让你的IIS无懈可击
 热点文章 
· 我的xfce学习笔记(汉化)
·三个方法优化MySQL数据库查询
·IPW2100安装详细步骤说明
·Gnuplot科学绘图——入门篇
·Linux下使用Evolution收发Em
·在Archlinux 安装Maya7.01
·安装Linux中文输入法fcitx
·向Linux迁移的人才准备
·使用指南:好用的播放器mpd
·你应该知道的10个MySQL客户启

社区关于我们广告业务信息反馈合作伙伴网站地图
ITKee.Com 版权所有
Copyright © 2008 All rights reserved