WEB(65)
-
[ASP.NET Core] Key Vault 사용
Azure Key Valut for ASP.NET Core 3.1 ASP.NET Core 프로젝트에서는 DB연결 문자열이나 중요 정보들을 주로 appsettings.json에 저장합니다. 하지만 소스코드를 저장소에 업로드 할 때 appsettings.json에 포함된 민감한 정보도 업로드 되기 때문에 보안 상 취약한 구조를 가집니다. Secret Manager를 사용하면 민감한 정보를 프로젝트가 아닌 운영체제에 저장되게 할 수 있습니다. 하지만 설정과정도 복잡하고 개발자 PC 마다 따로 설정을 해야하는 번거로움이 있습니다. 이 포스트에서는 Azure Key Vault를 사용하여 민감한 정보를 프로젝트나 개인의 PC가 아니라 Azure 클라우드 저장소에서 저장하는 방법을 소개합니다. Azure Key Va..
2020.05.21 -
[ASP.NET Core] 2차 인증을 위한 QR코드 생성하기
ASP.NET Core는 2차 인증기 앱을 지원합니다. TOTP(Time-based One-time Password Algorithm, 시간 기반 일회성 비밀번호 알고리즘)을 사용하는 2차 인증기 앱들은 2차 인증을 위해 사용되는 수단 중 하나입니다. TOTP 2차인증 앱을 사용하는 방법은 SMS나 이메일을 통한 2차인증 보다 선호되는 방법입니다. 사용자가 ID와 비밀번호를 입력한 후 2차인증 앱에서 생성된 6~8자리의 코드를 입력하는 방법이죠. 이 경우 사용자의 스마트폰에 인증기 앱이 설치되어 있기 마련입니다. ASP.NET Core 웹앱 템플릿은 2차 인증기를 지원하지만, QR코드 통한 인증방법은 기본적으로 제공하지 않습니다. QRCode를 통한 인증방법은 사용자가 쉽게 2차인증을 완료하도록 도와줍니..
2020.05.07 -
[Web] Push Notification 구현
W3C에서 제정한 Service Worker 표준을 통해 웹사이트에서도 Push Notification을 지원 할 수 있습니다. 웹사이트에 접속하지 않아도 브라우저가 실행 중이라면 Push Notification이 사용자에게 노출됩니다. Push Notification은 웹표준으로 IE를 제외한 Chrome, Firefox, Edge, Safari 등 최신 브라우저와 모바일 브라우저에서 지원하는 기술입니다. 여기에서는 ASP.NET MVC 5 프로젝트와 Google Firebase Messaging을 사용하여 Push Notification API 구현에 대해 정리하였습니다. 사전 준비 Push Notification은 2015년 출시된 크롬 42버전부터 지원하므로 그 이상의 버전이 필요합니다. 이 포스..
2020.04.27 -
[IIS] 무료 TLS 인증서 발급 및 HTTPS 설치
Let's Encrypt를 통해 무료로 HTTPS를 위한 TLS인증서를 발급받을 수 있습니다. 발급 자동화를 위해 ACME 프로토콜을 제공하고 있으며, 이 프로토콜을 사용하는 수많은 자동화 도구를 제공하므로 어떤 환경이든지 손쉽게 HTTPS를 설정 할 수 있습니다. 여기에서는 Windows Server 2012 환경에서 win-acme 자동화 도구를 사용하여 발급부터 재발급까지 자동화하는 과정을 소개합니다. 참고로 Let's Encrypt에서 인증서를 발급받으려면 도메인이 연결된 웹사이트가 필요합니다. 도메인이 없거나 IIS 웹서버에 대한 관리 권한이 없다면 작업을 진행 할 수 없습니다. win-acme 요구사항 공식적으로 Windows Server 2012 (IIS 8.0 이상)을 지원합니다. Wind..
2020.04.23 -
[Blazor] ASP.NET Core Blazor 소개
Blazor는 .NET을 사용하여 Client-side 웹 UI를 개발할 수 있는 프레임워크로 다음과 같은 특징을 가집니다. Javascript 대신 C#을 사용하여 동적인 UI를 개발할 수 있음 Client-side와 Server-side 로직을 .NET으로 공유할 수 있음 모바일을 포함한 다양한 브라우저를 지원하기 위해 HTML과 CSS를 통해 화면을 렌더링 Client-Side 웹 개발을 JavaScript가 아니라 .NET으로 개발하는 것은 다음의 이점을 제공합니다. JavaScript가 아닌 생산성 높은 C#으로 개발할 수 있음 .NET 라이브러리를 사용할 수 있음 서버와 클라이언트의 로직을 공유할 수 있음 .NET의 수준높은 보안, 안정성, 성능을 제공 Windows, Linux, macOS에..
2020.03.25 -
[FTP] Windows Server FTP 설정하기
이 글은 Windows Server 2008에서 작성되었으며, Windows Server 2012나 이후 버전에서도 사용할 수 있는 방법입니다. FTP 용어정리 포트 설정 FTP는 기본적으로 2개의 포트를 사용합니다. 제어포트(Control Port): 사용자 인증 및 명령입력에 사용되는 포트입니다. 주로 21번 포트가 사용됩니다. 데이터포트(Data Port): 실제 데이터를 전송하는 포트입니다. 20번 포트가 기본적으로 사용되지만 설정에 따라 달라집니다. Passive vs Active Passive Mode와 Active Mode 구분은 클라이언트와 서버 중 누가 접속을 시도할 것인가에 따라 나누어 집니다. Passive Mode: 클라이언트가 서버에 접속하는 모드입니다. 근래에는 대부분 Passi..
2019.11.27