0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

Microsoft ソーシャル認証の Publisher Verification が通らない -- カスタムドメイン・Partner Center・テナントとドメインの罠まで全部やった記録

0
Posted at

はじめに

Microsoft アカウントでのソーシャル認証(OAuth)をアプリに組み込んだ。

ms_sample.png

これには Azure AD(Entra ID)でアプリを登録して、OAuth のクライアント ID を発行する必要がある。

ところが、ユーザーに同意画面を出すと「未確認の発行元」と表示される。これを消すには Azure AD 側で Publisher Verification(発行元の確認)を完了させる必要がある。

「MPN ID 入れるだけでしょ」と思っていたら、1週間以上かかった。ドメイン問題、Partner Center の審査、そしてテナントと MPN のドメイン不一致という罠。同じ道を歩む人のために、全工程を記録しておく。

最初に知っておくべきこと: テナントと MPN のドメインは一致させろ

先に結論を書く。Publisher Verification で一番ハマるのは Azure AD テナントのドメインと Partner Center(MPN)のドメインが一致していない パターン。

登場人物の整理

まず、Publisher Verification に関わる3つの要素を整理する。

この3つはそれぞれ独立した設定だが、Publisher Verification の実行時に ドメインの一致チェック が走る。

通るパターン・通らないパターン

以下の3つが すべて同じカスタムドメイン でないと通らない。

確認ポイント 設定場所 揃えるドメイン
テナントの検証済みドメイン Entra ID > Domain names example.com
アプリの Publisher Domain Entra ID > App registrations > Branding example.com
Partner Center の Primary contact Partner Center > Account settings admin@example.com

テナントに todoonada.co.jp を登録して Partner Center も todoonada.co.jp のアカウントで登録したのに、アプリの Publisher Domain が example.app だと通らない。逆もまた然り。

最初からカスタムドメインベースでテナントを作り、同じドメインのアカウントで Partner Center に登録する。 これが遠回りに見えて一番の近道。

Publisher Verification とは

「Microsoft でログイン」を実装すると、ユーザーに OAuth の同意画面が表示される。Publisher Verification は、この同意画面に表示されるアプリの発行元(組織)が本物であることを Microsoft が確認する仕組み。完了すると青いバッジが表示され、ユーザーが安心してログインできるようになる。

項目 未確認の状態 確認済みの状態
同意画面の表示 「未確認の発行元」と警告 青いバッジ + 組織名
マルチテナントアプリ 管理者の同意が必要な場合あり 同意フローがスムーズ
ユーザーの信頼度 低い 高い

前提条件

  • Microsoft ソーシャル認証(OAuth)用に Azure AD(Entra ID)でアプリ登録済み
  • 独自ドメインを持っている
  • Microsoft Partner Center に登録可能な法人

全体の流れ

やることは多い。先に全体像を把握しておく。

Phase 作業内容 所要時間の目安
1 カスタムドメインを Azure AD に登録 30分〜1時間
2 Partner Center(MPN)に登録 1〜2時間
3 Account Verification(審査通過) 3〜7営業日
4 Publisher Verification 実行 10分

審査待ちの時間が大半。手を動かす作業自体はそこまで多くない。

Phase 1: カスタムドメインを Azure AD に登録する

なぜ必要か

Publisher Verification は onmicrosoft.com ドメインでは実行できない。

The application publisher domain is set to xxxx.onmicrosoft.com,
but onmicrosoft.com publisher domains are not allowed.
Please use a custom domain in order to proceed.

このエラーが出たら、まずカスタムドメインの追加から始める。

手順

1. Entra ID でカスタムドメインを追加

  1. Azure Portal にサインイン
  2. Microsoft Entra ID > Custom domain names > Add custom domain
  3. 自社ドメイン(例: example.com)を入力

2. DNS に TXT レコードを追加

Azure が検証用の TXT レコードを表示する。DNS プロバイダ(Cloudflare、Route 53 など)に追加。

Type:  TXT
Name:  @
Value: MS=msXXXXXXXX  (Azure が指定する値)
TTL:   Auto(または 3600)

3. ドメインを確認・プライマリに設定

DNS が浸透したら Azure 側で Verify をクリック。確認後、Make primary でプライマリドメインに設定する。

4. アプリの Publisher Domain を変更

  1. App registrations > 対象アプリ > Branding & properties
  2. Publisher domain をカスタムドメインに変更

Phase 2: Microsoft Partner Center に登録する

Publisher Verification には Microsoft Partner Network(MPN)ID が必要。これは Partner Center に登録すると取得できる。

ユーザーの準備

