友情提示:如果本网页打开太慢或显示不完整,请尝试鼠标右键“刷新”本网页!阅读过程发现任何错误请告诉我们,谢谢!! 报告错误
狗狗书籍 返回本书目录 我的书架 我的书签 TXT全本下载 进入书吧 加入书签

SQL 21日自学通(V3.0)(PDF格式)-第84章

按键盘上方向键 ← 或 → 可快速上下翻页,按键盘上的 Enter 键可回到本书目录页,按键盘上方向键 ↑ 可回到本页顶部!
————未阅读完?加入书签已便下次继续阅读!






DATABASE 语句是没有记录的吗           我们来学习一个流行的数据库管理系统               Personal 



Oracle 7 是如何实现安全的      当你已经确认你的系统中没有选择 Oracle  7 时你也可能会将 



这些信息中的大多数应用到其它的数据库管理系统中 



技巧   要带着下边的问题去规划你数据库系统的安全性 



l  谁应该得到数据库管理员权限 



l  有多少个用户需要访问数据库系统 



l  每个用户应该得到什么样的权限与角色 



l   当一个用户不再访问数据库时应该如何去删除它 



Personal Oracle7 与安全 



Personal Oracle7  通过下边的三个结构来实现安全性 



      l   用户 



      l   角色 



      l   权限 



创建用户 



   用户就是允许登录进入系统的账号名  创建用户使用的 SQL 语法格式如下 



语法 



   CREATE USER user 



   IDENTIFIED {BY password | EXTERNALLY} 



   'DEFAULT TABLESPACE tablespace' 



   'TEMPORARY TABLESPACE tablespace' 



   'QUOTA {integer 'K|M' | UNLIMITED} ON tablespace' 



   'PROFILE profile' 



   如果你选择了需要密码选项           当用户每次登录进行系统时系统都会要求他输入密码 



作为一个例子      下面请为你自己创建一个用户名 



INPUT/OUTPUT 



   SQL》 CREATE USER Bryan IDENTIFIED BY CUTIGER; 



                                                                 240 


…………………………………………………………Page 241……………………………………………………………

SQL 21  日自学通(V1。0)                                                   翻译人   笨猪 



    User created 



    每次我登录进行系统的名字是 Bryan              我会被要求输入密码 GUTIGER 



    如果选择了 EXTERNALLY 选项           ORACLE  将会依赖于你登录进入计算机系统的用户 



名和密码      也就是说当你登录进行计算机时你就已经登录进行了 ORACLE 



注   一些解释器允许你使用外部的               比如操作系统的密码作为 SQL             的密码  IDENTIFIED 



   externally 但是    我们推荐你使用 IDENTIFIED  BY  子句强制用户在登录进行系统时 



   输入密码  IDENTIFIED BY PASSWORD 



    就像你在 CREATE  USER 的其它部分所看到的一样  ORACLE  允许你指定默认的表空 



间及配额  你可以在 ORACLE 的附带文档中学习到更多的与之相关的内容 



    与你在本书中学到的其它的 CREATE 语句一样                   它也有 ALTER  USER  命令       其语法 



格式如下 



语法 



    ALTER USER user 



    'IDENTIFIED {BY password | EXTERNALLY}' 



    'DEFAULT TABLESPACE tablespace' 



    'TEMPORARY TABLESPACE tablespace' 



    'QUOTA {integer 'K|M' | UNLIMITED} ON tablespace' 



    'PROFILE profile' 



    'DEFAULT ROLE { role '; role' 。。。 



      | ALL 'EXCEPT role '; role' 。。。' | NONE}' 



    你可以使用该命令来改变所有的用户选项                    包括密码和配置文件  例如              如果想改变 



Bryan 的密码  你可以用下边的语句 



INPUT/OUTPUT 



    SQL》 ALTER USER Bryan 



        2    IDENTIFIED  BY  ROSEBUD 



    User altered 



    如果想改变默认的表空间  可以用下边的语句 



