支払いサービス API を使用して支払いを管理する

この記事では、パートナー センター UI ではなく、支払いサービス API を使用して支払いデータにアクセスする方法について説明します。 これらの API は、パートナー センターでデータのエクスポート機能の機能を提供するプログラムによる方法を提供します。

重要

Azure Active Directory (Azure AD) Graph は、2023 年 6 月 30 日の時点で非推奨となっています。 今後、Azure AD Graph への投資は行いません。 Azure AD Graph API には、セキュリティ関連の修正プログラムを超える SLA またはメインテナント コミットメントはありません。 新機能への投資は Microsoft Graph に対してのみ行われます。

アプリケーションを Microsoft Graph API に移行するのに十分な時間を確保できるように、段階的な手順で Azure AD Graph を廃止します。 後日お知らせしますが、Azure AD Graph を使用して新しいアプリケーションの作成をブロックします。

詳細については、「重要: Azure AD Graph の廃止と PowerShell モジュールの廃止」を参照してください

利用可能な API

利用可能なすべての API については、パートナーの支払い参照してください。

前提条件

Microsoft ID プラットフォームにアプリケーションを登録する

Microsoft ID プラットフォームを利用して構築されたアプリケーションでは、ユーザーや顧客は自分の Microsoft ID やソーシャル アカウントを使ってサインインでき、独自の API や Microsoft Graph などの Microsoft API への承認されたアクセスを提供できます。

  1. 職場または学校アカウントか、個人の Microsoft アカウントを使用して、Azure portal にサインインします。

    アカウントから複数のテナントにアクセスできる場合は、右上隅にあるアカウントを選択し、ポータル セッションを正しい Microsoft Entra テナントに設定します。

  2. 左側のナビゲーション ウィンドウで、Microsoft Entra サービスを選択し、アプリの登録し、[新規登録] を選択します[アプリケーションの登録] ページが表示されます。

    Screenshot showing the Register an app screen in the Azure portal.

  3. アプリケーションの登録情報を入力します。

    • 名前: アプリのユーザーに表示されるわかりやすいアプリケーション名を入力します。
    • サポートされているアカウントの種類: アプリケーションでサポートするアカウントを選択します。
    サポートされているアカウントの種類 説明
    この組織ディレクトリ内のアカウントのみ 基幹業務 (LOB) アプリケーションを作成している場合は、このオプションを選択します。 アプリケーションをディレクトリに登録していない場合、このオプションは選択できません。 このオプションは、Microsoft Entra 専用のシングル テナントにマップされます。 このオプションは、ディレクトリの外部にアプリを登録している場合を除き、既定です。 アプリがディレクトリの外部に登録されている場合、既定は Microsoft Entra マルチテナントアカウントと個人の Microsoft アカウントです。
    任意の組織のディレクトリ内のアカウント 企業および教育機関のすべてのユーザーを対象とする場合は、このオプションを選択します。 このオプションは、Microsoft Entra 専用マルチテナントにマップされます。 アプリを Microsoft Entra 専用シングルテナントとして登録した場合は、[認証] ブレードを使用して、アプリを Microsoft Entra マルチテナントに更新し、シングルテナントに戻すことができます。
    任意の組織ディレクトリおよび個人の Microsoft アカウントでのアカウント このオプションを選択して、最も幅広い顧客を対象にします。 このオプションは、Microsoft Entra マルチテナントおよび個人用 Microsoft アカウントにマップされます。 アプリを Microsoft Entra マルチテナントアカウントおよび個人用 Microsoft アカウントとして登録した場合、UI でこの選択を変更することはできません。 代わりに、アプリケーション マニフェスト エディターを使用してサポートされているアカウント タイプを変更する必要があります。
    • (省略可能) リダイレクト URI: ビルドするアプリの種類、Web またはパブリック クライアント (モバイルとデスクトップ) を選択し、アプリケーションのリダイレクト URI (または応答 URL) を入力します。 (リダイレクト URL は、ユーザーの認証後に認証応答が送信される場所です)。

      Web アプリケーションの場合は、アプリのベース URL を指定します。 ローカル マシンで実行されている Web アプリの URL であれば、たとえば http://localhost:31544 のようになります。 ユーザーはこの URL を使用して、Web クライアント アプリケーションにサインインすることになります。 パブリック クライアント アプリケーションの場合は、トークン応答を返すために Microsoft Entra ID によって使用される URI を指定します。 アプリケーション固有の値 (たとえば、myapp://auth) を入力します。

  4. 登録 を選択します。 Microsoft Entra ID によって一意のアプリケーション (クライアント) ID がアプリケーションに割り当てられ、アプリケーションの概要ページが読み込まれます。

    <alt text>

  5. アプリケーションに機能を追加する場合は、ブランド化、証明書とシークレット、API のアクセス許可など、他の構成オプションを選択できます。

プラットフォーム固有のプロパティ

次の表に、さまざまな種類のアプリの構成とコピーに必要なプロパティを示します。 割り当て済み とは、Microsoft Entra ID によって割り当てられた値を使用する必要があることを意味します。

