2009-05-27 3 views

Répondre

22

SYS possède le dictionnaire de données Oracle. Chaque objet de la base de données (tables, vues, packages, procédures, etc.) possède un seul propriétaire. Pour le dictionnaire de base de données, et un grand nombre de tables spéciales (vues de performances et autres) appartiennent toutes à l'utilisateur SYS.

L'utilisateur SYSTEM est censé être l'utilisateur DBA maître, avec accès à tous ces objets. Cela reflète une philosophie de conception de sécurité Oracle précoce et de longue date. Vous construisez l'application en utilisant un seul utilisateur, puis en créez une seconde avec accès (select, update, delete) mais sans abandonner les privilèges. Cela vous donne un accès "super-utilisateur" à votre schéma sans pouvoir le détruire accidentellement. Au fil des années, thing a été ajouté au compte SYSTEM qui aurait dû être dans le compte SYS. Mais très peu de gens veulent donner accès à leur compte SYS s'ils ne le doivent pas.

12

SYS peut connect AS SYSDBA, SYSTEM ne peut pas.

SYSDBA privilège est nécessaire pour effectuer certaines tâches administratives, comme CREATE DATABASE et DROP DATABASE et interroger toutes les tables malgré GRANT « autorisations ées sur eux.

En fait, chaque fois que vous vous connectez en tant que SYSDBA, vous devenez un SYS.

+0

Je viens de me connecter au XE par défaut sous SYSTEM "as sysdba". Ce qui m'intrigue c'est que je n'ai pas mis pw sur le compte SYSTEM et que je peux l'utiliser avec le pw que j'ai configuré pour SYS. (Je connais très peu d'Oracle.) –

Questions connexes