INPUT/OUTPUT 



    SQL》 ALTER USER RON 



                                                                            241 


…………………………………………………………Page 242……………………………………………………………

SQL 21  日自学通(V1。0)                                       翻译人   笨猪 



       2    DEFAULT  TABLESPACE  USERS 



   User altered。 



   如果想删除一个用户        只需简单地使用 DROP  USER  命令即可       它将会把用户从数据 



库的清除    该命令的语法格式如下 



SYNTAX 



   DROP USER user_name 'CASCADE' 



   如果你使用了 CASCADE  选项      那么所有与用户账号相关的对象也将会被删除                否则 



的话对象将仍归该用户所有  但是用户将不再有效                这有点让人迷糊  但是当你只想删除 



用户时它很有用 



创建角色 



   角色是允许用户在数据库中执行特定功能的一个或一组权限                    将角色应用于用户的语 



法如下 



SYNTAX 



   GRANT role TO user 'WITH ADMIN OPTION' 



   如果你使用了 WITH  ADMIN  OPTION    选项   那么该用户可以为其它用户赋予权限 



功能是不是很强大 



   如果想删除角色  可以使用 REVOKE 命令 



SYNTAX 



   REVOKE role FROM user 



   当你使用你早些时候创建的账号登录进入系统时  你会为你的许可权问题而费尽精力 



你可以登录进入  但这也是你所能做的全部内容               ORACLE 可以让你用下边的三个角色之 



一进行注册 



       l  Connect 



       l  Resource 



       l  DBA  也就是数据库管理员 



   这三个角色有着不同程度的权限 



注  如果你有适当的权限  你可以创建你自己的角色                为你的角色赋予权限       然后将角色 



   应用于你的用户以取得更高的安全性 



                                                               242 


…………………………………………………………Page 243……………………………………………………………

SQL 21  日自学通(V1。0)                                               翻译人    笨猪 



Connect 角色 



    你可以将 Connect  角色理解为登录级角色  被赋予该角色的用户可以登录进入系统并 



做允许他/她们做的工作 



INPUT/OUTPUT 



    SQL》 GRANT CONNECT TO Bryan 



    Grant succeeded。 



    Connect  角色允许用户从表中插入          更新    删除属于其它用户的记录            在取得了适当 



的许可权限以后  用户也可以创建表  视图                 序列   簇和同义词 



Resource 角色 



    该角色允许用户对 ORACLE 数据库进行更多的访问                  除了可以赋予 Connect 角色的权 



限以外  它还有创建过程           触发机制和索引的权限 



INPUT/OUTPUT 



    SQL》 GRANT RESOURCE TO Bryan 



    Grant succeeded。 



    DBA 角色 



    DBA  角色包括了所有的权限  赋予了该角色的用户可以在数据库中做他们想做的任何 



事   为了保证系统的完整性你应该将具有该角色的用户数量保持在仅有的少数几个上 



INPUT/OUTPUT 



    SQL》 GRANT DBA TO Bryan; 



    Grant succeeded。 



    在经过了这三步之后          用户 Bryan 分别应用了 connect     resource 和 DBA 角色  这似乎 



是多余的      因为 DBA 角色就包括了其它的两个角色  所有现在我们可以把它删除掉 



INPUT/OUTPUT 



    SQL》 REVOKE CONNECT FROM Bryan 



    Revoke succeeded。 



    SQL》 REVOKE RESOURCE FROM Bryan 



    Revoke succeeded。 



                  
返回目录 上一页 下一页 回到顶部 0 0
未阅读完?加入书签已便下次继续阅读!
温馨提示: 温看小说的同时发表评论,说出自己的看法和其它小伙伴们分享也不错哦!发表书评还可以获得积分和经验奖励,认真写原创书评 被采纳为精评可以获得大量金币、积分和经验奖励哦!