Microsoft MVP성태의 닷넷 이야기
글쓴 사람
정성태 (techsharer at outlook.com)
홈페이지
첨부 파일
 
(연관된 글이 1개 있습니다.)

SQL 서버 로그인 시 localhost는 되고, 127.0.0.1로는 안 되는 문제

localhost는 접속이 잘 되고,

sql_integ_localhost_only_1.png

127.0.0.1로 접속을 하면 안 될 수 있습니다.

sql_integ_localhost_only_2.png

Test connection failed because of an error in initializing provider. Login failed. The login is from an untrusted domain and cannot be used with Integrated authentication.


왜냐하면, 윈도우 통합 인증("Use Windows NT Integrated security")을 사용했기 때문입니다. "127.0.0.1" IP 주소로 로그인을 하려면 SQL 서버 로그인 인증("Use a specific user name and password") 옵션을 사용해야 합니다.

sql_integ_localhost_only_3.png




참고로, .NET에서 코딩할 때는 appsettings.json에 다음과 같이 연결 문자열을 지정하게 될 것입니다.

{
  ...[생략]...

  "ConnectionStrings": {
    "BloggingDatabase": "Server=127.0.0.1;Database=Blogging;Trusted_Connection=True;"
  }
}

그런 경우 다음과 같은 식으로 예외가 발생합니다.

Microsoft.Data.SqlClient.SqlException
  HResult=0x80131904
  Message=Login failed. The login is from an untrusted domain and cannot be used with Integrated authentication.
  Source=Core Microsoft SqlClient Data Provider
  StackTrace:
   at Microsoft.Data.SqlClient.SqlInternalConnection.OnError(SqlException exception, Boolean breakConnection, Action`1 wrapCloseInAction)
   ...[생략]...
   at Microsoft.EntityFrameworkCore.Storage.RelationalDatabaseCreator.EnsureCreated()
   at Microsoft.EntityFrameworkCore.Infrastructure.DatabaseFacade.EnsureCreated()
   at Program.<Main>$(String[] args) in D:\workshop2\JenniferV\docker_sample\DockerNetSamples\razor_60_sample\Program.cs:line 30

  This exception was originally thrown at this call stack:
    [External Code]
    Program.<Main>$(string[]) in Program.cs

따라서, SQL Server 인증을 사용하는 연결 문자열로 바꿔야 합니다.

"ConnectionStrings": {
    "BloggingDatabase": "Server=127.0.0.1;Database=Blogging;User Id=netnet2022; Password=...[생략]...;"
  }

그런데, 굳이 "localhost" 대신 "127.0.0.1"로 사용해야 할 이유가 있을까요? ^^




[이 글에 대해서 여러분들과 의견을 공유하고 싶습니다. 틀리거나 미흡한 부분 또는 의문 사항이 있으시면 언제든 댓글 남겨주십시오.]

[연관 글]






[최초 등록일: ]
[최종 수정일: 1/28/2022]

Creative Commons License
이 저작물은 크리에이티브 커먼즈 코리아 저작자표시-비영리-변경금지 2.0 대한민국 라이센스에 따라 이용하실 수 있습니다.
by SeongTae Jeong, mailto:techsharer at outlook.com

비밀번호

댓글 작성자
 




... 106  107  108  109  110  111  112  113  114  115  116  117  118  [119]  120  ...
NoWriterDateCnt.TitleFile(s)
11040정성태9/10/201631023.NET Framework: 604. C# Windows Forms - Drag & Drop 예제 코드 [2]파일 다운로드1
11039정성태9/9/201625564오류 유형: 355. Visual Studio 빌드 오류 - error CS0122: '__ComObject' is inaccessible due to its protection level
11038정성태9/9/201629354VC++: 99. 서로 다른 프로세스에서 WM_DROPFILES 메시지를 전송하는 방법파일 다운로드1
11037정성태9/8/201632607.NET Framework: 603. socket - shutdown 호출이 필요한 사례파일 다운로드1
11036정성태8/29/201627620개발 환경 구성: 297. 소스 코드가 없는 닷넷 어셈블리를 디버깅할 때 지역 변숫값을 확인하는 방법
11035정성태8/29/201623497오류 유형: 354. .NET Reflector - PDB 생성 화면에서 "Clear Store"를 하면 "Index and length must refer to a location within the string" 예외 발생
11034정성태8/25/201627563개발 환경 구성: 296. .NET Core 프로젝트를 NuGet Gallery에 배포하는 방법 [2]
11033정성태8/24/201625628오류 유형: 353. coreclr 빌드 시 error C3249: illegal statement or sub-expression for 'constexpr' function
11032정성태8/23/201624804개발 환경 구성: 295. 최신의 Visual C++ 컴파일러 도구를 사용하는 방법 [1]
11031정성태8/23/201620456오류 유형: 352. Error encountered while pushing to the remote repository: Response status code does not indicate success: 403 (Forbidden).
11030정성태8/23/201624521VS.NET IDE: 111. Team Explorer - 추가한 Git Remote 저장소가 Branch에 보이지 않는 경우
11029정성태8/18/201632155.NET Framework: 602. Process.Start의 cmd.exe에서 stdin만 redirect 하는 방법 [1]파일 다운로드1
11028정성태8/15/201623899오류 유형: 351. Octave 설치 시 JRE 경로 문제
11027정성태8/15/201626449.NET Framework: 601. ElementHost 컨트롤의 메모리 누수 현상
11026정성태8/13/201627658Math: 19. 행렬 연산으로 본 해밍코드
11025정성태8/12/201627165개발 환경 구성: 294. .NET Core 프로젝트에서 "Copy to Output Directory" 처리 [1]
11024정성태8/12/201625618오류 유형: 350. "nProtect GameMon" 실행 중에는 Visual Studio 디버깅이 안됩니다! [1]
11023정성태8/10/201627386개발 환경 구성: 293. Azure 구독 후 PaaS 서비스 만들어 보기
11022정성태8/10/201627837개발 환경 구성: 292. Azure Cloud Service 배포시 사용자 정의 작업을 추가하는 방법
11021정성태8/10/201625261오류 유형: 349. System.Runtime.Remoting.RemotingException - Type '..., ..., Version=..., Culture=neutral, PublicKeyToken=null' is not registered for activation [2]
11020정성태8/10/201628136VC++: 98. 원본과 대상 버퍼가 같은 경우 memcpy, wmemcpy 주의점
11019정성태8/10/201644978기타: 60. 도서: 시작하세요! C# 6.0 프로그래밍: 기본 문법부터 실전 예제까지 (2쇄 정오표)
11018정성태8/9/201628739.NET Framework: 600. 단일 메서드 내에서의 할당으로 알아보는 자바와 닷넷의 GC 차이점 [1]
11017정성태8/9/201629625웹: 33. HTTP 쿠키에 한글 값을 설정하는 방법
11016정성태8/7/201627982개발 환경 구성: 291. Windows Server Containers 소개
11015정성태8/7/201626595오류 유형: 348. Windows Server 2016 TP5에서 Windows Containers의 docker run 실행 시 encountered an error during Start failed in Win32
... 106  107  108  109  110  111  112  113  114  115  116  117  118  [119]  120  ...