시나리오: 웹 API를 호출하는 데스크톱 앱

웹 API를 호출하는 데스크톱 앱을 빌드하는 데 필요한 모든 것을 알아보세요.

시작하기

아직 없는 경우 빠른 시작을 완료하여 애플리케이션을 먼저 만듭니다.

개요

데스크톱 애플리케이션을 작성하고, 사용자가 이 애플리케이션에 로그인하여 Microsoft Graph, 다른 Microsoft API 또는 자체 웹 API를 호출하도록 하고자 합니다. 다음과 같은 몇 가지 옵션이 있습니다.

  • 다음과 같은 경우 대화형 토큰 획득을 사용할 수 있습니다.

    • 데스크톱 애플리케이션이 그래픽 컨트롤을 지원하는 경우(예: Windows Form 애플리케이션, WPF(Windows Presentation Foundation) 애플리케이션 또는 macOS 기본 애플리케이션인 경우).
    • 또는 .NET 애플리케이션이고 Microsoft Entra ID와의 인증 상호 작용이 시스템 브라우저에서 수행되도록 동의하는 경우
    • 또는 Chromium 인스턴스에서 실행되는 Node.js Electron 애플리케이션인 경우입니다.
  • Windows에서 호스트하는 애플리케이션의 경우, Windows 도메인에 가입된 컴퓨터 또는 Microsoft Entra에 가입된 컴퓨터에서 실행되는 애플리케이션이 Windows 통합 인증을 사용하여 자동으로 토큰을 획득하는 것도 가능합니다.

  • 마지막으로, 이 방법은 권장되지는 않지만 공용 클라이언트 애플리케이션에서 사용자 이름 및 암호를 사용할 수 있습니다. 사용자 이름 및 암호를 사용하는 방법은 DevOps와 같은 몇 가지 시나리오에서 여전히 필요합니다. 이 방법을 사용하면 애플리케이션에 제한 사항이 적용됩니다. 예를 들어, 다단계 인증(조건부 액세스)을 수행해야 하는 사용자는 로그인할 수 없습니다. 애플리케이션에서 SSO(Single Sign-On)를 사용할 수 없습니다.

    이 흐름은 최신 인증 원칙에 반하며, 레거시 용도로만 제공됩니다.

    Desktop application

  • Linux 또는 Mac에서 실행되는 .NET 애플리케이션인 이식 가능한 명령줄 도구를 작성하고 인증을 수락하면 시스템 브라우저에 위임되는 경우 대화형 인증을 사용할 수 있습니다. .NET은 웹 브라우저를 제공하지 않으므로 시스템 브라우저에서 인증이 수행됩니다. 그렇게 하지 않을 경우 가장 좋은 옵션은 디바이스 코드 흐름을 사용하는 것입니다. 이 흐름은 IoT(사물 인터넷) 애플리케이션과 같이 브라우저가 없는 애플리케이션에도 사용됩니다.

    Browserless application

특수 적용 사항

데스크톱 애플리케이션에는 몇 가지 특성이 있습니다. 애플리케이션이 대화형 인증을 사용하는지 여부에 따라 달라집니다.

OAuth 2.0 및 OpenID Connect를 사용한 IAM(ID 및 액세스 관리)을 처음 접하거나 Microsoft ID 플랫폼에서 IAM을 처음 접하는 경우 다음 문서 집합을 먼저 읽어야 합니다.

첫 번째 빠른 시작 또는 자습서를 완료하기 전에 반드시 읽어야 하는 것은 아니지만 플랫폼에 필수적인 주제를 다루고 있으므로 숙지하면 보다 복잡한 시나리오를 빌드할 때 도움이 됩니다.

다음 단계

이 시나리오의 다음 문서인 앱 등록으로 이동합니다.