SQL Server 2005의 인스턴스에 원격 연결을 만들 때 Kerberos 인증을 사용하고 있는지 확인하는 방법

기술 자료 번역 기술 자료 번역
기술 자료: 909801 - 이 문서가 적용되는 제품 보기.
모두 확대 | 모두 축소

이 페이지에서

소개

이 문서에서는 Microsoft SQL Server 2005의 인스턴스에 원격 연결을 만들 때 Microsoft Windows 인증 방법으로 Kerberos 인증을 사용하고 있는지 확인하는 방법을 설명합니다.

추가 정보

SQL Server 2005는 SQL 인증 대신 Windows 통합 인증을 사용할 때 Windows SSPI(보안 지원 공급자 인터페이스)를 통해 간접적으로 Kerberos 인증을 지원합니다. 그러나 SQL Server에서 SSPI를 통해 사용할 인증 프로토콜을 협상할 수 있는 경우 SQL Server에서는 경우에 따라 Kerberos 인증만 사용됩니다. SQL Server에서 Kerberos 인증을 사용할 수 없는 경우 Windows는 NTLM 인증을 사용합니다. 보안상의 이유로 NTLM 인증 대신 Kerberos 인증을 사용하는 것이 좋습니다. 관리자와 사용자는 원격 연결에 Kerberos 인증을 사용하고 있는지 확인하는 방법을 알고 있어야 합니다.

Kerberos 인증을 사용하려면 다음 조건이 모두 충족되는지 확인해야 합니다.
  • 서버 컴퓨터와 클라이언트 컴퓨터가 모두 같은 Windows 도메인이나 트러스트된 도메인의 구성원이어야 합니다.
  • 서버의 SPN(서비스 사용자 이름)이 Active Directory 디렉터리 서비스에 등록되어 있어야 합니다.
  • SQL Server 2005의 인스턴스에서 TCP/IP 프로토콜을 사용할 수 있어야 합니다.
  • 클라이언트가 TCP/IP 프로토콜을 사용하여 SQL Server 2005의 인스턴스에 연결해야 합니다. 예를 들어, 클라이언트의 프로토콜 순서 맨 위에 TCP/IP 프로토콜을 배치할 수 있습니다. 또는 연결 문자열에 "tcp:" 접두사를 추가하여 연결에 TCP/IP 프로토콜이 사용되도록 지정할 수 있습니다.

도메인에 SPN을 등록하는 방법

SQL Server 서비스의 SPN을 등록할 때 기본적으로 서버 인스턴스 서비스를 시작한 Windows 계정과 SPN 사이에 매핑을 만듭니다.

클라이언트가 서버 인스턴스에 연결하기 위해서는 등록된 SPN을 사용해야 하므로 SPN을 등록해야 합니다. SPN은 서버의 컴퓨터 이름과 TCP/IP 포트로 구성됩니다. SPN을 등록하지 않으면 SSPI가 SPN과 연결된 계정을 확인할 수 없으므로 Kerberos 인증이 사용되지 않습니다.

SQL Server가 로컬 시스템 계정이나 도메인 관리자 계정에서 실행 중인 경우 인스턴스가 시작될 때 다음과 같은 형식으로 SPN이 자동으로 등록됩니다.
MSSQLSvc/FQDN:tcpport
참고 FQDN은 서버의 정규화된 도메인 이름이고 tcpport는 TCP/IP 포트 번호입니다.

TCP 포트 번호가 SPN에 포함되어 있으므로 SQL Server에서 사용자가 Kerberos 인증을 사용하여 연결할 수 있도록 TCP/IP 프로토콜을 활성화해야 합니다. 이 규칙은 클러스터된 구성에도 적용됩니다. 또한 인스턴스가 시작될 때 SPN이 자동으로 등록된 경우 인스턴스가 중지되면 SPN도 자동으로 등록 취소됩니다.

