次の方法で共有


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

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

重要

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 を使用して新しいアプリケーションの作成をブロックします。

詳細については、「 Important: 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 サービスを選択し、アプリの登録してから、[新規登録[アプリケーションの登録] ページが表示されます。

  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 がアプリケーションに割り当てられ、アプリケーションの概要ページが読み込まれます。

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

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

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

Note

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

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

    [サブスクリプション] 画面の検索を示すスクリーンショット。

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

    [内部テスト] フラグが true に設定されている [サブスクリプション] 画面を示すスクリーンショット。

    Note

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

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

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

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

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

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

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

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

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

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

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

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

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

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

    Microsoft Graph が選択されている Azure portal の [アクセス許可の要求] 画面を示すスクリーンショット。

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

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

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

    Microsoft Partner が選択された [API のアクセス許可] 画面を示すスクリーンショット。

  8. 委任されたアクセス許可を Partner Center に設定します。

    [API のアクセス許可の要求] 画面でパートナー センターに対して選択された委任されたアクセス許可を示すスクリーンショット。

  9. API に Admin 同意 を付与します。

    [API のアクセス許可] 画面の [管理者の同意] の切り替えを示すスクリーンショット。

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

    管理者の同意の状態画面を示すスクリーンショット

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

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

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

サンプル コードノート

  • 「認証: Azure portal でサービス プリンシパルを作成する方法 の 2 つのオプション」セクションで説明されているように、クライアント シークレットと証明書の構成は必要ありません。
  • 多要素認証 (MFA) を持つアカウントは現在サポートされていないため、エラーが発生します。
  • Payout API では、ユーザー/パスワードベースの資格情報のみがサポートされます。