๊ด€๋ฆฌ ๋ฉ”๋‰ด

DBA

ASP.NET MVC์—์„œ ๋ฐœ์ƒํ•˜๋Š” SocketException, IOException, WebException ๋ณธ๋ฌธ

[3] Development/MVC(ASP.NET with C#)

ASP.NET MVC์—์„œ ๋ฐœ์ƒํ•˜๋Š” SocketException, IOException, WebException

์ฝ”๋ณผ 2025. 4. 10. 15:25
728x90
๋ฐ˜์‘ํ˜•
SMALL

๐Ÿงฉ ์˜ค๋ฅ˜ ๋ฉ”์‹œ์ง€ ๋ถ„์„ โ€“ ์›๊ฒฉ ํ˜ธ์ŠคํŠธ์— ์˜ํ•ด ๊ฐ•์ œ๋กœ ์—ฐ๊ฒฐ์ด ๋Š๊ฒผ์Šต๋‹ˆ๋‹ค
ASP.NET MVC ํ™˜๊ฒฝ์—์„œ ์™ธ๋ถ€ API ํ˜ธ์ถœ ์‹œ ๋‹ค์Œ๊ณผ ๊ฐ™์€ ์—๋Ÿฌ๊ฐ€ ๋ฐœ์ƒํ•˜๋Š” ๊ฒฝ์šฐ๊ฐ€ ์žˆ์Šต๋‹ˆ๋‹ค:

[SocketException (0x2746): ํ˜„์žฌ ์—ฐ๊ฒฐ์€ ์›๊ฒฉ ํ˜ธ์ŠคํŠธ์— ์˜ํ•ด ๊ฐ•์ œ๋กœ ๋Š๊ฒผ์Šต๋‹ˆ๋‹ค]
[IOException: ์ „์†ก ์—ฐ๊ฒฐ์—์„œ ๋ฐ์ดํ„ฐ๋ฅผ ์ฝ์„ ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค.]
[WebException: ๊ธฐ๋ณธ ์—ฐ๊ฒฐ์ด ๋‹ซํ˜”์Šต๋‹ˆ๋‹ค. ๋ณด๋‚ด๊ธฐ์—์„œ ์˜ˆ๊ธฐ์น˜ ์•Š์€ ์˜ค๋ฅ˜๊ฐ€ ๋ฐœ์ƒํ–ˆ์Šต๋‹ˆ๋‹ค.]

๐Ÿ” ์›์ธ โ€“ API ํ˜ธ์ถœ ์‹œ ๋ณด์•ˆ ํ”„๋กœํ† ์ฝœ ๋ถˆ์ผ์น˜
๋งŽ์€ ์„œ๋ฒ„๊ฐ€ TLS 1.2 ์ด์ƒ๋งŒ ์ง€์›ํ•˜๋ฉฐ, ASP.NET ํ”„๋กœ์ ํŠธ๊ฐ€ ์ด๋ฅผ ์ง€์›ํ•˜์ง€ ์•Š์œผ๋ฉด ์—ฐ๊ฒฐ์ด ๋Š์–ด์ง‘๋‹ˆ๋‹ค.

๐Ÿ”ง ํ•ด๊ฒฐ ๋ฐฉ๋ฒ• โ€“ ServicePointManager๋ฅผ ํ†ตํ•œ TLS ์„ค์ •

๐Ÿ“„ Global.asax.cs์—์„œ TLS ์„ค์ • ์ ์šฉํ•˜๊ธฐ

csharp

protected void Application_Start()
{
    System.Net.ServicePointManager.SecurityProtocol =
        SecurityProtocolType.Tls12 |
        SecurityProtocolType.Tls11 |
        SecurityProtocolType.Tls;

    // ๊ธฐํƒ€ ์ดˆ๊ธฐํ™” ์ฝ”๋“œ
}

 

๐Ÿ“„ Controller์—์„œ TLS ์„ค์ • ์ ์šฉํ•˜๊ธฐ

csharp

public async Task<ActionResult> Login(string loginID, string loginPWD)
{
    ServicePointManager.SecurityProtocol = SecurityProtocolType.Tls12 | SecurityProtocolType.Tls11 | SecurityProtocolType.Tls;

    var loginData = new LoginRequest
    {
        .....
    };


    //using (var client = new HttpClient())
    //ํƒ€์ž„์•„์›ƒ ์ถ”๊ฐ€
    using (var client = new HttpClient() { Timeout = TimeSpan.FromSeconds(30)})
    {
		.....
    }
}

 

๐Ÿ›  Web.config์—์„œ ํƒ€์ž„์•„์›ƒ๋„ ํ•จ๊ป˜ ๊ณ ๋ คํ•˜์„ธ์š” API ํ†ต์‹  ์˜ค๋ฅ˜๋Š” ์—ฐ๊ฒฐ ์‹œ๊ฐ„ ์ดˆ๊ณผ์ผ ์ˆ˜๋„ ์žˆ์Šต๋‹ˆ๋‹ค. ํ•จ๊ป˜ ์ ๊ฒ€ํ•ด ์ฃผ์„ธ์š”.

๐Ÿงฉ ์ถ”๊ฐ€ ํŒ โ€“ ์•ˆ์ •์ ์ธ API ํ†ต์‹ ์„ ์œ„ํ•œ ์ฒดํฌ๋ฆฌ์ŠคํŠธ

  • .NET ๋ฒ„์ „ ์—…๊ทธ๋ ˆ์ด๋“œ
  • ์™ธ๋ถ€ ์„œ๋ฒ„ TLS ์ง€์› ํ™•์ธ
  • ์˜ˆ์™ธ ๋กœ๊น…

โœ… ๊ฒฐ๋ก  โ€“ ์˜ค๋ฅ˜๋ฅผ ์˜ˆ๋ฐฉํ•˜๋Š” ๋ณด์•ˆ ์„ค์ •์˜ ์ค‘์š”์„ฑ ๊ฐ„๋‹จํ•œ TLS ์„ค์ •๋งŒ์œผ๋กœ๋„ API ํ†ต์‹  ์˜ค๋ฅ˜๋ฅผ ์˜ˆ๋ฐฉํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ํŠนํžˆ ServicePointManager ์„ค์ •์„ ํ†ตํ•ด ์‹ ๋ขฐ๋„ ๋†’์€ ํ†ต์‹  ํ™˜๊ฒฝ์„ ๊ตฌ์ถ•ํ•˜์„ธ์š”!

728x90
๋ฐ˜์‘ํ˜•
LIST