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

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

利用可能な API

パートナー支払いで利用可能なすべての api を参照してください。

[前提条件]

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

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

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

    アカウントで複数のテナントへのアクセスが許可されている場合は、右上隅でアカウントを選択し、ポータルセッションを適切な Azure AD テナントに設定します。

  2. 左側のナビゲーションウィンドウで、Azure Active Directory サービスを選択し、[アプリの登録]、[新しい登録] の順にクリックします。 [アプリケーションの登録] ページが表示されます。

    Azure portal にアプリの登録画面を示すスクリーンショット。

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

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

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

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

    <alt text>

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

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

次の表に、さまざまな種類のアプリ用に構成してコピーする必要があるプロパティを示します。 割り当て られた場合、Azure AD によって割り当てられた値を使用する必要があります。

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

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

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

注意

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

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

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

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

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

注意

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

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

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

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

    テストアプリケーションのロールの割り当てを追加するためのユーザーインターフェイスを示すスクリーンショット。

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

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

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

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

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

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

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

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

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

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

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

AAD アプリ経由のパートナーセンター API への API アクセスに対する同意

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

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

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

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

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

  4. Api に対する 管理者の同意 を付与します。

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

    管理者の同意ステータス画面で [管理者の同意] が有効になっていることを確認します。

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

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

    [パブリッククライアントフローを許可する] が [はい] に設定されている認証画面を示すスクリーンショット。

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

api を使用して支払いとトランザクションの履歴を確認する方法を示すサンプルコードは、パートナーセンターの GitHub リポジトリに含まれています。

サンプルコードのメモ

  • 「認証: Azure portal でのサービスプリンシパルの作成方法 」の「2つのオプション」セクションを参照してください。
  • 多要素認証 (MFA) を持つアカウントは現在サポートされていないため、エラーが発生します。
  • 支払い API では、ユーザー/パスワードベースの資格情報のみがサポートされます。

次の手順