다음을 통해 공유


Azure Active Directory 코드 샘플(v1.0 엔드포인트)

경고

이 콘텐츠는 이전의 Azure AD v1.0 엔드포인트에 대한 것입니다. 새로운 프로젝트에는 Microsoft ID 플랫폼을 사용합니다.

Azure AD(Azure Active Directory)를 사용하여 웹 애플리케이션 및 Web API에 인증 및 권한 부여를 추가할 수 있습니다.

이 섹션에서는 Azure AD v1.0 엔드포인트에 대해 자세히 알아보는 데 사용할 수 있는 샘플 링크를 제공합니다. 이 샘플은 애플리케이션에 사용할 수 있는 코드 조각과 함께 작업 수행 방법을 보여줍니다. 코드 샘플 페이지에서 요구 사항, 설치 및 설정에 도움이 되는 자세한 추가 정보 항목을 찾을 수 있습니다. 또한 코드는 중요한 섹션을 이해하는 데 도움이 되도록 주석으로 처리되어 있습니다.

참고

Microsoft Entra V2 코드 샘플에 관심이 있는 경우 시나리오별 v2.0 코드 샘플을 참조하세요.

경고

ADAL(Active Directory 인증 라이브러리)에 대한 지원은 2022년 12월에 종료됩니다. 기존 OS 버전에서 ADAL을 사용하는 앱은 계속 작동하지만 기술 지원 및 보안 업데이트는 종료됩니다. 지속적인 보안 업데이트가 없으면 ADAL을 사용하는 앱이 최신 보안 공격 패턴에 점점 더 취약해집니다. 자세한 내용은 MSAL로 앱 마이그레이션을 참조하세요.

각 샘플 유형식에 대한 기본 시나리오를 이해하려면 Azure AD의 인증 시나리오를 참조하세요.

GitHub에서 샘플에 참여할 수도 있습니다. 자세한 방법은 Azure Active Directory 샘플 및 설명서를 참조하세요.

단일 페이지 애플리케이션

이 샘플에서는 Azure AD로 보안이 설정된 단일 페이지 애플리케이션을 작성하는 방법을 보여 줍니다.

플랫폼 자체 API 호출 다른 Web API 호출
이 이미지는 JavaScript 로고를 보여 줍니다. javascript-singlepageapp
이 이미지는 Angular JS 로고를 보여 줍니다. angularjs-singlepageapp angularjs-singlepageapp-cors

웹 애플리케이션

웹 애플리케이션은 사용자 ID로 사용자를 로그인하고 Microsoft Graph 또는 Web API를 호출

다음 샘플은 사용자를 로그인하는 웹 애플리케이션을 보여 줍니다. 일부 애플리케이션은 로그인한 사용자의 이름으로 Microsoft Graph 또는 사용자 고유의 Web API도 호출합니다.

플랫폼 사용자만 로그인 Microsoft Graph 호출 또 다른 ASP.NET 또는 ASP.NET Core 2.0 Web API 호출
이 이미지는 ASP.NET Core 로고를 표시

ASP.NET Core 2.0
dotnet-webapp-openidconnect-aspnetcore webapp-webapi-multitenant-openidconnect-aspnetcore

(Azure AD Graph)
dotnet-webapp-webapi-openidconnect-aspnetcore
이 이미지는 ASP.NET Framework 로고를 보여줍니다.

ASP.NET 4.5

webapp-WSFederation-dotNet

dotnet-webapp-webapi-oauth2-useridentity
dotnet-webapp-multitenant-openidconnect

(Azure AD Graph)
이 이미지는 Python 로고를 보여 줍니다. python-webapp-graphapi
이 이미지는 Java 로그를 보여 줍니다. java-webapp-openidconnect
이 이미지는 PHP 로고를 보여 줍니다. php-graphapi-web

역할 기반 액세스 제어(권한 부여)를 보여주는 웹 애플리케이션

다음 샘플은 RBAC(역할 기반 액세스 제어)를 구현하는 방법을 보여 줍니다. RBAC는 웹 애플리케이션의 특정 기능에 대한 사용 권한을 특정 사용자로 제한하는 데 사용됩니다. 사용자가 Azure AD 그룹에 속해 있는지 또는 지정된 애플리케이션 역할이 있는지에 따라 권한이 부여됩니다.

플랫폼 샘플 설명
이 이미지는 ASP.NET Framework 로고를 보여줍니다.

ASP.NET 4.5
dotnet-webapp-groupclaims

dotnet-webapp-roleclaims
Azure AD 역할을 권한 부여에 사용하는 .NET 4.5 MVC 웹앱

Microsoft Graph 또는 Web API를 호출하는 데스크톱 및 모바일 공용 클라이언트의 애플리케이션

