티스토리 뷰
728x90
반응형
오라클 NTS(Windows 인증) 설정 및 문제 해결 정리
지금까지 진행한 내용을 바탕으로 오라클 19c 환경에서 원격 NTS 인증을 설정하고 발생했던 오류를 해결하는 방법을 단계별로 정리해 드리겠습니다.
NTS 인증을 사용하려면 데이터베이스 인스턴스 설정과 DB 계정 설정이 모두 완료되어야 합니다.
1단계: NTS 인증 활성화 (인스턴스 매개변수 설정)
NTS 인증에 필요한 인스턴스 매개변수를 확인하고, 원격 접속이 가능하도록 설정합니다.
| 매개변수 | 현재 값 | 목표 값 | 설명 |
| OS_AUTHENT_PREFIX | OPS$ | OPS$ | Windows 사용자 이름 앞에 붙일 접두사입니다. (기본값) |
| REMOTE_OS_AUTHENT | FALSE | TRUE | 가장 중요한 부분입니다. 원격 접속을 허용합니다. |
조치 단계
- CDB 루트 접속: REMOTE_OS_AUTHENT는 CDB 루트에서만 변경 가능하므로, SYSDBA 권한으로 CDB$ROOT에 접속합니다.
-
SQL
CONNECT sys/SYS계정_비밀번호@CDB서비스이름 AS SYSDBA ALTER SESSION SET CONTAINER = CDB$ROOT; - 매개변수 변경: REMOTE_OS_AUTHENT 값을 TRUE로 변경하고 SPFILE에 저장합니다.
-
SQL
ALTER SYSTEM SET REMOTE_OS_AUTHENT=TRUE SCOPE=SPFILE; - 데이터베이스 재시작: 변경 사항을 적용하기 위해 데이터베이스를 재시작합니다.
- SQL Plus 방식 (권장):
-
SQL
SHUTDOWN IMMEDIATE; STARTUP; - 윈도우 서비스 방식 (대안): 윈도우 **services.msc**에서 해당 오라클 서비스(OracleServiceSID)를 **중지(Stop)**했다가 **시작(Start)**합니다.
2단계: DB 계정 생성 (매핑)
REMOTE_OS_AUTHENT가 TRUE로 설정된 후, Windows 사용자 계정을 데이터베이스 계정과 매핑합니다.
조치 단계
- PDB 접속: 해당 PDB로 접속합니다.
-
SQL
ALTER SESSION SET CONTAINER = PDB_NAME; -- PDB 이름으로 변경 - NTS 계정 생성/확인: Windows 사용자 이름(NETAND\GIRTOWIN)과 OS_AUTHENT_PREFIX(OPS$)를 조합하여 계정을 대문자로 생성하고 IDENTIFIED EXTERNALLY를 지정합니다.(CREATE USER 구문에서 큰따옴표를 사용하는 것은 이름에 특수문자(\)나 소문자가 포함될 때 표준입니다.)
-
SQL
-- 예시: DB에 계정이 존재하는지 확인 SELECT USERNAME, ACCOUNT_STATUS FROM DBA_USERS WHERE USERNAME = 'OPS$NETAND\GIRTOWIN'; -- 만약 계정이 없다면, 생성 CREATE USER "OPS$NETAND\GIRTOWIN" IDENTIFIED EXTERNALLY; GRANT CREATE SESSION, CONNECT TO "OPS$NETAND\GIRTOWIN";
3단계: 감사 설정 확인 및 활용 (선택 사항)
NTS 로그인 실패 기록을 확인하는 방법을 재확인합니다.
| 구분 | 명령어 |
| 감사 설정 | AUDIT SESSION WHENEVER NOT SUCCESSFUL; |
| 로그인 실패 조회 | UNIFIED_AUDIT_TRAIL 뷰를 사용 (19c 기본 설정) |
| 조회 쿼리 | sql SELECT DBUSERNAME, EVENT_TIMESTAMP, RETURN_CODE, ACTION_NAME FROM UNIFIED_AUDIT_TRAIL WHERE ACTION_NAME = 'LOGON' AND RETURN_CODE != 0 ORDER BY EVENT_TIMESTAMP DESC; |
💡 발생 오류 요약
- ORA-02065 (ALTER SYSTEM AUDIT_TRAIL 오류): AUDIT_TRAIL은 비동적 매개변수이므로, 변경 후 재시작이 필수입니다.
- ORA-65040 (REMOTE_OS_AUTHENT 오류): 이 매개변수는 CDB$ROOT 컨테이너에서만 변경할 수 있는 인스턴스 레벨 매개변수입니다.
- RETURNCODE 1017 (로그인 실패): 가장 큰 원인은 REMOTE_OS_AUTHENT=FALSE 설정으로 인해 원격 NTS 접속이 거부되었기 때문입니다.
728x90
댓글
반응형
공지사항
최근에 올라온 글
최근에 달린 댓글
- Total
- Today
- Yesterday
링크
TAG
- OpenSource
- 울릉도
- 블루버블다이브팀
- Linux
- 암호화
- 디자인패턴
- ReFS
- C++
- 다이빙
- 서귀포블루버블
- 제주도
- Thread
- 윈도우
- DLL
- ip
- Windows
- C
- 스쿠버다이빙
- 양파다이브
- 블루버블
- 패턴
- 성산블루버블
- 블루버블다이빙팀
- C#
- RSA
- 리눅스
- Build
- 현포다이브
- PowerShell
- 서귀포
| 일 | 월 | 화 | 수 | 목 | 금 | 토 |
|---|---|---|---|---|---|---|
| 1 | 2 | 3 | ||||
| 4 | 5 | 6 | 7 | 8 | 9 | 10 |
| 11 | 12 | 13 | 14 | 15 | 16 | 17 |
| 18 | 19 | 20 | 21 | 22 | 23 | 24 |
| 25 | 26 | 27 | 28 | 29 | 30 | 31 |
글 보관함