자습서: 인증을 위한 ASP.NET Core 프로젝트 만들기 및 구성
이 자습서에서는 IDE를 사용하여 ASP.NET Core 프로젝트를 만들고 인증 및 권한 부여를 구성하는 방법을 알아봅니다. 이 자습서는 Microsoft ID 플랫폼을 사용하여 웹 API를 보호하는 방법을 설명하는 시리즈의 두 번째 부분입니다. 이전 문서에서는 Microsoft Entra ID 테넌트에서 애플리케이션을 등록했습니다. 이 문서에서는 다음 작업을 수행합니다.
- IDE에서 ASP.NET Core Empty 프로젝트 만들기
- 애플리케이션에 대한 설정 구성
- 필요한 NuGet 패키지 식별 및 설치
필수 조건
- 자습서: Microsoft ID 플랫폼에 웹 API 등록의 필수 구성 요소 및 단계를 완료합니다.
- 다운로드 페이지에서 이 자습서에 사용된 IDE를 다운로드할 수 있습니다.
- Visual Studio 2022
- Visual Studio Code
- Mac용 Visual Studio 2022
- .NET 6.0 SDK의 최소 요구 사항입니다.
ASP.NET Core 프로젝트 만들기
다음 탭을 사용하여 IDE 내에서 ASP.NET Core 프로젝트를 만듭니다.
- Visual Studio를 열고 새 프로젝트 만들기를 선택합니다.
- ASP.NET Core Empty 템플릿을 검색하여 선택한 다음, 다음을 선택합니다.
- 프로젝트의 이름(예: NewWebAPILocal)을 입력합니다.
- 프로젝트의 위치를 선택하거나 기본 옵션을 적용한 다음, 다음을 선택합니다.
- 프레임워크 및 HTTPS용 구성에 대한 기본값을 적용합니다.
- 만들기를 실행합니다.
ASP.NET Core 프로젝트 구성
이전에 기록된 값은 appsettings.json에서 인증을 위해 애플리케이션을 구성하는 데 사용됩니다. appsettings.json은 런타임 중에 사용되는 애플리케이션 설정을 저장하는 데 사용되는 구성 파일입니다.
appsettings.json을 열고 파일 내용을 다음 코드 조각으로 바꿉니다.
{ "AzureAd": { "Instance": "https://login.microsoftonline.com/", "ClientId": "Enter the client ID here", "TenantId": "Enter the tenant ID here", "Scopes": "Forecast.Read" }, "Logging": { "LogLevel": { "Default": "Information", "Microsoft.AspNetCore": "Warning" } }, "AllowedHosts": "*" }
Instance
- 클라우드 공급자의 엔드포인트. 국가별 클라우드에서 사용 가능한 다양한 엔드포인트를 확인합니다.TenantId
- 애플리케이션이 등록된 테넌트 식별자입니다. 따옴표의 텍스트를 등록된 애플리케이션의 개요 페이지에서 이전에 기록된 디렉터리(테넌트) ID 값으로 바꿉니다.ClientId
- 클라이언트라고도 하는 애플리케이션의 식별자입니다. 따옴표 안의 텍스트를 등록된 애플리케이션의 개요 페이지에서 이전에 기록한 애플리케이션(클라이언트) ID 값으로 바꿉니다.Scopes
- 애플리케이션에 대한 액세스를 요청하는 데 사용되는 범위. 이 자습서의 경우 범위는Forecast.Read
입니다.
변경 내용을 파일에 저장합니다.
ID 패키지 설치
사용자 인증을 사용하도록 설정하려면 프로젝트에 ID 관련 NuGet 패키지를 설치해야 합니다.
- 상단 메뉴에서 도구>NuGet 패키지 관리자>솔루션용 NuGet 패키지 관리를 선택합니다.
- 찾아보기 탭을 선택한 상태에서 Microsoft.Identity.Web을 검색하고
Microsoft.Identity.Web
패키지를 선택하고 프로젝트 확인란을 선택한 다음 설치를 선택합니다. - 표시될 수 있는 다른 창에 대해 확인 또는 동의함을 선택합니다.