開発者は、 Microsoft Authentication Library (MSAL) によって強化されたソフトウェア開発に業界標準を十分に活用できます。 この記事では、 Microsoft ID プラットフォームでサポートされている標準とその利点の概要について説明します。 最適なセキュリティのために、クラウド アプリケーションがゼロ トラスト要件を満たしていることを確認します。
プロトコルはどうですか?
プロトコルを実装する場合は、すべてのベスト プラクティスで完全に最新のコードを記述し、セキュリティで保護された実装のための OAuth 2.0 のベスト プラクティスに従う時間を含むコストを考慮してください。 Microsoft Entra ID または Microsoft ID に直接ビルドする場合は、適切に管理されたライブラリ (MSAL を優先して) を使用します。
Microsoft Entra ID をビルドして使用できるように、MSALs を最適化します。 環境に MSAL がない場合、または独自のライブラリにロック解除された機能が含まれている場合は、Microsoft ID プラットフォームを使用してアプリケーションを開発します。 OAuth 2.0 の機能と OpenID Connect を基に構築します。 プロトコルに正しくフォールバックするコストを検討してください。
Microsoft ID プラットフォームが標準をサポートする方法
ゼロ トラストを最も効率的かつ効果的に実現するには、Microsoft ID プラットフォームがサポートする業界標準を使用してアプリケーションを開発します。
OAuth 2.0 と OpenID Connect
OAuth 2.0 では、承認のための業界プロトコルとして、ユーザーは保護されたリソースへの制限付きアクセスを許可できます。 OAuth 2.0 はハイパーテキスト転送プロトコル (HTTP) と連携して、クライアント ロールをリソース所有者から分離します。 クライアントはトークンを使用して、リソース サーバー上の保護されたリソースにアクセスします。
OpenID Connect コンストラクトを使用すると、Microsoft Entra 拡張機能でセキュリティを強化できます。 次の Microsoft Entra 拡張機能が最も一般的です。
- 条件付きアクセス認証コンテキスト を使用すると、アプリは細かいポリシーを適用して、アプリ レベルでのみではなく機密データとアクションを保護できます。
- 継続的アクセス評価 (CAE) を使用すると、Microsoft Entra アプリケーションは評価と適用のために重要なイベントをサブスクライブできます。 CAE には、無効または削除されたユーザー アカウント、パスワードの変更、トークン失効、検出されたユーザーなどの危険なイベント評価が含まれます。
アプリケーションで CAE や条件付きアクセス認証コンテキストなどの強化されたセキュリティ機能を使用する場合は、要求チャレンジを管理するためのコードを含める必要があります。 オープン プロトコルでは、要求チャレンジと要求要求を使用して他のクライアント機能を呼び出します。 たとえば、異常が原因で Microsoft Entra ID との対話を繰り返す必要があることをアプリに示します。 もう 1 つのシナリオは、ユーザーが以前に認証された条件を満たさなくなった場合です。 プライマリ認証コード フローを妨げることなく、これらの拡張機能のコードを作成できます。
セキュリティ アサーション マークアップ言語 (SAML)
Microsoft ID プラットフォームは SAML 2.0 を使用して、ゼロ トラスト アプリケーションでシングル サインオン (SSO) ユーザー エクスペリエンスを提供できるようにします。 Microsoft Entra ID の SSO と Single Sign-Out SAML プロファイルでは、ID プロバイダー サービスが SAML アサーション、プロトコル、バインディングを使用する方法について説明します。 SAML プロトコルでは、ID プロバイダー (Microsoft ID プラットフォーム) とサービス プロバイダー (アプリケーション) が自身に関する情報を交換する必要があります。 ゼロ トラスト アプリケーションを Microsoft Entra ID に登録すると、アプリケーションのリダイレクト URI とメタデータ URI を含むフェデレーション関連の情報を Microsoft Entra ID に登録します。
プロトコルよりも MSAL の利点
Microsoft は、Microsoft ID プラットフォーム用に MSALs を最適化し、SSO、トークン キャッシュ、および停止の回復性に最適なエクスペリエンスを提供します。 MS CAL が一般提供されるにつれて、言語とフレームワークの対象範囲が拡大し続けます。
MSAL を使用すると、Web アプリケーション、Web API、シングル ページ アプリ、モバイル アプリケーションとネイティブ アプリケーション、デーモン、サーバー側アプリケーションなどのアプリケーションの種類のトークンを取得します。 MSAL を使用すると、Microsoft Graph と API を介してユーザーとデータに安全にアクセスして、迅速かつ簡単に統合できます。 クラス最高の認証ライブラリを使用すると、あらゆる対象ユーザーにアクセスし、Microsoft セキュリティ開発ライフサイクルに従うことができます。
次のステップ
- Microsoft ID プラットフォーム認証ライブラリでは、 アプリケーションの種類のサポートについて説明します。
- ゼロ トラストの原則を使用した開発は、 アプリケーションのセキュリティを向上させるためにゼロ トラストの基本原則を理解するのに役立ちます。
- 「ゼロ トラスト ID およびアクセス管理の開発のベスト プラクティス」をアプリケーション開発ライフサイクルで使用して、セキュリティで保護されたアプリケーションを作成します。
- ID に対するゼロ トラスト アプローチを使用してアプリを構築すると 、アクセス許可とアクセスのベスト プラクティスの概要が提供されます。
- アプリケーションの登録、承認、アクセスに関する開発者と管理者の責任は、 IT 担当者との共同作業を改善するのに役立ちます。
- API Protection では、登録、アクセス許可と同意の定義、ゼロ トラスト目標を達成するためのアクセスの強制を通じて API を保護するためのベスト プラクティスについて説明します。
- 「トークンのカスタマイズ」では、Microsoft Entra トークンで受け取ることができる情報について説明しています。 トークンのカスタマイズによって、最小限の特権でアプリケーションのゼロ トラスト セキュリティを強化しながら、柔軟性と制御が向上する方法について説明します。
- トークンでのグループ要求とアプリ ロールの構成 では、アプリ ロール定義を使用してアプリを構成し、セキュリティ グループをアプリ ロールに割り当てる方法について説明します。 この方法では、最小限の特権でアプリケーションのゼロ トラスト セキュリティを強化しながら、柔軟性と制御が向上します。