SPN을 등록하는 데 필요한 사용 권한이 도메인 관리자 계정이나 로컬 시스템 계정에만 있으므로 SQL Server 서비스가 관리자가 아닌 계정에서 시작되면 SQL Server에서 인스턴스에 대한 SPN을 등록할 수 없습니다. 이 문제로 인해 인스턴스가 시작하지 못하지는 않지만 Windows 이벤트 로그의 응용 프로그램 로그에 다음과 유사한 내용의 메시지가 기록됩니다.

이벤트 종류: 정보
이벤트 원본: MSSQL$InstanceName
이벤트 범주: (2)
이벤트 ID: 26037
날짜: Date
시간: 시간
사용자: N/A
컴퓨터: ComputerName
설명:
SQL 네트워크 인터페이스 라이브러리가 SQL Server 서비스에 대한 SPN(서비스 사용자 이름)을 등록할 수 없습니다. 오류: 0x54b. SPN을 등록하지 못하면 통합 인증이 Kerberos 대신 NTLM으로 대체될 수 있습니다. 이 메시지는 정보 제공용이며 인증 정책에서 Kerberos 인증을 요구할 때만 추가 작업이 필요합니다.
자세한 정보는 http://go.microsoft.com/fwlink/events.asp에 있는 도움말 및 지원 센터를 참조하십시오.

이 메시지가 기록되면 Kerberos 인증을 사용할 도메인 관리자 계정에서 인스턴스에 대한 SPN을 수동으로 등록해야 합니다. SPN을 등록하려면 Microsoft Windows 2000 Server Resource Kit에 포함된 SetSPN.exe 도구를 사용하면 됩니다. 이 도구는 Microsoft Windows Server 2003 지원 도구에도 포함되어 있습니다. Windows Server 2003 지원 도구는 Microsoft Windows Server 2003 서비스 팩1(SP1)에 포함되어 있습니다.

Exchange Server 2003 서비스 팩 1 지원 도구를 구하는 방법에 대한 자세한 내용은 Microsoft 기술 자료의 다음 문서를 참조하십시오.
892777 Windows Server 2003 서비스 팩 1 지원 도구
아래와 유사한 명령을 사용하여 인스턴스에 대한 SPN를 등록할 수 있습니다.
SetSPN ?A MSSQLSvc/<ComputerName>.<DomainName>:1433 <AccountName>
참고 SPN이 이미 있는 경우 새 SPN을 등록하려면 먼저 기존 SPN을 삭제해야 합니다. 계정 매핑이 변경된 경우 이 작업을 수행해야 할 수 있습니다. 기존 SPN을 삭제하려면 -D 스위치와 함께 SetSPN.exe 도구를 사용하면 됩니다.

Kerberos 인증을 사용하고 있는지 확인하는 방법

SQL Server 2005의 인스턴스에 연결한 후 SQL Server Management Studio에서 다음 Transact-SQL 문을 실행합니다.
select auth_scheme from sys.dm_exec_connections where session_id=@@spid
SQL Server에서 Kerberos 인증을 사용하는 경우 "KERBEROS" 문자열이 결과 창의 auth_scheme 열에 나타납니다.

참조

자세한 내용은 Microsoft SQL Server 2005 온라인 설명서에서 다음 항목을 참조하십시오.
  • 서비스 사용자 이름 등록
  • 방법: 서버 클러스터의 SQL Server 가상 서버에 Kerberos 인증 활성화




Microsoft 제품 관련 기술 전문가들과 온라인으로 정보를 교환하시려면 Microsoft 뉴스 그룹에 참여하시기 바랍니다.

속성

기술 자료: 909801 - 마지막 검토: 2006년 1월 13일 금요일 - 수정: 1.0
본 문서의 정보는 다음의 제품에 적용됩니다.
  • Microsoft SQL Server 2005 Standard Edition
  • Microsoft SQL Server 2005 Developer Edition
  • Microsoft SQL Server 2005 Enterprise Edition
  • Microsoft SQL Server 2005 Workgroup Edition
  • Microsoft SQL Server 2005 Express Edition
키워드:?
kbinfo kbsql2005connect KB909801

피드백 보내기

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com