次の方法で共有


Microsoft Entra OAuth Apps を使用した Azure DevOps の構築

重要

新しい OAuth 2.0 アプリを作成する場合は、Microsoft Entra OAuth アプリから始めます。 Azure DevOps OAuth アプリ は 2026 年に廃止される予定です。 詳しくは、ブログ記事をご覧ください

Microsoft Entra ID OAuth

Microsoft Entra ID は、独自のプラットフォームを持つ個別の Microsoft 製品です。 Microsoft Entra では、Azure テナントにアクセスするためのアプリケーションを登録し、Azure リソースから必要なアクセス許可を定義できます。その中で、Azure DevOps は 1 つと見なされます。

Microsoft Entra アプリと Azure DevOps アプリは、互いに知識のない個別のエンティティです。 アプリケーションを認証する手段は、Microsoft Entra OAuth と Azure DevOps OAuth とは異なります。 一つには、 Microsoft Entra ID OAuth アプリ は、Azure DevOps アクセス トークンではなく、Microsoft Entra トークンを発行します。 これらのトークンには、有効期限が切れる前の標準の 1 時間の期間があります。

Microsoft Entra で利用できる新しい機能と、セットアップ中にの期待を理解するには、Microsoft Entra のドキュメントを十分に読むことをお勧めします。

Microsoft Entra を選択する理由

主要な ID およびアクセス管理 (IAM) プロバイダーとして、 Microsoft Entra ID は、チーム メンバーを管理し、会社のリソースを保護する必要がある企業のニーズに焦点を当てています。 Microsoft Entra ID には多くの機能が用意されています。アプリケーションの開発と管理もその 1 つです。 Microsoft Entra アプリケーション モデルには、アプリ開発者にとってより魅力的な Azure DevOps OAuth アプリ モデルに比べ、いくつかの利点があります。

1. Microsoft の内外への広範なリーチ

Microsoft Entra でアプリを構築することで、Microsoft エコシステムの残りの部分を広く利用できます。 1 つの Microsoft Entra アプリを使用して複数の Microsoft 製品にアクセスできるため、アプリの資格情報の管理がはるかに簡単になります。 SaaS 製品を提供する Teams では、 Microsoft Entra アプリ ギャラリー内の他の一般的なアプリと共に表示される、事前に設定されたアプリケーションの作成を検討できます

2. 管理者の可視性、同意、管理の強化

信頼されたテナント管理者は 会社のリソースにアクセスするアプリ、組織内のユーザー、および同意を取得する方法を管理できます。 Azure DevOps OAuth はテナントまたはその管理者の知識を認識せず、機密性の高いデータへのアクセスを承認するためにユーザーのみに依存します。 以前に忘れ去られたアプリへのアクセスを承認したユーザーは、後で侵入する可能性のためにドアを開いたままにします。 管理者の監視は、適切なレビュー プロセスと、未使用または未承認のアプリの便利なクリーンアップを備えた追加の一連の目を提供します。

3. 条件付きアクセス制御の厳格

条件付きアクセス ポリシー ユーザーが Microsoft Entra アプリを使用して組織にアクセスできる、またはアクセスできない適切なアクセス制御を簡単に設定できるようにします。 Azure DevOps OAuth アプリは Microsoft Entra エコシステムの外部にあり、すべての条件付きアクセス ポリシーに準拠しているわけではありません。

4. セルフサービス アプリの構成

Microsoft Entra アプリでのアプリスコープとアプリの所有権の変更は、Azure DevOps OAuth アプリと比べて比較的簡単です。 アプリ開発者は、Azure DevOps OAuth アプリに変更を加えるためにカスタマー サポート チームに連絡しますが、Microsoft Entra ではスコープを変更する力が開発者に返されます。 アプリの所有権は、複数のユーザー間で共有することもでき、1 人のユーザーに限定されるわけではありません。これは、ユーザーが将来退職した場合に問題が発生する可能性があります。

5. 利用可能なサインイン ログ

Microsoft Entra すべての "サインイン" を Azure テナントに記録します。これには、内部アプリとリソースが含まれます。 この追加情報により、監査を通じて利用できないアプリを使用しているユーザーに関するより多くの洞察を得ることができます。

役立つリソース

新しいプラットフォームでのビルドは、圧倒的な可能性があります。 Microsoft Entra の OAuth アプリ開発プロセスに役立つと思われるいくつかの役に立つリンクが提供されています。 Azure DevOps OAuth から Microsoft Entra OAuth に切り替える開発者向けに、移行作業中に考慮すべき役立つヒントが提供されます。

開発者向けの優れたリソース

管理者向けの優れたリソース

ビルドと移行のヒント

Note

Microsoft Entra OAuth アプリは、Azure DevOps REST API の MSA ユーザーをネイティブにサポートしていません。 MSA ユーザーに対応する必要があるアプリを構築する場合、または Microsoft Entra と MSA の両方のユーザーをサポートする場合は、 Azure DevOps OAuth アプリ が最適なオプションです。 現在、Microsoft Entra OAuth を通じて MSA ユーザーのネイティブ サポートに取り組んでいます。

  • よく知っている Azure DevOps ID:
    • Microsoft Entra リソース識別子: 499b84ac-1321-427f-aa17-267ca6975798
    • リソース URI: https://app.vssps.visualstudio.com
    • アプリがアクセス許可を持つすべてのスコープでトークンを要求する場合は、 .default スコープを使用します。
  • 既存のアプリを移行するときに、Microsoft Entra に存在しない Azure DevOps ユーザー識別子を使用している可能性があります。 ReadIdentities API を使用して、各 ID プロバイダーで使用されているさまざまな ID を解決して照合します。

Microsoft Entra のアプリ専用フロー

Microsoft Entra OAuth は、同意したユーザーに代わって Azure DevOps サービスにアクセスするためのアプリを構築するための推奨ソリューションです。

それ自体に代わって動作するアプリケーションを構築する場合は、 サービス プリンシパルのサポートに関するドキュメントを参照してください。 これらのドキュメントでは、独自のアクセス許可のみに依存するのではなく、組織のリソースに対するアクションにユーザーのアクセス許可に依存しないサービス プリンシパルまたはマネージド ID を設定する方法について詳しく説明します。 この認証メカニズムは、チーム用の自動ツールを構築するための推奨認証です。