Partner Center の登録には、カスタムドメインのメールアドレスが必要。onmicrosoft.com アカウントで登録しようとしたら、リスク審査でブロックされた。

  1. Entra ID でカスタムドメインのユーザーを作成(例: admin@example.com
  2. Global Administrator ロールを付与

Partner Center 登録

  1. partner.microsoft.com にカスタムドメインのアカウントでサインイン
  2. 会社情報を入力して登録
入力項目 内容
会社名 法人の正式名称
住所 登記住所(英語表記)
Primary contact カスタムドメインのメールアドレス
電話番号 法人の電話番号

MPN ID の確認

登録完了後、Account settings > Identifiers で Partner ID を確認する。

Partner ID(PartnerGlobal): 70XXXXX  ← Publisher Verification にはこちらを使う
Partner ID(PartnerLocation): 70XXXXX

PartnerGlobal の方の ID を控えておく。

Phase 3: Account Verification(審査)を通過する

Partner Center 登録後、Microsoft による審査が始まる。ここが一番時間がかかる。

審査の3ステップ

ステップ 内容 所要時間
Email Verification 確認メールのリンクをクリック 即日
Identity Verification 本人確認(身分証 + 顔認証) 即日〜7営業日
Employment Verification 在籍確認・書類提出 即日〜7営業日

Email Verification

Microsoft から確認メールが届く。リンクをクリックするだけ。

注意: リンクは Partner Center にサインイン中のブラウザで開くこと。有効期限が短い。

Identity Verification(本人確認)

Action Center > Complete identity verification > Take action で進める。

本人確認は Microsoft Authenticator アプリ(スマホ)を使って行う。流れは以下の通り。

  1. Partner Center の画面に QR コードが表示される
  2. スマホの Microsoft Authenticator アプリで QR コードを読み取る
  3. 運転免許証(またはパスポート等の身分証)を撮影してアップロード
  4. 顔認証(セルフィー)を撮影して送信
  5. 身分証の写真と顔認証が一致するか自動判定される

Authenticator アプリを事前にインストールしておくとスムーズ。自分の場合は即日で通った。

Employment Verification(在籍確認)

ここが最大の関門。Microsoft から追加書類を求められることがある。

要求例: ドメイン登録の領収書
必要情報:
  - ドメイン名
  - 所有者名(法人名)
  - 登録日
  - 登録期間
  - レジストラ名
  - 有効期限(2ヶ月以上先であること)

ドメインのレジストラ(Google Domains、お名前.com、Cloudflare Registrar など)から請求書や登録確認書をダウンロードして提出する。

提出タイプは Domain purchase invoices or registry confirmation records を選択。

審査が却下された場合

1回で通らないこともある。その場合:

  • Primary contact のメールアドレスがカスタムドメインになっているか確認
  • 書類の情報と Partner Center の登録情報が一致しているか確認
  • 修正して再申請

Phase 4: Publisher Verification を実行する

審査が通ったら、いよいよ Publisher Verification を設定する。

  1. Azure Portal > App registrations > 対象アプリ
  2. Branding & properties > Add MPN ID to verify publisher(または同等のリンク)
  3. Partner Center で取得した PartnerGlobal の MPN ID を入力
  4. Verify and save

成功すると、同意画面に青い「Verified」バッジが表示される。

MPN ID 入力時のエラーと対処

「ドメインが一致しません」エラー

パートナーセンターでメールによる確認を行うために使用するドメインが、
アプリケーションの発行元ドメインまたはテナント上のいずれの
検証済みドメインとも一致しません。

原因: Partner Center に登録したドメインと、アプリの Publisher Domain が異なる。

対処: 以下のすべてが同じドメインである必要がある。

確認ポイント 設定場所
アプリの Publisher Domain Entra ID > App registrations > Branding
Partner Center の Primary contact メール Partner Center > Account settings
Entra ID の検証済みドメイン Entra ID > Domain names

3つのドメインが揃わない場合、新テナントを作成してやり直すのが最も確実。

「MPN ID does not exist」エラー

Partner Center のアカウントと Azure AD テナントが紐づいていない可能性がある。Partner Center にサインインしているアカウントが、対象アプリと同じテナントに属しているか確認する。

ハマりポイントまとめ

事象 原因 対応
onmicrosoft.com で Publisher Verification 不可 Microsoft の仕様。カスタムドメイン必須 Entra ID にカスタムドメインを追加
Partner Center 登録がブロックされる onmicrosoft.com アカウントだとリスク審査で引っかかる カスタムドメインのアカウントで登録
Employment Verification で却下 Primary contact のドメインが不一致 カスタムドメインのメールに変更して再申請
MPN ID 入力で「ドメイン不一致」 Partner Center と Publisher Domain のドメインが違う テナント・Partner Center・アプリのドメインを統一
MPN ID が "does not exist" テナント間の不一致 同一テナントのアカウントで Partner Center に登録

まとめ

Publisher Verification は「MPN ID を入れるだけ」のはずが、実際にはカスタムドメイン、Partner Center 審査、ドメイン一致の3つの壁がある。

冒頭にも書いたが、一番大事なのは テナント・Partner Center・アプリのドメインを最初から揃えておくこと。ここがズレていると、審査を通過した後に「ドメインが一致しません」で振り出しに戻る。

これから Publisher Verification をやる人は、Phase 1 のカスタムドメイン追加の時点で「このドメインで Partner Center も登録する」と決めてから進めてほしい。

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?