Documente Academic
Documente Profesional
Documente Cultură
5
Integritatea şi securitatea
bazelor de date
Tipuri de restrictii neprocedurale
<<OAI_14>>
Restricţia Descriere
[CONSTRAINT constr_name]
PRIMARY KEY (column [,column] … ) [USING INDEX index_clause]
| UNIQUE KEY (column [,column] … ) [USING INDEX index_clause]
| FOREIGN KEY (column [,column] … )
REFERENCES [schema.]table [(column [,column] … )] [ON DELETE
CASCADE]
| CHECK (condition)
[ NOT DEFERRABLE
| DEFERRABLE [INITIALLY {IMMEDIATE | DEFERRED}]
]
[DISABLE | ENABLE [VALIDATE | NOVALIDATE]]
Activarea si dezactivarea restrictiilor
ALTER TABLE table DISABLE CONSTRAINT constraint CASCADE;
Fara validarea inregistrarilor existente
ALTER TABLE table
ENABLE NOVALIDATE
{ CONSTRAINT costraint | PRIMARY KEY | UNIQUE ( column [, column]
… )}
[ USING INDEX index_specifications ]
Cu validarea inregistrarilor existente
ALTER TABLE table
ENABLE [ VALIDATE ]
{ CONSTRAINT costraint | PRIMARY KEY | UNIQUE ( column [, column]
… )}
[ USING INDEX index_specifications ]
[EXCEPTIONS INTO table]
DBA_CONSTRAINTS DBA_CONS_COLUMNS
- OWNER - OWNER
- CONSTRAINT_NAME - CONSTRAINT_NAME
- CONSTRAINT_TYPE - TABLE_NAME
- TABLE_NAME - COLUMN_NAME
- SEARCH_CONDITION - POSITION
- R_OWNER
- R_CONSTRAINT_NAME
- DELETE_RULE
- STATUS
- DEFERRABLE
- DEFERRED
- VALIDATED
Restrictiile procedurale TRIGGER-e
DBA_TRIGGERS DBA_TRIGGER_COLS
- OWNER - TRIGGER_OWNER
- TRIGGER_NAME - TRIGGER_NAME
- TRIGGER_TYPE - TABLE_OWNER
- TRIGGERING_EVENT - TABLE_NAME
- TABLE_OWNER - COLUMN_NAME
- TABLE_NAME
- STATUS
- TRIGGER_BODY
DBA_OBJECTS
- OWNER
- OBJECT_NAME
- OBJECT_TYPE
- STATUS
Securitatea accesului în
baza de date
• Conturi utilizatori
• Profile
• Privilegii
• roluri
Crearea conturilor utilizatorilor <<OAI_17>>
CREATE USER user
IDENTIFIED { BY password | EXTERNALY }
[DEFAULT TABLESPACE tablespace]
[TEMPORARY TABLESPACE tablespace]
[QUOTA {INTEGER [k | M] | UNLIMITED} ON TABLESPACE
[QUOTA {INTEGER [k | M] | UNLIMITED } ON TABLESPACE] … ]
[PASSWORD EXPIRE]
[ACCOUNT {LOCK | UNLOCK}]
[PROFILE {profile | DEFAULT}]
DBA_USER DBA_TS_QUOTAS
- USERNAME - USER_NAME
- USER_ID - TABLESPACE_NAME
- CREATED - BYTES
- ACCOUNT_STATUS - MAX_BYTES
- LOCK_DATE - BLOCKS
- EXPITY_DATE - MAX_BLOCKS
- DEFAULT_TABLESPACE
- TEMPORARY_TABLESAPCE
Crearea si activarea profilelor
DBA_USERS DBA_PROFILES
- PROFILE - PROFILE
- USERNAME - RESOURCE_NAME
- - RESOURCE_TYPE
- LIMIT
Restrictii privind resursele sistemului
Restricţii Descriere
La nivel de sesiune
ALTER
DELETE
EXECUTE
INDEX
INSERT
REFERENC
ES
SELECT
UPDATE
Acordarea si revocarea privilegiilor SYSTEM
DBA_SYS_PRIVS SESSION_PRIVS
- GRANTEE - PRIVILEGE
- PRIVILEGE
- ADMIN OPTION
DBA_TAB_PRIVS DBA_COL_PRIVS
- GRANTEE - GRANTEE
- OWNER - OWNER
- TABLE_NAME - TABLE_NAME
- GRANTOR - COLUMN_NAME
- PRIVILEGE - GRANTOR
- GRANTABLE - PRIVILEGE
- GRANTABLE
Crearea, modificarea şi asignarea sau acordarea rolurilor (1)