# 전자지갑
l RAC 환경에서 전자지갑
- 테이블의 특정 data를 못보게 할 때 사용
n 전자지갑 테스트
>> cd /u01/app/oracle/product/10.2.0/db_1/network/admin( cd $ORACLE_HOME/network/admin) 으로 이동해서 sqlnet.ora 파일에 아래의 내용을 추가한다
$ vi sqlnet.ora
- directory로 지정된 경로에 전자지갑 생성
>> 전자지갑 생성
SQL#1> alter system set encryption key identified by oracle1234;
>> scott 유저에게 전자지갑을 사용해서 암호화 할 컬럼 지정
SQL#1> connect scott/tiger SQL#1> create table emp809 as select * from emp; SQL#1> alter table emp809 modify sal encrypt;
>> sys유저로 접속해서 전자지갑을 닫는다
SQL#1> connect /as sysdba SQL#1> alter system set encryption wallet close;
>> scott 유저로 접속해서 emp809 테이블의 sal을 조회한다
SQL#1> connect scott/tiger SQL#1> select ename,sal from emp809; ERROR at line 1: ORA-28365: wallet is not open - 위처럼 전자지갑 암호화로 열수 없다는 에러가 출력된다 - 다른 instance에서도 암호화로 조회가 불가능하다
>> sys에서 다시 전지지갑을 푼다
SQL#1> connect /as sysdba SQL#1> alter system set encryption wallet open identified by oracle1234;
# 2번 session
SQL#2> select ename, sal from emp809; select ename, sal from emp809 ERROR at line 1: ORA-28365: wallet is not open - 1번 session에서 wallet을 풀었지만 2번 session에서는 여전히 조회가 불가능하다 - 그 이유는 전자지갑을 가진 1번 session만이 전자지갑을 가지고 있고 2번 session은 가지고 있지 않기 때문이다. - 결국 이 전자지갑을 풀 수 있는 전자지갑 열쇠를 가진 session 만이 조회가 가능하다 - 그래서 전자지갑을 1번 instance에서 복사해서 2번 instance에 복사해야 한다
>> 전자지갑을 2번 instance에 복사 $ cd /u01/app/oracle/product/10.2.0/db_1 $ scp ewallet.p12 rac2:/u01/app/oracle/product/10.2.0/db_1 - $ hostname : 호스트 명을 알 수 있다(예 : rac2) - scp 명령어는 원격으로 해당된 host의 경로에 원하는 파일을 복사한다
>> 2번 instance에서 전자지갑의 위치를 알려주기 위해 아래의 경로로 가서 sqlnet.ora에 내용을 추가해준다 - $ cd $ORACLE_HOME/network/admin
$ vi sqlnet.ora
- directory로 지정된 경로에 전자지갑 생성
>> sys로 접속해서 전자지갑을 연다
# 2번 session
SQL#2> connect /as sysdba SQL#2> alter system set encryption wallet open identified by oracle1234; SQL#2> connect scott/tiger SQL#2> select ename, sal from emp809; ENAME SAL ---------- ---------- KING 5000 BLAKE 2850 CLARK 2450 JONES 2975 MARTIN 1250 ALLEN 1600 ………………………………………. - sys 계정에서 전자지갑을 열고 scott에서 조회해보면 sal 컬럼의 암호화를 풀 수 있고 조회할 수 있다
>> 다시 sal decrypt
SQL> alter table emp809 modify sal decrypt;
|
'빅데이터과정 > RAC' 카테고리의 다른 글
#44_140813_RAC_TUNING (0) | 2014.08.13 |
---|---|
#44_140813_RAC_DATAFILE 복구 (0) | 2014.08.13 |
#43_140812_RAC_INSTANCE STOP START (0) | 2014.08.12 |
#43_140812_RAC_UNDO TABLESPACE (0) | 2014.08.12 |
#43_140812_RAC_REDO LOG FILE (0) | 2014.08.12 |