다음을 통해 공유


Microsoft ID 플랫폼 코드 샘플

이러한 코드 샘플은 Microsoft에서 빌드 및 유지 관리하여 Microsoft ID 플랫폼 인증 라이브러리를 사용하는 방법을 보여 줍니다. 일반적인 인증 및 권한 부여 시나리오는 여러 애플리케이션 유형, 개발 언어 및 프레임워크에서 구현됩니다.

  • 사용자를 웹 애플리케이션에 로그인하고 보호된 웹 API에 대한 권한 있는 액세스를 제공합니다.
  • API 작업 수행 시 액세스 토큰을 요구하여 웹 API를 보호합니다.

각 코드 샘플에는 프로젝트를 빌드하고(해당하는 경우) 샘플 애플리케이션을 실행하는 방법을 설명하는 README.md 파일이 포함되어 있습니다. 코드의 주석은 ID 플랫폼을 사용하여 인증 및 권한 부여를 수행하기 위해 애플리케이션에서 이러한 라이브러리를 사용하는 방법을 이해하는 데 도움이 됩니다.

참고 항목

이 페이지는 현재 유지 관리를 진행 중이며 일부 링크가 끊어질 수 있습니다. 이전 코드 샘플을 보관하고 새 코드 샘플을 업데이트하는 중입니다. 나중에 업데이트된 샘플을 다시 확인하세요.

샘플 및 가이드

탭을 사용하여 애플리케이션 형식 또는 기본 설정 언어/프레임워크를 기준으로 샘플을 정렬합니다.

단일 페이지 애플리케이션

이 샘플에서는 Microsoft ID 플랫폼으로 보안이 설정된 단일 페이지 애플리케이션을 작성하는 방법을 보여 줍니다. 이 샘플은 MSAL.js의 특징 중 하나를 사용합니다.

언어/
플랫폼
코드 샘플
GitHub
인증
라이브러리
인증 흐름 빠른 시작 자습서
React 사용자 로그인 MSAL React PKCE가 있는 권한 부여 코드 빠른 시작 자습서
Angular 사용자 로그인 MSAL Angular PKCE가 있는 권한 부여 코드 빠른 시작 자습서
JavaScript 사용자 로그인
사용자 로그인(B2C)
Microsoft Graph 호출
Node.js 웹 API 호출
Node.js 웹 API 호출(B2C)
Azure Storage 및 App Service에 배포
MSAL.js PKCE가 있는 권한 부여 코드 빠른 시작
Blazor WebAssembly 사용자 로그인
사용자 로그인(B2C)
Microsoft Graph 호출
Azure App Service에 배포
MSAL.js PKCE가 있는 권한 부여 코드 빠른 시작

웹 애플리케이션

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

언어/플랫폼 GitHub의 코드 샘플 인증 라이브러리 인증 흐름 빠른 시작 자습서
ASP.NET Microsoft Graph 학습 샘플
관리자 제한 범위에서 사용자 로그인 Microsoft Graph 호출
MSAL.NET
Microsoft.Identity.Web
고급 토큰 캐시 시나리오
• OpenID Connect
• 인증 코드
• OBO(On-Behalf-Of)
빠른 시작
ASP.NET Core 사용자 로그인
사용자 로그인(B2C)
Microsoft Graph 호출
토큰 캐시 사용자 지정
조건부 액세스 인증 컨텍스트를 사용하여 단계별 인증 수행
Graph 호출(다중 테넌트)
Azure REST API 호출
웹 API 보호
웹 API 보호(B2C)
다중 테넌트 웹 API 보호
액세스 제어를 위해 앱 역할 사용
액세스 제어를 위해 보안 그룹 사용
Azure Storage 및 App Service에 배포
Active Directory Federation Services에서 Microsoft Entra로 마이그레이션
Microsoft.Identity.Web • OpenID Connect
• 인증 코드
• OBO(On-Behalf-Of Flow)
빠른 시작 자습서
Blazor 사용자 로그인
사용자 로그인(B2C)
Microsoft Graph 호출
웹 API 호출
웹 API 호출(B2C)
MSAL.NET 하이브리드 흐름
Java Spring 사용자 로그인
사용자 로그인(B2C)
Microsoft Graph 호출
액세스 제어를 위해 앱 역할 사용
액세스 제어를 위해 그룹 사용
웹 API 보호
Azure 앱 서비스에 배포
MSAL Java 인증 코드 자습서
Java 서블릿이 있습니다. 사용자 로그인
사용자 로그인(B2C)
Microsoft Graph 호출
액세스 제어를 위해 앱 역할 사용
액세스 제어를 위해 보안 그룹 사용
Azure App Service에 배포
MSAL Java 인증 코드 빠른 시작
Node.js Express 사용자 로그인
MSAL 노드 및 Microsoft ID 플랫폼 사용하여 빌드된 Express 웹 애플리케이션
사용자 로그인(B2C)
Microsoft Graph 호출
BFF 프록시로 Microsoft Graph 호출
액세스 제어를 위해 앱 역할 사용
액세스 제어를 위해 보안 그룹 사용
Azure App Service에 배포
MSAL 노드 • 인증 코드
• BFF(Backend-for-Frontend) 프록시
빠른 시작 자습서
Python Flask 사용자 로그인
Microsoft Entra ID 또는 B2C 사용자를 로그인하고 필요에 따라 다운스트림 API를 호출하는 템플릿(Microsoft Graph)
Azure App Service에 배포
MSAL Python 인증 코드 빠른 시작 자습서
Python Django 사용자 로그인 MSAL Python 인증 코드
Ruby 사용자 로그인 및 Microsoft Graph 호출 OmniAuth OAuth2 인증 코드

