MSAL(Microsoft 인증 라이브러리) 개요

MSAL(Microsoft 인증 라이브러리)을 통해 개발자는 사용자를 인증하고 보안 웹 API에 액세스하기 위해 Microsoft ID 플랫폼에서 토큰을 획득할 수 있습니다. Microsoft Graph, 기타 Microsoft API, 타사 웹 API 또는 자체 웹 API에 대한 보안 액세스를 제공하는 데 사용할 수 있습니다. MSAL은 .NET, JavaScript, Java, Python, Android 및 iOS를 비롯한 다양한 애플리케이션 아키텍처 및 플랫폼을 지원합니다.

MSAL을 통해 여러 플랫폼에 대해 일관된 API를 사용하여 토큰을 얻을 수 있는 방법은 여러 가지입니다. MSAL을 사용하면 다음과 같은 이점이 있습니다.

  • 애플리케이션의 프로토콜에 대해 OAuth 라이브러리나 코드를 직접 사용할 필요가 없습니다.
  • 사용자 대신 또는 애플리케이션 대신 토큰을 획득합니다(플랫폼에 해당하는 경우).
  • 토큰 캐시를 유지 관리하고 토큰 만료가 가까워지면 토큰을 새로 고쳐줍니다. 토큰 만료를 직접 처리할 필요가 없습니다.
  • 애플리케이션에 로그인할 수 있는 대상을 지정할 수 있습니다(사용자의 조직, 여러 조직, 직장 및 학교와 Microsoft 개인 계정, Azure AD B2C의 소셜 ID, 소버린의 사용자 및 국가별 클라우드).
  • 구성 파일에서 애플리케이션을 설정할 수 있습니다.
  • 실행 가능한 예외, 로깅 및 원격 분석을 노출하여 앱 문제를 해결할 수 있습니다.

애플리케이션 유형 및 시나리오

MSAL을 사용하면 웹 애플리케이션, 웹 API, 단일 페이지 앱(JavaScript), 모바일과 원시 애플리케이션 및 디먼과 서버 쪽 애플리케이션 등과 같은 다양한 애플리케이션 유형에서 토큰을 획득할 수 있습니다.

MSAL은 다음을 비롯한 여러 가지 애플리케이션 시나리오에 사용할 수 있습니다.

언어 및 프레임워크

라이브러리 지원되는 플랫폼 및 프레임워크
Android용 MSAL Android
MSAL Angular Angular 및 Angular.js 프레임워크가 있는 단일 페이지 앱
iOS 및 macOS용 MSAL iOS 및 macOS
MSAL Go(미리 보기) Windows, macOS, Linux
MSAL Java Windows, macOS, Linux
MSAL.js Vue.js, Ember.js, 또는 Durandal.js와 같은 JavaScript/TypeScript 프레임워크
MSAL.NET .NET Framework, .NET Core, Xamarin Android, Xamarin iOS, 유니버설 Windows 플랫폼
MSAL 노드 웹앱(Express 포함), 데스크톱 앱(Electron 포함), 플랫폼 간 콘솔 앱
MSAL Python Windows, macOS, Linux
MSAL React React 및 React 기반 라이브러리가 있는 단일 페이지 앱(Next.js, Gatsby.js)

ADAL을 사용하는 앱을 MSAL로 마이그레이션

ADAL(Active Directory 인증 라이브러리)은 MSAL이 Microsoft ID 플랫폼과 통합되는 개발자용 Azure AD(v1.0) 엔드포인트와 통합됩니다. v1.0 엔드포인트는 회사 계정을 지원하지만 개인 계정은 지원하지 않습니다. v2.0 엔드포인트는 Microsoft 개인 계정과 회사 계정을 단일 인증 시스템으로 통합한 것입니다. 또한 MSAL을 사용하면 Azure AD B2C에 대한 인증을 받을 수 있습니다.

MSAL로 마이그레이션하는 방법에 대한 자세한 내용은 Microsoft 인증 라이브러리(MSAL)로 애플리케이션 마이그레이션을 참조하세요.