アプリの種類 プラットフォーム アプリケーション (クライアント) ID クライアント シークレット リダイレクト URI/URL 暗黙的なフロー
ネイティブ/モバイル ネイティブ 割り当て済み いいえ 割り当て済み いいえ
Web アプリ Web 割り当て済み はい はい オプションの OpenID Connect ミドルウェアでは、既定でハイブリッド フローが使用されます (はい)
シングル ページ アプリ (SPA) Web 割り当て済み はい はい はい SPA で OpenID Connect 暗黙的フローを使用する
サービス/デーモン Web 割り当て済み はい はい いいえ

サービス プリンシパルの作成

サブスクリプション内のリソースにアクセスするには、アプリケーションにロールを割り当てる必要があります。 アプリケーションに適切なアクセス許可を提供するロールの決定については、Azure の組み込みロールに関するページを参照してください

Note

スコープは、サブスクリプション、リソース グループ、またはリソースのレベルで設定できます。 アクセス許可は、スコープの下位レベルに継承されます。 たとえば、アプリケーションをリソース グループの閲覧者ロールに追加すると、そのリソース グループと、その中にあるどのリソースも読み取りができることになります。

  1. Azure portal で、アプリケーションを割り当てるスコープのレベルを選択します。 たとえば、サブスクリプション スコープでロールを割り当てるには、サブスクリプションを検索して選択するか、ホーム ページで [サブスクリプション] を選択します。

    Screenshot showing the Subscriptions screen search.

  2. アプリケーションを割り当てるサブスクリプションを選択します。

    Screenshot showing the Subscriptions screen with Internal Testing flag set to true.

Note

探しているサブスクリプションが表示されない場合は、グローバル サブスクリプション フィルターを選択し、ポータルに必要なサブスクリプションが選択されていることを確認します。

  1. [アクセス制御 (IAM)] を選択したら、[ロール割り当ての追加] を選択します。

  2. アプリケーションに割り当てるロールを選択します。 たとえば、インスタンスの再起動、開始、停止などのアクションをアプリケーションで実行できるようにするには、[共同作成者] ロールを選択します。 使用可能なロールについて詳しくは、こちらをご覧ください。

    既定では、Microsoft Entra アプリケーションは、使用可能なオプションに表示されません。 アプリケーションを検索するには、名前を検索し、結果から選択します。 次のスクリーンショットは、 example-app 登録した Microsoft Entra アプリです。

    Screenshot showing the user interface for adding a role assignment for a test application.

  3. [保存] を選択します。 その後、そのスコープのロールを持つユーザーの一覧にアプリケーションを表示できます。

    サービス プリンシパルを使用してスクリプトまたはアプリを実行できます。 サービス プリンシパルのアクセス許可を管理するには、ユーザーの同意状態の確認、アクセス許可の確認、サインイン情報の表示など)、Azure portal でエンタープライズ アプリケーションを表示します。

API のアクセス許可を設定する

このセクションでは、必要な API アクセス許可を設定する方法について説明します。 パートナー センター API のアクセス許可の設定の詳細については、「パートナー API 認証」を参照してください

Graph API にアクセス許可を付与する

  1. Azure portal で [アプリの登録] を開きます。

  2. アプリケーションを選択するか 、まだアプリがない場合は作成 します。

  3. アプリケーションの [概要] ページで、[管理] で [API のアクセス許可] を選択し、[アクセス許可の追加] を選択します

  4. 利用可能な API の一覧から [Microsoft Graph] を選択します。

  5. [委任されたアクセス許可] を選択し、必要なアクセス許可を追加します。 詳細については、「アプリ アクセスの構成」を参照してください

    Screenshot showing the request permissions screen in the Azure portal with Microsoft Graph selected.

Microsoft Entra アプリを使用したパートナー センター API への API アクセスへの同意

  1. アプリケーションの場合は、API のアクセス許可を選択し、[API のアクセス許可の要求] 画面で [アクセス許可の追加] を選択し、組織が使用する API を選択します。

  2. Microsoft Partner (Microsoft デベロッパー センター) API (4990cffe-04e8-4e8b-808a-1175604b879f) を検索します。

    Screenshot showing the API permissions screen with Microsoft Partner selected.

  3. 委任されたアクセス許可をパートナー センターに 設定します

    Screenshot showing the Delegated Permissions selected for Partner Center in the Request API permissions screen.

  4. API 管理同意を付与します。

    Screenshot showing the toggle for Admin Consent on the API permissions screen.

    管理同意の状態画面で、管理同意が有効になっていることを確認します。

    Screenshot showing the Admin consent status screen

  5. [認証] セクションで、[パブリック クライアント フローを許可する] オプションが [はい] に設定されていることを確認します。

    Screenshot showing the Authentication screen with Allow public client flows set to Yes.

Visual Studio でサンプル コードを実行する

支払いとトランザクション履歴に API を使用する方法を示すサンプル コードは 、パートナー センター-Payout-API GitHub リポジトリにあります。

サンプル コードノート

次のステップ