2012年2月6日月曜日

Oracleのバージョンとconnectロール

基本的なことだけど、一応メモ。
(いまさらか。。)

Connectロールに含まれる権限は10.2.0.1.0以降、縮小されている。

■10.1.0.X.Xより以前のバージョンのConnectロールと含まれる権限

SQL>select GRANTEE,PRIVILEGE from DBA_SYS_PRIVS where GRANTEE='CONNECT'

GRANTEE  PRIVILEGE
----------------  ---------------
CONNECT  CREATE VIEW
CONNECT  CREATE TABLE
CONNECT  ALTER SESSION
CONNECT  CREATE CLUSTER
CONNECT  CREATE SESSION
CONNECT  CREATE SYNONYM
CONNECT  CREATE SEQUENCE
CONNECT  CREATE DATABASE LINK

■10.2.0.X.X以降のバージョンのConnectロールと含まれる権限

SQL>select GRANTEE,PRIVILEGE from DBA_SYS_PRIVS where GRANTEE='CONNECT'

GRANTEE  PRIVILEGE
----------------  --------------
CONNECT  CREATE SESSION


以前は色々作れる権限が入ってたのに、接続できるだけになっちゃったんですね~
昔の感覚で適当にConnectロール振っておけばいんじゃね?
とかでやっちゃうとビックリします。

ちなみに、同じ感覚で付与してたRESOURCEはというと・・・

■10.2.0.X.X以降のバージョンのConnectロールと含まれる権限

SQL> select GRANTEE,PRIVILEGE from dba_sys_privs where GRANTEE='RESOURCE' order by PRIVILEGE;

GRANTEE   PRIVILEGE
-----------------  -------------------
RESOURCE  CREATE CLUSTER
RESOURCE  CREATE INDEXTYPE
RESOURCE  CREATE OPERATOR
RESOURCE  CREATE PROCEDURE
RESOURCE  CREATE SEQUENCE
RESOURCE  CREATE TABLE
RESOURCE  CREATE TRIGGER
RESOURCE  CREATE TYPE

10.2.0.1.0以前と変更はなし。
RESOURCEロールだけじゃ、VIEWは作れません。。

ちゃんとユーザロール作るか、必要な権限のみを適切に付与しろ。
というOracle社のメッセージが見えますね。
(実際にマニュアル内で、「CONNECTおよびRESOURCEのロールはともにOracleの
将来のバージョンで非推奨になります」と言っています。)

さて、もうひとつの有名なロールといえば、DBA。
なんでもできちゃうロール。
説明するまでもないですし、健在です。


時たま、アプリケーションユーザや、
全部のユーザにこのロールが付与されている環境があってびっくりしたり。。。

バージョンアップや移行のタイミングで合わせて見直したいですね。


「Oracle9iリリース2(9.2)またはOracle Database 10gリリース1(10.1)から
新しいOracle Database 11gリリースにアップグレードすると、
CONNECTロールに含まれる権限はCREATE SESSION権限のみになります。
以前のリリースでCONNECTロールに付与された他の権限は、
アップグレード時に取り消されます。」
出典:Oracle® Databaseアップグレード・ガイド 11g リリース2(11.2)

気を付けなくちゃですね。

0 件のコメント:

コメントを投稿