다음을 통해 공유


Visual Studio를 사용한 Azure용 ASP.NET 웹앱 개발 개요

ASP.NET Core는 간단한 웹 사이트와 복잡한 웹 애플리케이션을 위한 포괄적인 솔루션을 제공합니다. Azure 서비스는 웹 사이트 및 웹 애플리케이션 개발에서 발생하는 많은 요구 사항을 해결하고 많은 문제를 해결하는 데 도움이 될 수 있습니다. ASP.NET Core 웹 애플리케이션은 클라이언트 측 JavaScript를 자주 사용합니다.

많은 Visual Studio 구독에는 Azure 개별 개발/테스트 크레딧이 포함되어 있습니다. Visual Studio 구독자라면 이 크레딧을 사용하여 다양한 Azure 서비스를 무료로 체험해 볼 수 있습니다. 구독자가 아니며 Azure 구독이 없는 경우 무료 계정을 만들 수 있습니다.

필수 조건

아직 개발전이라면 Visual Studio의 기본 커넥트 서비스, Azure에 배포, Azure 애플리케이션 디버깅, Docker 컨테이너 사용 등을 설명하는 Visual Studio의 Azure 개발 개요를 살펴보세요.

Visual Studio 2019 또는 이후 버전을 설치하고 Azure 개발ASP.NET 및 웹 개발 워크로드를 설치해야 합니다.

아키텍처 다이어그램

다음 다이어그램은 스토리지, SQL 데이터베이스 액세스 및 인증 등 일반적인 시나리오를 처리하는 일부 Azure 서비스를 사용하는 Azure 웹 애플리케이션의 아키텍처 예제를 보여 줍니다.

웹 애플리케이션 예제 아키텍처의 다이어그램.

스토리지 및 데이터베이스에 연결

웹 애플리케이션에 국한되지 않고 대부분의 웹 애플리케이션에 중요한 많은 서비스를 이미 기본 개요에서 다루었습니다. 앱을 Azure Storage 및 데이터베이스에 연결, 앱을 gRPC, OpenAPI 및 WCF 엔드포인트에 연결을 참조하세요.

Azure Cache for Redis에 연결

Redis용 Azure Cache는 Azure 서비스, 웹 사이트 및 웹 애플리케이션을 위한 인메모리 데이터 저장소를 제공합니다. ASP.NET Core 웹 애플리케이션은 클라이언트 측 JavaScript를 자주 사용합니다. 지원되는 시나리오:

  • API에서 오는 데이터 캐시(이를 통해 API 호출 감소)
  • 캐시 출력(CPU 사용량을 줄일 수 있음)
  • 캐시 세션 상태

Azure Cache for Redis란?에서 자세히 알아보거나 Visual Studio Connected Services를 사용하여 Azure Cache for Redis에 연결에서 시작하세요.

사용자 인증

대부분의 웹사이트에는 사이트마다 다르거나 사용자가 기존 계정을 가지고 있는 ID 공급업체에서 제공하는 일종의 사용자 관리 및 인증 메커니즘이 필요합니다. Azure 앱 서비스에서는 기본 제공 사용자 인증이 지원됩니다. Azure App Service 및 Azure 함수의 인증 및 권한 부여에서 자세히 알아보고 Azure App Service에서 실행 중인 웹 앱에 앱 인증 추가로 시작하세요. Microsoft Entra ID(이전의 Azure Active Directory)는 모든 기능을 갖춘 클라우드 기반 ID 관리 서비스입니다. Microsoft Entra란 무엇인가요에서 자세히 알아보세요.

지원되는 인증 공급자는 다음과 같습니다.

  • 소셜 계정: 페이스북, 구글, 마이크로소프트 계정 및 기타
  • Microsoft Entra 계정(단일 테넌트의 계정)
  • Microsoft Entra 계정(여러 다른 테넌트의 계정)

앱에서 이러한 서비스를 사용하는 방법은 Visual Studio의 연결된 서비스를 사용하여 Microsoft Entra ID에 연결에서 알아보세요.

App Configuration

Azure에 배포된 ASP.NET 웹 앱은 모든 환경(테스트, 사용자 승인 테스트(UAT), 사전 프로덕션, 프로덕션)에 대한 구성이 필요할 수 있습니다. 이 구성은 Azure 앱 구성에서 관리할 수 있습니다. 비주얼 스튜디오의 연결된 서비스를 사용하여 Azure 앱 구성에 연결에서 앱을 Azure 앱 구성에 연결하는 방법을 알아보세요.

비밀 관리

데이터베이스에 대한 액세스 키 및 API 공급자를 위한 토큰과 같은 암호 및 기타 비밀을 안전하게 저장하는 것은 일반적인 문제이며, Azure Key Vault는 이에 대한 보안 솔루션을 제공합니다. Azure 키 볼트를 사용하여 Azure에서 실행 중인 앱의 암호를 저장할 수 있으며, 개발 중에 로컬 실행, 테스트 및 디버깅을 위해 Azure의 키 볼트 또는 로컬 스토어(secrets.json)를 사용할 수 있습니다. 클라우드에 대한 종속성 없이 설계 및 개발 단계에서 시작하여 중단 없이 테스트 및 프로덕션의 후반 단계로 전환할 수 있습니다. Azure Key Vault에서 자세히 알아보고 Visual Studio 연결 서비스를 사용하여 키 볼트를 웹 애플리케이션에 연결하기에서 시작하세요.Azure Key Vault에서 자세히 알아보고 Visual Studio 연결 서비스를 사용하여 키 볼트를 웹 애플리케이션에 연결하기에서 시작하세요..

엔티티 프레임워크를 사용한 데이터 마이그레이션

Visual Studio는 앱을 개발하고 로컬에서 데이터베이스를 변경한 다음 Azure의 프로덕션 데이터베이스와 동기화하는 문제를 해결하는 데 도움이 됩니다.

Azure SQL Database 및 엔티티 프레임워크를 사용하는 ASP.NET 웹 앱의 경우 데이터베이스에 로컬 변경을 수행할 때 엔티티 프레임워크 마이그레이션을 사용하여 이러한 스키마 변경 및 데이터 변경을 구조화된 방식으로 Azure로 푸시할 수 있습니다. 엔티티 프레임워크 마이그레이션를 참조하세요.

작업자 서비스

ASP.NET 웹 앱은 워커 서비스를 실행하여 이점을 얻을 수 있습니다. 기존 App Service 인스턴스에서 워커 서비스를 실행하는 데 추가 비용이 들지 않으며, 온프레미스 또는 가상 머신에서 실행 중인 Windows 서비스를 직접 대체할 수 있습니다. .NET의 워커 서비스를 참조하세요.

다음 단계

Azure 서비스에서 관심을 가질 만한 Azure 서비스에 대해 자세히 알아보세요.

Azure 아키텍처 센터에서 Azure 개발을 위한 아키텍처 조언을 받으세요.

ASP.NET 설명서를 찾습니다.