다음 샘플은 사용자 이름으로 Microsoft Graph 또는 Web API에 액세스하는 공용 클라이언트 애플리케이션(데스크톱/모바일 애플리케이션)을 보여 줍니다. 디바이스 및 플랫폼에 따라 애플리케이션에서 다른 방식(흐름/권한 부여)으로 사용자를 로그인할 수 있습니다.

  • 대화형
  • 자동(Windows의 Windows 통합 인증 또는 사용자 이름/암호 사용)
  • 다른 디바이스에 대화형 로그인을 위임하여(웹 컨트롤을 제공하지 않는 디바이스에서 사용되는 디바이스 코드 흐름)
클라이언트 애플리케이션 플랫폼 흐름/권한 부여 Microsoft Graph 호출 ASP.NET 또는 ASP.NET Core 2.x Web API 호출
데스크톱(WPF) 이 이미지는 .NET/C# 로고를 보여 줍니다. 대화형 dotnet-native-multitarget의 일부 dotnet-native-desktop

dotnet-native-aspnetcore

dotnet-webapi-manual-jwt-validation
모바일(UWP) 이 이미지는 .NET/C#/UWP를 보여 줍니다. 대화형 dotnet-native-uwp-wam

이 샘플은 ADAL.NET이 아니라 WAM을 사용합니다.
dotnet-windows-store (ADAL.NET을 사용하여 단일 테넌트 웹 API를 호출하는 UWP 애플리케이션)

dotnet-webapi-multitenant-windows-store (ADAL.NET를 사용 하여 다중 테넌트 웹 API를 호출 하는 UWP 응용 프로그램)
모바일(Android, iOS, UWP) 이 이미지는 .NET/C#(Xamarin)을 보여 줍니다. 대화형 dotnet-native-multitarget
모바일(Android) 이 이미지는 Android 로고를 보여 줍니다. 대화형 android
모바일(iOS) 이 이미지는 iOS / Objective C 또는 Swift를 보여 줍니다. 대화형 nativeClient-iOS
데스크톱(콘솔) 이 이미지는 .NET/C# 로고를 보여 줍니다. 사용자 이름/암호

Windows 통합 인증
dotnet-native-headless
데스크톱(콘솔) 이 이미지는 Java 로고를 보여 줍니다. 사용자 이름/암호 java-native-headless
데스크톱(콘솔) 이 이미지는 .NET Core/C# 로고를 보여 줍니다. 디바이스 코드 흐름 dotnet-deviceprofile

디먼 애플리케이션(애플리케이션 ID를 사용하여 웹 API에 액세스)

다음 샘플은 사용자 없이(애플리케이션 ID로) Microsoft Graph 또는 web API에 액세스하는 데스크톱 또는 웹 애플리케이션을 보여줍니다.

클라이언트 애플리케이션 플랫폼 흐름/권한 부여 ASP.NET 또는 ASP.NET Core 2.0 Web API 호출
디먼 앱(콘솔) 이 이미지는 .NET Framework 로고를 보여줍니다. 앱 비밀 또는 인증서를 사용하는 클라이언트 자격 증명 dotnet-daemon

dotnet-daemon-certificate-credential
디먼 앱(콘솔) 이 이미지는 .NET Core 로고를 표시 인증서를 사용하는 클라이언트 자격 증명 dotnetcore-daemon-certificate-credential
ASP.NET 웹앱 이 이미지는 .NET Framework 로고를 보여줍니다. 클라이언트 자격 증명 dotnet-webapp-webapi-oauth2-appidentity

Web API

Azure Active Directory로 보호되는 Web API

다음 샘플은 Azure AD로 Node.js web API를 보호하는 방법을 보여줍니다.

이 문서의 이전 섹션에서 ASP.NET 또는 ASP.NET Core Web API호출하는 클라이언트 애플리케이션을 보여 주는 다른 샘플을 확인할 수도 있습니다. 해당 샘플은 이 섹션에서 다시 언급되지 않지만 위 또는 아래 표의 마지막 열에 나와 있습니다.

플랫폼 샘플
이 이미지는 Node.js 로고를 보여 줍니다. node-webapi

Microsoft Graph 또는 다른 Web API를 호출하는 Web API

다음 샘플은 또 다른 web API를 호출하는 web API를 보여줍니다. 두 번째 샘플은 조건부 액세스를 처리하는 방법을 보여줍니다.

플랫폼 Microsoft Graph 호출 또 다른 ASP.NET 또는 ASP.NET Core 2.0 Web API 호출
이 이미지는 ASP.NET Framework 로고를 보여줍니다.

ASP.NET 4.5
dotnet-webapi-onbehalfof

dotnet-webapi-onbehalfof-ca
dotnet-webapi-onbehalfof

dotnet-webapi-onbehalfof-ca

다른 Microsoft Graph 샘플

Azure AD 인증을 포함하여 Microsoft Graph API에 대한 여러 사용 패턴을 보여주는 샘플 및 자습서를 보려면 Microsoft Graph 커뮤니티 샘플 및 자습서를 참조하세요.

참고 항목