Web API

다음 샘플에서는 Microsoft ID 플랫폼을 사용하여 웹 API를 보호하는 방법과 웹 API에서 다운스트림 API를 호출하는 방법을 보여줍니다.

언어/
플랫폼
코드 샘플
GitHub
인증
라이브러리
인증 흐름 빠른 시작 자습서
ASP.NET Microsoft Graph 호출 MSAL.NET OBO(On-Behalf-Of) 빠른 시작
ASP.NET Core Microsoft ID 플랫폼 사용하여 액세스 제어(보호된 경로) MSAL.NET OBO(On-Behalf-Of) 빠른 시작 자습서
Java Microsoft ID 플랫폼 사용하여 Java Spring Boot 웹 API 보호 MSAL Java OBO(On-Behalf-Of)
Node.js Node.js 웹 API 보호
Azure AD B2C를 사용하여 Node.js 웹 API 보안 유지
MSAL 노드 권한 부여 전달자

데스크톱

다음 샘플에서는 Microsoft Graph API에 액세스하거나, 사용자 이름의 자체 웹 API에 액세스하는 퍼블릭 클라이언트 데스크톱 애플리케이션을 보여 줍니다. WAM(Web Authentication Manager)을 사용하는 데스크톱(콘솔) 샘플 외에도 이러한 클라이언트 애플리케이션은 모두 MSAL(Microsoft 인증 라이브러리)을 사용합니다.

모바일

다음 샘플에서는 Microsoft Graph API에 액세스하는 퍼블릭 클라이언트 모바일 애플리케이션을 보여 줍니다. 이러한 클라이언트 애플리케이션은 MSAL(Microsoft 인증 라이브러리)을 사용합니다.

언어/
플랫폼
코드 샘플
GitHub
인증
라이브러리
인증 흐름 빠른 시작 자습서
.NET Core MAUI를 사용하여 Microsoft Graph 호출
브로커와 함께 MAUI를 사용하여 Microsoft Graph 호출
MAUI를 사용하여 Active Directory B2C 테넌트 호출
MSAL.NET PKCE가 있는 권한 부여 코드
iOS Microsoft Graph 원시 호출 MSAL iOS PKCE가 있는 권한 부여 코드 빠른 시작 자습서
Java 사용자 로그인 및 Microsoft Graph 호출 MSAL Android PKCE가 있는 권한 부여 코드 빠른 시작 자습서
Kotlin 사용자 로그인 및 Microsoft Graph 호출 MSAL Android PKCE가 있는 권한 부여 코드
Xamarin 사용자 로그인 및 Microsoft Graph 호출
broker를 통한 사용자 로그인 및 Microsoft Graph 호출
MSAL.NET PKCE가 있는 권한 부여 코드

서비스/디먼

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

