문서유형ㅣ기술정보
분야ㅣ패치/업그레이드
적용제품버전ㅣTibero 6
문서번호ㅣTPATI003
개요
Tibero6의 경우 계정의 패스워드 암호화 방식이 기본적으로 MD5이며, 고객사의 요청에 따라 MD5에서 SHA256 방식으로 변경해야 하는 경우가 존재합니다.
Tibero7의 경우 패스워드 암호화 방식의 기본값이 SHA256입니다.
암호화 방식 변경의 경우 패치가 적용된다고 해서 무조건 변경되는 것은 아니며, 패치 태스크에 추가적인 검토가 필요합니다.
또한 Tibero6에서 Tibero7으로 업그레이드하는 경우 암호화 방식의 기본값이 변경되므로 이에 대한 검토가 필요합니다.
방법
아래 패치 적용 전에는 _CRYPTO_LEVEL 파라미터가 존재하지 않습니다.
209586c - SHA256 비밀번호 암호화 기능 안정화 및 패치
1. 신규 설치 시
.TIP 파일에 _CRYPTO_LEVEL 파라미터 설정이 필요합니다.
_CRYPTO_LEVEL = 0 (MD5)
_CRYPTO_LEVEL = 1 (SHA256)
2. 바이너리 패치 시
1) MD5 → SHA256stem.sql 수행
_CRYPTO_LEVEL = 1 DB 재기동 tbsql sys/tibero sys외 모든 유저 패스워드 재생성alter user tibero identified by tmax
2) SHA256 → MD5
@$TB_HOME/scripts/crypto_system_zero.sql 수행 _CRYPTO_LEVEL = 0 DB 재기동 tbsql sys/tibero 접속 sys 외 모든 유저 패스워드 재생성 alter user tibero identified by tmax
3) MD5 -> MD5
@$TB_HOME/scripts/systbl_crypto_system.sql 수행
해당 테이블이 직접적으로 사용되지는 않으나 dba_roles 뷰와 관련하여 해당 테이블이 필요합니다.
해당 테이블이 생성되지 않은 경우 계정 패스워드 변경 시 오류가 발생할 수 있습니다.
4) SHA256 -> SHA256
sys 계정에서 아래 SQL을 수행합니다.
해당 작업은 _shadow_password 테이블의 system 속성을 잠시 제거한 후 user_id 컬럼에 unique 속성을 부여하는 과정입니다.
delete from _shadow_password a where rowid > (select min(rowid) from _shadow_password b where b.user_id = a.user_id); update sys._dd_obj set flags = 0 where owner_id = 0 and name = '_SHADOW_PASSWORD'; commit; alter system flush ddc all; alter table sys._shadow_password add unique (user_id); update sys._dd_obj set flags = 4 where owner_id = 0 and name = '_SHADOW_PASSWORD'; commit; alter system flush ddc all;