bestsource

SQL Server + SQL Server 인증 + 오류에 로그인할 수 없음: 18456

bestsource 2023. 4. 29. 09:32
반응형

SQL Server + SQL Server 인증 + 오류에 로그인할 수 없음: 18456

localhost\sql2008 Server에 로그인 계정을 만들었습니다(예:사용자123)

데이터베이스에 매핑됨(기본값)

SQL Server의 인증 모드가 둘 다(윈도우즈 및 SQL)로 설정됨

그러나 SQL Server 로그인이 실패하고 다음 메시지가 표시됨(User123의 경우)

참고: 사용자 이름/암호가 올바르게 입력되었는지 여러 번 확인했습니다.

오류 세부 정보:

사용자 'User123'(Net)에 대해 로그인하지 못했습니다.SqlClient 데이터 공급자)

서버 이름: localhost\sql2008 오류 번호: 18456 심각도: 14 상태: 1 회선 번호: 65536

이것에 대한 어떤 도움이라도 주세요.

SQL Server 인증을 사용하도록 설정해야 합니다.

  1. Object Explorer에서 서버를 마우스 오른쪽 단추로 클릭하고 "속성"을 클릭합니다.

DBMS 등록 정보 대화상자

  1. "서버 등록 정보" 창에서 왼쪽 페이지 목록에서 "보안"을 누릅니다."서버 인증확인"에서 "SQL Server and Windows 인증확인 모드" 라디오 선택사항을 선택합니다.

SQL Server 인증 대화 상자

  1. SQLEXPRESS 서비스를 다시 시작합니다.

기본적으로 로그인 실패 오류 메시지는 로그인 자격 증명의 불일치로 인해 서버에 의해 클라이언트 사용자 연결이 거부되었을 뿐입니다.첫 번째로 확인할 수 있는 작업은 해당 사용자가 해당 SQL Server 인스턴스 및 관련 데이터베이스에 대한 관련 권한을 가지고 있는지 확인하는 것입니다.필요한 권한이 설정되지 않은 경우 해당 사용자 로그인에 관련 권한을 부여하여 문제를 해결해야 합니다.

해당 사용자가 데이터베이스 및 서버에 대해 관련 권한을 부여한 경우 서버에서 해당 로그인에 대한 자격 증명 문제가 발생하면 SQL Server에 인증을 다시 부여하지 못하게 되지만 클라이언트에는 다음 오류 메시지가 표시됩니다.

Msg 18456, Level 14, State 1, Server <ServerName>, Line 1
Login failed for user '<Name>'

이제 오류 메시지를 보면 수준 및 상태를 이해하는 것은 설명할 수 없는 것처럼 느껴집니다.기본적으로 운영 체제 오류는 로그인 인증 시 문제의 특성에 관계없이 '상태'로 표시됩니다.따라서 이 오류의 심각도 및 상태에 대한 자세한 내용을 보려면 관련 SQL Server 인스턴스 오류 로그도 살펴봐야 합니다.로그에서 다음과 같은 해당 항목을 검색할 수 있습니다.

2007-05-17 00:12:00.34 Logon     Error: 18456, Severity: 14, State: 8.
or

2007-05-17 00:12:00.34 Logon     Login failed for user '<user name>'.

위에서 정의한 대로 오류의 심각도 및 상태 열은 문제의 원인에 대한 정확한 반영을 찾는 데 중요합니다.위의 오류에서 상태 번호 8은 암호 불일치로 인한 인증 실패를 나타냅니다.온라인 서적 참조: 기본적으로 심각도가 19보다 낮은 사용자 정의 메시지는 발생할 때 Microsoft Windows 응용 프로그램 로그로 전송되지 않습니다.따라서 심각도가 19보다 낮은 사용자 정의 메시지는 SQL Server 에이전트 알림을 트리거하지 않습니다.

SQL Server Protocols(개발팀)의 Program Manager인 Sung Lee는 오류 상태 설명에 대한 자세한 내용을 설명했습니다.일반적인 오류 상태와 해당 설명은 다음 표에 나와 있습니다.

