Oracle

Oracle 계정등록 / 암호화

알 수 없는 사용자 2015. 5. 12. 15:16

 oracle 계정등록

 

 

- 팀장(SQL 서버 담당자)은 원격 서버 연결을 위해서 오라클 서버에 팀원들의 계정을 생성한다(자기 자신 계정 포함).

계정 생성 CREATE USER 사용자아이디 IDENTIFIED BY 암호지정; 3. 기본 테이블스페이스 지정 ALTER USER 사용자아이디 DEFAULT TABLESPACE USERS; 4. 권한 부여 GRANT CONNECT, RESOURCE, CREATE VIEW TO 사용자아이디; --계정 확인 SELECT * FROM dba_users; --계정 삭제할 때 사용할 것 DROP USER 계정이름; DROP USER 계정이름 CASCADE; 4. 팀장(SQL 서버 담당자)은 원격 서버 연결을 위해서 방화벽에 1521 포트 허용을 추가한다. -> 제어판 -> 방화명 -> 고급설정 -> 인바운드규칙 -> 새규칙

-> 포트선택 -> 1521작성 -> 연결허용 -> 이름설정 후 마침

 

 

 

 

 

 

5. 팀원은 SQL Developer에서 팀장(SQL 서버 담당자) 컴퓨터의 IP 번호를 이용해서 원격 연결을 설정한다. 6. 팀원은 원격 연결이 되면 본인의 암호를 변경한다. ALTER USER 계정이름 IDENTIFIED BY 새로운암호;

 

암호화 방법 :

 

cmd 실행 후,

 
-> SQLPLUS SYS AS SYSDBA 명령어 입장
-> SQL>@C:\oraclexe\app\oracle\product\11.2.0\server\rdbms\admin\dbmsobtk.sql
-> SQL>@C:\oraclexe\app\oracle\product\11.2.0\server\rdbms\admin\prvtobtk.plb
 
--사용자계정(예를 들어, scott)에 암호화 패키지 접근 권한 부여
SQL>GRANT EXECUTE ON DBMS_OBFUSCATION_TOOLKIT TO scott;

 

scott 을 계정아이뒤로 바꾸어 설정

 

--암호화 코드 --

CREATE OR REPLACE FUNCTION encrypt(
	str VARCHAR2
	,hash VARCHAR2
)
RETURN VARCHAR2
IS
	result VARCHAR2(2000);
	p NUMBER := ((FLOOR(LENGTH(str)/8+0.9))*8);
BEGIN
	DBMS_OBFUSCATION_TOOLKIT.DESEncrypt(
		input_string=>RPAD(str, p)
		,key_string=>RPAD(hash, 8, '#')
		,encrypted_string=>result
	);
	RETURN result;
END;