언어/
플랫폼
코드 샘플
GitHub
인증
라이브러리
인증 흐름 빠른 시작 자습서
.NET 보호된 웹 API에 액세스하는 .NET 콘솔 앱
Microsoft ID 플랫폼 엔드포인트를 포함한 다중 테넌트
MSAL.NET 클라이언트 자격 증명 부여 빠른 시작 자습서
.NET Core Microsoft Graph 호출
웹 API 호출
관리 ID 및 Azure Key Vault 사용
MSAL.NET 클라이언트 자격 증명 부여
Java 비밀을 사용하여 Microsoft Graph 호출
인증서를 사용하여 Microsoft Graph 호출
MSAL Java 클라이언트 자격 증명 부여 빠른 시작
Node.JS 비밀을 사용하여 Microsoft Graph 호출 MSAL 노드 클라이언트 자격 증명 부여 빠른 시작 자습서
Python 비밀을 사용하여 Microsoft Graph 호출
인증서를 사용하여 Microsoft Graph 호출
MSAL Python 클라이언트 자격 증명 부여 빠른 시작

브라우저리스(헤드리스)

다음 샘플은 웹 브라우저가 없는 디바이스에서 실행되는 공용 클라이언트 애플리케이션을 보여 줍니다. 앱은 명령줄 도구이거나 Linux나 Mac에서 실행되는 앱 또는 IoT 애플리케이션일 수 있습니다. 샘플에는 다른 디바이스(예: 휴대폰)에서 대화형으로 로그인하는 사용자 이름으로 Microsoft Graph API에 액세스하는 앱이 있습니다. 이 클라이언트 애플리케이션은 MSAL(Microsoft 인증 라이브러리)을 사용합니다.

언어/
플랫폼
코드 샘플
GitHub
인증
라이브러리
인증 흐름 빠른 시작 자습서
.NET Core 텍스트 전용 디바이스에서, 보호되는 API 호출 MSAL.NET 디바이스 코드
Java 사용자 로그인 및 텍스트 전용 디바이스에서 보호되는 API 호출 MSAL Java 디바이스 코드
Python Microsoft Graph 호출 MSAL Python 디바이스 코드

Web API로의 Azure Functions

다음 샘플에서는 Microsoft ID 플랫폼을 사용하여 웹 API를 노출하고 HttpTrigger를 사용하여 Azure 함수를 보호하는 방법 및 웹 API에서 다운스트림 API를 호출하는 방법을 보여줍니다.

언어/
플랫폼
코드 샘플
GitHub
인증
라이브러리
인증 흐름 빠른 시작 자습서
Python Microsoft Entra ID로 보호되는 Python Azure 함수 웹 API MSAL Python 인증 코드

Microsoft Teams 애플리케이션

다음 샘플은 사용자를 로그인시키는 Microsoft Teams Tab 애플리케이션을 보여 줍니다. 또한 MSAL(Microsoft 인증 라이브러리)을 사용하여 사용자 ID로 Microsoft Graph API를 호출하는 방법을 보여 줍니다.

언어/
플랫폼
코드 샘플
GitHub
인증
라이브러리
인증 흐름 빠른 시작 자습서
Node.JS Teams Tab 앱: SSO(Single Sign-On) 및 Microsoft Graph 호출 MSAL 노드 OBO(On-Behalf-Of)

다중 테넌트 SaaS

다음 샘플에서는 모든 Microsoft Entra 테넌트에서 로그인을 허용하도록 애플리케이션을 구성하는 방법을 보여 줍니다. 다중 테넌트가 되도록 애플리케이션을 구성하면 SaaS(Software as a Service) 애플리케이션을 많은 조직에 제공할 수 있으므로 해당 동의한 후에 애플리케이션에 로그인할 수 있습니다.

언어/
플랫폼
코드 샘플
GitHub
인증
라이브러리
인증 흐름 빠른 시작 자습서
ASP.NET Core ASP.NET Core MVC 웹 애플리케이션에서 Microsoft Graph API 호출
Core MVC 웹 애플리케이션 호출 ASP.NET Core 웹 API ASP.NET
MSAL.NET • OpenID Connect
• 인증 코드

더 많은 샘플 코드를 자세히 알아보려면 다음을 참조하세요.