Oacle 사용자 권한,역할 관리 상세 설명
1.권한 분류:
시스템 권한:시스템 은 사용자 가 데이터 베 이 스 를 사용 할 수 있 는 권한 을 규정 합 니 다.(시스템 권한 은 사용자 에 게).
실체 권한:사용자 가 다른 사용자 의 표 나 보기 에 접근 할 수 있 는 권한 입 니 다.(시계 나 보기 에 대한 것).
2.시스템 권한 관리:
1.시스템 권한 분류:
DBA:모든 특권 을 가지 고 있 으 며 시스템 최고 권한 입 니 다.DBA 만 데이터베이스 구 조 를 만 들 수 있 습 니 다.
RESOURCE:리 소스 권한 을 가 진 사용 자 는 실체 만 만 만 들 수 있 고 데이터베이스 구 조 를 만 들 수 없습니다.
CONNECT:Connect 권한 을 가 진 사용 자 는 Oracle 에 로그 인 할 수 있 고 실 체 를 만 들 수 없 으 며 데이터베이스 구 조 를 만 들 수 없습니다.
일반 사용자 에 게:connect,resource 권한 을 부여 합 니 다.
DBA 관리 사용자:connect,resource,dba 권한 을 부여 합 니 다.
2.시스템 권한 부여 명령:
[시스템 권한 은 DBA 사용자 만 부여 할 수 있 습 니 다:sys,system(처음에는 이 두 사용자 만 가능 합 니 다)]
권한 부여 명령:SQL>grant connect,resource,dba to user name 1[,사용자 이름 2]...;
[일반 사용 자 는 권한 수 여 를 통 해 system 과 같은 사용자 권한 을 가 질 수 있 지만 sys 사용자 와 같은 권한 을 가 질 수 없고 system 사용자 의 권한 도 회수 할 수 있 습 니 다.]
예:
SQL> connect system/manager
SQL> Create user user50 identified by user50;
SQL> grant connect, resource to user50;
사용자 가 어떤 권한 을 가지 고 있 는 지 알 아 보기:
SQL> select * from user_sys_PRivs;
SQL> select * from user_tab_privs;
사용자 삭제:SQL>drop user 사용자 이름 캐 스 케 이 드; //게다가 캐 스 케 이 드 는 사용자 가 만 든 것 과 함께 모두 삭제 합 니 다.3.시스템 권한 전달:
WITH ADMIN OPTION 옵션 을 추가 하면 받 은 권한 을 전달 할 수 있 습 니 다.
SQL> grant connect, resorce to user50 with admin option; // 。
4.시스템 권한 회수:시스템 권한 은 DBA 사용자 만 회수 할 수 있 습 니 다.명령:SQL>연결 해제,user 50 의 리 소스;
설명:
1)WITH ADMIN OPTION 을 사용 하여 사용자 에 게 시스템 권한 을 부여 한다 면 이 사용자 에 게 같은 권한 을 부여 한 모든 사용자 에 게 시스템 권한 을 취소 하 는 것 은 이러한 사용자 의 같은 권한 을 등급 별로 취소 하지 않 습 니 다.
2)시스템 권한 무 급 연결,즉 A 는 B 권한 을 부여 하고 B 는 C 권한 을 부여 하 며 A 가 B 의 권한 을 회수 하면 C 의 권한 은 영향 을 받 지 않 는 다.시스템 권한 은 사용자 간 에 회수 할 수 있 습 니 다.즉,A 는 C 사용자 의 권한 을 직접 회수 할 수 있 습 니 다.
3.실체 권한 관리
1.실체 권한 분류:select,update,insert,alter,index,delete,all //모든 권한 포함
execute //저장 프로시저 실행 권한
user01:
SQL> grant select, update, insert on product to user02;
SQL> grant all on product to user02;
user02:
SQL> select * from user01.product;
// user02 user_tables, user01.product , all_tables , 。
2.표 의 조작 권한 을 전체 사용자 에 게 부여 합 니 다.
SQL> grant all on product to public; public , all drop。
[실체 권한 데이터 사전]:
SQL> select owner, table_name from all_tables; //
SQL> select table_name from user_tables; //
SQL> select grantor, table_schema, table_name, privilege from all_tab_privs; // ( )
SQL> select grantee, owner, table_name, privilege from user_tab_privs; // ( )
3.DBA 사용 자 는 전체 사용자 의 임의의 기본 테이블 을 조작 할 수 있 습 니 다(권한 이 필요 없 음,삭제 포함).DBA 사용자:
SQL> Create table stud02.product( id number(10),name varchar2(20));
SQL> drop table stud02.emp;
SQL> create table stud02.employee
as
select * from scott.emp;
4.실체 권한 전달(WITH GRANT OPTION):user01:
SQL> grant select, update on product to user02 with grant option; // user02 , 。
5.실체 권한 회수:user 01:
SQL>Revoke select, update on product from user02; // 。
설명1)한 사용자 의 대상 권한 을 취소 하면 이 사용자 가 WITH GRANT OPTION 을 사용 하여 권한 을 부여 한 사용자 에 게 도 같은 권한 을 취소 합 니 다.즉,권한 을 취소 할 때 등급 을 연결 하 는 것 입 니 다.
Oracle 사용자 관리
1.사용자 프로필 파일 만 들 기
SQL> create profile student limit // student 자원 파일 이름
FAILED_LOGIN_ATTEMPTS 3 //사용자 잠 금 로그 인 실패 횟수 지정
PASSWORD_LOCK_TIME 5 //사용자 잠 금 일 수 를 지정 합 니 다.
PASSWORD_LIFE_TIME 30 //사용 가능 한 구령 일수 지정
2.사용자 만 들 기
SQL> Create User username
Identified by password
Default Tablespace tablespace
Temporary Tablespace tablespace
Profile profile
Quota integer/unlimited on tablespace;
예:
SQL> Create user acc01
identified by acc01 // ,
defaulttablespaceaccount
temporarytablespacetemp
profiledefault
quota50monaccount;
SQL>grantconnect,resourcetoacc01;
[*]사용자 결 성 표 공간,임시 표 공간 조회
SQL>selectusername,default_tablespace,temporary_tablespacefromdba_users;
[*]시스템 자원 파일 이름 조회:
SQL>select*fromdba_profiles;
자원 파일 유사 표 는 만 들 면 데이터베이스 에 저 장 됩 니 다.
SQL>selectusername,profile,default_tablespace,temporary_tablespacefromdba_users;
SQL>createprofilecommonlimit
failed_login_attempts5
idle_time5;
SQL>Alteruseracc01profilecommon;
3.사용자 수정:
SQL>AlterUser
Identified
DefaultTablespacetablespace
TemporaryTablespacetablespace
Profileprofile
Quotainteger/unlimitedontablespace;
1.구령 글자 수정:
SQL>Alteruseracc01identifiedby"12345";
2.사용자 부족 표 공간 수정:
SQL>Alteruseracc01defaulttablespaceusers;
3.사용자 임시 테이블 공간 수정
SQL>Alteruseracc01temporarytablespacetemp_data;
4.사용자 에 게 암 호 를 수정 하도록 강제 합 니 다.
SQL>Alteruseracc01passwordexpire;
5.사용자 잠 금 추가
SQL>Alteruseracc01accountlock;//
SQL>Alteruseracc01accountunlock;//
4.사용자 삭제
SQL>dropuser ;//
SQL>dropuser CASCADE;//
*1.현재 접속 중인 사용 자 는 삭제 할 수 없습니다.5.사용자 감시:
1.사용자 세 션 정보 조회:
SQL>selectusername,sid,serial#,machinefromv$session;
2.사용자 세 션 정보 삭제:
SQL>Altersystemkillsession'sid,serial#';
3.사용자 SQL 문 구 를 조회 합 니 다.
SQL>selectuser_name,sql_textfromv$open_cursor;
Oracle 역할 관리역할
배역캐릭터 는 한 그룹의 권한 의 집합 으로 캐릭터 를 한 사용자 에 게 부여 하면 이 사용 자 는 이 캐릭터 의 모든 권한 을 가진다.
2.시스템 미리 정 의 된 역할
미리 정 의 된 역할 은 데이터 베 이 스 를 설치 한 후에 시스템 이 자동 으로 만 드 는 데 자주 사용 되 는 역할 입 니 다.예 정 된 캐릭터 들 을 간단하게 소개 해 드 리 겠 습 니 다.캐릭터 에 포 함 된 권한 은 다음 문장 으로 조회 할 수 있 습 니 다.
sql>select*fromsys_role_privswhererole=' ';
1.CONNECT,RESOURCE,DBA이러한 미리 정 의 된 캐릭터 들 은 주로 뒤로 호 환 되 기 위해 서 이다.주로 데이터베이스 관리 에 사용 된다.Oacle 은 사용자 가 데이터베이스 관리 와 안전 한 권한 계획 을 설계 하 는 것 을 권장 하 며,이러한 예 정 된 역할 을 간단하게 사용 하지 않도록 합 니 다.앞으로 버 전에 서 이 캐릭터 들 은 미리 정 의 된 캐릭터 가 될 수 없습니다.
2.DELETE_CATALOG_ROLE,EXECUTE_CATALOG_ROLE,SELECT_CATALOG_ROLE
이 역할 들 은 주로 데이터 사전 보기 와 가방 에 접근 하 는 데 사 용 됩 니 다.
3.EXP_FULL_DATABASE,IMP_FULL_DATABASE
이 두 캐릭터 는 데이터 가 져 오기 내 보 내기 도 구 를 사용 하 는 데 사 용 됩 니 다.
4.AQ_USER_ROLE,AQ_ADMINISTRATOR_ROLE
AQ:AdvancedQuery。이 두 캐릭터 는 Oacle 고급 조회 기능 에 사용 된다.
5.SNMPAGENT
Oacleenerprisemanager 와 IntelligentAgent 에 사용 합 니 다.
6.RECOVERY_CATALOG_OWNER
복구 라 이브 러 리 가 있 는 사용 자 를 만 드 는 데 사용 합 니 다.복구 라 이브 러 리 에 대한 정 보 는 Oacle 문서'Oracle 9i User-managed Backupand Recovery Guide'를 참고 하 십시오.
7.HS_ADMIN_ROLE
ADBAusingOracle'sheterogeneousservicesfeatureneedsthisroletoaccessappropriatetablesinthedatadictionary.
3.관리 역할
1.캐릭터 만 들 기
sql>createrolerole1;
2.캐릭터 에 게 권한 부여
sql>grantcreateanytable,createproceduretorole1;
3.캐릭터 부여
sql>grantrole1touser1;
4.캐릭터 에 포 함 된 권한 보기
sql>select*fromrole_sys_privs;
5.구령 이 있 는 캐릭터 를 만 듭 니 다(구령 이 있 는 캐릭터 를 만 들 때 구령 을 제공 해 야 합 니 다)
sql>createrolerole1identifiedbypassword1;
6.캐릭터 수정:구령
sql>alterrolerole1notidentified;
sql>alterrolerole1identifiedbypassword1;
이 필요 한 지 여부 7.현재 사용자 가 적용 할 캐릭터 설정(주:캐릭터 의 효력 발생 은 어떤 개념 입 니까?사용자 a 에 b1,b2,b3 세 개의 캐릭터 가 있다 고 가정 하면 b1 이 효력 이 발생 하지 않 으 면 b1 에 포 함 된 권한 은 a 에 게 있 지 않 고 캐릭터 만 효력 이 발생 하고 캐릭터 내의 권한 은 사용자 에 게 작용 하 며 최대 효력 이 발생 할 수 있 는 캐릭터 수 는 매개 변수 MAXENABLED_ROLES 설정;사용자 가 로그 인 한 후에 Oacle 은 사용자 에 게 직접 부여 하 는 모든 권한 과 사용자 기본 역할 의 권한 을 사용자 에 게 부여 합 니 다.)
sql>setrolerole1;// role1
sql>setrolerole,role2;// role1,role2
sql>setrolerole1identifiedbypassword1;// role1
sql>setroleall;//
sql>setrolenone;//
sql>setroleallexceptrole1;// role1 。
sql>select*fromSESSION_ROLES;// 。
8.지정 한 사용 자 를 수정 하고 기본 캐릭터 설정
sql>alteruseruser1defaultrolerole1;
sql>alteruseruser1defaultroleallexceptrole1;
9.캐릭터 삭제
sql>droprolerole1;
캐릭터 삭제 후 원래 이 캐릭터 를 사용 하 던 사용 자 는 더 이상 이 캐릭터 를 가지 지 않 고 해당 하 는 권한 도 없습니다.설명:
1)WITHGRANTOPTION 을 캐릭터 에 게 부여 할 수 없 는 권한
2)WITHADMINOption 을 사용 하여 캐릭터 에 게 시스템 권한 을 부여 할 수 있 으 며,취소 시 직렬 연결 이 아 닙 니 다.
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
자바 작업 은 Clob 또는 NClob 데이터 형식의 저장 프로 세 스 인 스 턴 스 를 포함 합 니 다.텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.