MSSQLSERVER_17832MSSQLSERVER_17832

이 항목 적용 대상: 예SQL Server없습니다Azure SQL 데이터베이스없습니다Azure SQL 데이터 웨어하우스 없습니다 병렬 데이터 웨어하우스THIS TOPIC APPLIES TO: yesSQL ServernoAzure SQL DatabasenoAzure SQL Data Warehouse noParallel Data Warehouse

세부 정보Details

제품 이름Product Name SQL ServerSQL Server
이벤트 IDEvent ID 1783217832
이벤트 원본Event Source MSSQLSERVERMSSQLSERVER
구성 요소Component SQLEngineSQLEngine
심볼 이름Symbolic Name SRV_BAD_LOGIN_PKTSRV_BAD_LOGIN_PKT
메시지 텍스트Message Text 연결을 여는 데 사용한 로그인 패킷이 구조적으로 잘못되었습니다. 연결이 닫혔습니다.The login packet used to open the connection is structurally invalid; the connection has been closed. 클라이언트 라이브러리 공급업체에 문의하십시오.%.lsPlease contact the vendor of the client library.%.ls

설명Explanation

SQL ServerSQL Server 컴퓨터에서 클라이언트 로그인 패킷을 처리하지 못했습니다.The SQL ServerSQL Server computer was unable to process the client login packet. 이 문제는 패킷이 잘못 만들어졌거나 전송 중에 손상되었기 때문에 발생할 수 있습니다.This may be because the packet was created improperly or because the packet was damaged during transmission. 또한 SQL ServerSQL Server 컴퓨터의 구성 때문에 이 문제가 발생할 수도 있습니다.It can also be caused by the configuration of the SQL ServerSQL Server computer. 나열된 IP 주소는 클라이언트 컴퓨터의 주소입니다.The IP address listed is the address of the client computer.

추가 정보More Information

Kerberos 환경에서 Windows 인증을 사용할 경우 클라이언트는 PAC(Privilege Attribute Certificate)가 포함된 Kerberos 티켓을 수신합니다.When using Windows Authentication in a Kerberos environment, a client receives a Kerberos ticket that contains a Privilege Attribute Certificate (PAC). PAC에는 사용자가 속한 그룹, 사용자가 가지고 있는 권한, 사용자에게 적용되는 정책 등 다양한 유형의 인증 데이터가 포함되어 있습니다.The PAC contains various types of authorization data including groups that the user is a member of, rights the user has, and what policies apply to the user. 클라이언트가 Kerberos 티켓을 수신하면 PAC에 포함된 정보가 사용자의 액세스 토큰을 만드는 데 사용됩니다.When the client receives the Kerberos ticket, the information contained in the PAC is used to generate the user's access token. 클라이언트는 이 토큰을 로그인 패킷의 일부로 SQL ServerSQL Server 컴퓨터에 제공합니다.The client presents the token to the SQL ServerSQL Server computer as part of the login packet.

패킷이 잘못 만들어졌거나 전송 중에 손상된 경우 SQL ServerSQL Server는 문제에 대한 추가 정보를 제공할 수 없습니다.If the token was improperly created or damaged during transmission, SQL ServerSQL Server cannot offer additional information about the problem.

사용자가 여러 그룹의 멤버이거나 많은 정책을 사용하는 경우 이러한 것들을 모두 나열하기 위해 토큰이 정상보다 커질 수 있습니다.When the user is a member of many groups or has many policies, the token may grow larger than normal to list them all. 토큰이 서버 컴퓨터의 MaxTokenSize 값보다 커질 경우 클라이언트가 GNE(일반 네트워크 오류)에 연결하지 못하고 오류 17832가 발생할 수 있습니다.If the token grows larger than the MaxTokenSize value of the server computer, the client fails to connect with a General Network Error (GNE) and error 17832 can occur. 이 문제는 그룹이나 정책이 많은 일부 사용자에게만 영향을 줄 수 있습니다.This problem may affect only some users: users with many groups or policies. 서버 컴퓨터의 MaxTokenSize 값에 문제가 있을 경우 SQL ServerSQL Server 오류 로그의 오류 17832와 함께 상태가 9인 오류가 표시됩니다.When the problem is the MaxTokenSize value of the server computer, error 17832 in the SQL ServerSQL Server error log will be accompanied by an error with state 9. Kerberos 및 MaxTokenSize에 대한 자세한 내용은 KB327825를 참조하세요.For additional details about the Kerberos and MaxTokenSize, see KB327825.

사용자 동작User Action

이 문제를 해결하려면 서버 컴퓨터의 MaxTokenSize 값을 조직에 있는 모든 사용자의 토큰 중 가장 큰 토큰을 포함할 수 있는 충분한 크기로 늘립니다.To resolve this problem, increase the MaxTokenSize value of the server computer, to a size large enough to contain the largest token of any user in your organization. 조직에 맞는 올바른 토큰 크기를 조사하려면 Tokensz 응용 프로그램을 사용합니다.To research the correct token size for your organization, consider using the Tokensz application.

주의

레지스트리를 올바르게 편집하지 않으면 시스템을 심각하게 손상시킬 수 있습니다.Incorrectly editing the registry can severely damage your system. 따라서 레지스트리를 변경하기 전에 컴퓨터의 중요한 데이터는 백업해 두는 것이 좋습니다.Before making changes to the registry, we recommend that you back up any valued data on the computer.

서버 컴퓨터에서 MaxTokenSize 를 변경하려면To change the MaxTokenSize on the server computer

  1. 시작 메뉴에서 실행을 클릭합니다.On the Start menu, click Run.

  2. regedit를 입력한 다음 확인을 클릭합니다.Type regedit, and then click OK. 사용자 계정 컨트롤 대화 상자가 열리면 계속을 클릭합니다.(If the User Account Control dialog box appears, click Continue.)

  3. HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\Lsa\Kerberos\Parameters로 이동합니다.Navigate to HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\Lsa\Kerberos\Parameters.

  4. MaxTokenSize 매개 변수가 없으면 Parameters를 마우스 오른쪽 단추로 클릭하고 새로 만들기를 가리킨 다음 DWORD(32비트) 값을 클릭합니다.If the MaxTokenSize parameter is not present, right-click Parameters, point to New, and then click DWORD (32-bit) Value. 이 레지스트리 항목의 이름을 MaxTokenSize로 지정합니다.Name the registry entry MaxTokenSize.

  5. MaxTokenSize를 마우스 오른쪽 단추를 클릭한 다음 수정을 클릭합니다.Right-click MaxTokenSize, and then click Modify.

  6. 값 데이터 상자에 원하는 MaxTokenSize 값을 입력합니다.In the Value data box type the desired MaxTokenSize value.

    참고

    권장되는 최대 토큰 크기는 16진수 값 ffff(10진수 값 65535)입니다.Hexadecimal value ffff (decimal value 65535) is the maximum recommended token size. 이 값을 제공하면 문제가 해결될 수도 있지만 컴퓨터 성능이 저하될 수 있습니다.Providing this value would probably solve the problem, but could have negative computer-wide effects with regard to performance. 조직에 있는 모든 사용자의 토큰 중 가장 큰 토큰을 허용하는 최소 MaxTokenSize 값을 설정하고 이 값을 입력하는 것이 좋습니다.We recommend that you establish the minimum MaxTokenSize value that allows for the largest token of any user in your organization and enter that value.

  7. 확인을 클릭합니다.Click OK.

  8. 레지스트리 편집기를 닫습니다.Close Registry Editor.

  9. 컴퓨터를 다시 시작합니다.Restart the computer.