ERROR STATE       ERROR DESCRIPTION
------------------------------------------------------------------------------
2 and 5           Invalid userid
6                 Attempt to use a Windows login name with SQL Authentication
7                 Login disabled and password mismatch
8                 Password mismatch
9                 Invalid password
11 and 12         Valid login but server access failure
13                SQL Server service paused
18                Change password required


Well I'm not finished yet, what would you do in case of error:

2007-05-17 00:12:00.34 Logon     Login failed for user '<user name>'.

해당 SQL 서버 인스턴스의 오류 로그에서 정의된 심각도 또는 상태 수준이 없음을 알 수 있습니다.따라서 다음 문제 해결 옵션은 이벤트 뷰어의 보안 로그를 확인하는 것입니다 [스크린샷이 누락되었기 때문에 편집].

idea, 이벤트 로그에서 흥미로운 이벤트를 찾습니다.

저도 같은 문제가 있었지만, 제 문제는 서버 인증을 "SQL Server and Windows Authentication mode"(사용자가 가지고 있던 SQL Server and Windows Authentication mode)로 설정하지 않았기 때문입니다. 질문에 누군가 누락되었을 경우를 대비하여 여기에 언급하고 싶습니다.

다음을 통해 액세스할 수 있습니다.

  • 인스턴스(IE SQL Server 2008)에서 마우스 오른쪽 버튼을 클릭합니다.
  • 속성을 선택합니다.
  • "보안" 옵션을 선택
  • "서버 인증확인"을 "SQL Server 및 Windows 인증확인 모드"로 변경
  • SQL Server 서비스를 다시 시작합니다.
    • 인스턴스에서 마우스 오른쪽 버튼 클릭
    • 다시 시작을 클릭합니다.

다음을 통해 액세스할 수 있습니다.

Right click on instance (IE SQLServer2008)
Select "Properties"
Select "Security" option
Change "Server authentication" to "SQL Server and Windows Authentication mode"
Restart the SQLServer service
    Right click on instance
    Click "Restart"

이것을 읽는 다른 사람을 위해:2012년 SQL Server에서도 작동했습니다.감사해요.

"SQL Server and Windows Authentication(SQL 서버 및 Windows 인증) 모드"를 사용 가능으로 설정한 후(사용 방법에 대한 위의 답변을 확인) 다음으로 이동합니다.

  1. 컴퓨터 관리(시작 메뉴)
  2. 서비스 및 애플리케이션
  3. SQL Server 구성 관리자
  4. SQL Server 네트워크 구성
  5. MSSQL SERVER 프로토콜
  6. TCP/IP를 마우스 오른쪽 버튼으로 클릭하고 활성화합니다.

마지막으로 SQL Server를 다시 시작합니다.

SQL 서버를 재시작하지 않으면 어떤 솔루션도 작동하지 않습니다.

» SQLServerManager13.msc

그럼인에서.SQL Server Services select 션선택섹SQL Server다시 시작합니다.

또는

에서 서버를 선택합니다.Object Explorer의 메뉴.MS SQL Server Management Studio.

Right click그리고restart

오랜 시간을 들여 모든 페이지에 대한 모든 제안을 시도한 후, 이것은 제 문제를 해결했습니다.

[서버명] > 보안 > 로그인 > [로그인명] > 우클릭 > 속성 > 상태 > SQL Server 인증

확인란이 있습니다.Login is locked out그것이 확인되어 로그인할 수 없습니다.확인란을 선택하지 않아 문제가 해결되었습니다.

이 문제에 대한 올바른 해결 방법은 SQL Server에 대해 SQL Server 인증이 설정되어 있는지 확인하는 것입니다.

이 연결 문자열을 사용해 보십시오.

Server=ServerName;Database=DbName;Trusted_Connection=SSPI;MultipleActiveResultSets=true;TrustServerCertificate=true

언급URL : https://stackoverflow.com/questions/2474839/unable-to-login-to-sql-server-sql-server-authentication-error-18456

반응형