シナリオ:Web API を呼び出すモバイル アプリケーションScenario: Mobile application that calls web APIs

Web API を呼び出すモバイル アプリを構築する方法について説明します。Learn how to build a mobile app that calls web APIs.

作業の開始Getting started

初めてのアプリケーションをまだ作成していない場合は、次のクイック スタートを完了して作成してください:If you haven't already, create your first application by completing a quickstart:

概要Overview

パーソナライズされたシームレスなユーザー エクスペリエンスはモバイル アプリにとって必要不可欠です。A personalized, seamless user experience is essential for mobile apps. Microsoft ID プラットフォームを使用すると、モバイル開発者は iOS および Android のユーザーに対してこのエクスペリエンスを作り出すことができます。The Microsoft identity platform enables mobile developers to create that experience for iOS and Android users. アプリケーションで、Azure Active Directory (Azure AD) ユーザー、個人の Microsoft アカウント ユーザー、Azure AD B2C ユーザーをサインインさせることができます。Your application can sign in Azure Active Directory (Azure AD) users, personal Microsoft account users, and Azure AD B2C users. また、ユーザーに代わって Web API を呼び出すためのトークンを取得することもできます。It can also acquire tokens to call a web API on their behalf. これらのフローを実装するには、Microsoft Authentication Library (MSAL) を使用します。To implement these flows, we'll use the Microsoft Authentication Library (MSAL). MSAL では、業界標準の OAuth 2.0 承認コード フローを実装しています。MSAL implements the industry standard OAuth2.0 authorization code flow.

デーモン アプリ

モバイル アプリに関する考慮事項:Considerations for mobile apps:

  • ユーザー エクスペリエンスが重要:ユーザーにサインインを要求する前に、アプリの価値がわかるようにします。User experience is key: Allow users to see the value of your app before you ask for sign-in. 必要なアクセス許可のみを要求します。Request only the required permissions.
  • すべてのユーザー構成をサポート:多くのモバイル ビジネス ユーザーは、条件付きアクセス ポリシーとデバイス コンプライアンス ポリシーに従う必要があります。Support all user configurations: Many mobile business users must adhere to conditional-access policies and device-compliance policies. 必ずこれらの重要なシナリオをサポートしてください。Be sure to support these key scenarios.
  • シングル サインオン (SSO) の実装:MSAL と Microsoft ID プラットフォームを使用すると、デバイスのブラウザーまたは Microsoft Authenticator (および Android の Intune ポータル サイト) を介したシングル サインオンを実現できます。Implement single sign-on (SSO): By using MSAL and Microsoft identity platform, you can enable single sign-on through the device's browser or Microsoft Authenticator (and Intune Company Portal on Android).
  • 共有デバイス モードの実装: 病院、製造、小売、財務などの共有デバイス シナリオで、アプリケーションを使用できるようにします。Implement shared device mode: Enable your application to be used in shared-device scenarios, for example hospitals, manufacturing, retail, and finance. 共有デバイス モードのサポートに関する詳細をご覧くださいRead more about supporting shared device mode.

詳細Specifics

Microsoft ID プラットフォームでモバイル アプリを構築するときは、以下の考慮事項を念頭に置いてください。Keep in mind the following considerations when you build a mobile app on Microsoft identity platform:

  • プラットフォームによっては、ユーザーが初めてサインインするときにユーザーの操作が必要になる場合があります。Depending on the platform, some user interaction might be required the first time that users sign in. たとえば iOS では、Microsoft Authenticator (および Android の Intune ポータル サイト) を介して初めて SSO を使用するときに、アプリでユーザーの操作を表示する必要があります。For example, iOS requires apps to show user interaction when they use SSO for the first time through Microsoft Authenticator (and Intune Company Portal on Android).
  • iOS および Android 上の MSAL で、外部ブラウザーを使用してユーザーをサインインさせることができます。On iOS and Android, MSAL might use an external browser to sign in users. 外部ブラウザーをアプリ上に表示できます。The external browser might appear on top of your app.
  • モバイル アプリケーションでは、シークレットは決して使用しないでください。Never use a secret in a mobile application. これらのアプリケーションでは、すべてのユーザーがシークレットにアクセスできます。In these applications, secrets are accessible to all users.

OAuth 2.0 と OpenID Connect を使用した ID およびアクセス管理 (IAM) を初めて使用する場合、または Microsoft ID プラットフォームの IAM を初めて使用する場合は、次の一連の記事をお読みください。If you're new to identity and access management (IAM) with OAuth 2.0 and OpenID Connect, or even just new to IAM on the Microsoft identity platform, the following set of articles should be high on your reading list.

これらは、最初のクイックスタートまたはチュートリアルを完了する前に読む必要はありませんが、プラットフォームに不可欠なトピックについて説明しており、これらをよく知ると、より複雑なシナリオを構築する際に役立ちます。Although not required reading before completing your first quickstart or tutorial, they cover topics integral to the platform, and familiarity with them will help you on your path as you build more complex scenarios.

次のステップNext steps

このシナリオの次の記事「アプリの登録」に進みます。Move on to the next article in this scenario, App registration.