この記事では、 ゼロ トラストの基本原則に対処するための開発者の観点からアプリケーションセキュリティの概要を説明します。 以前は、コードのセキュリティは自分のアプリに関するものでした。間違っていた場合、独自のアプリが危険にさらされていました。 現在、サイバーセキュリティは世界中のお客様や政府にとって最優先事項です。
サイバーセキュリティの要件への準拠は、多くの顧客や政府がアプリケーションを購入するための前提条件です。 アプリケーションは、顧客の要件を満たす必要があります。
クラウド セキュリティは、最も弱いリンクと同じくらい安全な組織インフラストラクチャの考慮事項です。 1 つのアプリが最も弱いリンクである場合、不適切なアクターはビジネス クリティカルなデータと操作にアクセスできます。
開発者の観点からのアプリケーション セキュリティには、ゼロ トラストアプローチが含まれます。アプリケーションはゼロ トラストの基本原則に対処します。 開発者は、脅威の状況とセキュリティ ガイダンスの変化に合わせて、アプリケーションを継続的に更新します。
コードでゼロ トラスト原則をサポートする
ゼロ トラスト原則に準拠するための 2 つのキーは、アプリケーションが明示的に検証し、最小限の特権アクセスをサポートする機能です。 アプリケーションでは、Microsoft Entra トークンを使用できるように、 ID とアクセス管理 を Microsoft Entra ID に委任する必要があります。 ID とアクセス管理を委任することで、アプリケーションは多要素認証、パスワードレス認証、条件付きアクセス ポリシーなどの顧客テクノロジをサポートできます。
Microsoft ID プラットフォームとゼロ トラスト対応テクノロジにより、Microsoft Entra トークンを使用すると、アプリケーションを Microsoft のセキュリティ テクノロジスイート全体と統合できます。
アプリケーションでパスワードが必要な場合は、顧客に回避可能なリスクにさらされている可能性があります。 悪意のあるアクターは、パスワード スプレー攻撃などのアクティビティを実行して企業データにアクセスする機会として、任意のデバイスで任意の場所から作業への移行を見る。 パスワード スプレー攻撃では、不適切なアクターは一連のユーザー アカウントで有望なパスワードを試みます。 たとえば、シアトルエリアのユーザー アカウントに対して GoSeaHawks2022! を試みる場合があります。 この成功した攻撃の種類は、パスワードレス認証の正当な理由の 1 つです。
Microsoft Entra ID からアクセス トークンを取得する
少なくとも、アプリケーションは、OAuth 2.0 アクセス トークン を発行する Microsoft Entra ID からアクセス トークンを取得する必要があります。 クライアント アプリケーションは、これらのトークンを使用して、ユーザーの代わりに API 呼び出しを介してユーザー リソースへの制限付きアクセスを取得できます。 アクセス トークンを使用して各 API を呼び出します。
委任された ID プロバイダーが ID を検証すると、顧客の IT 部門は、Microsoft Entra のアクセス許可と同意を使用して最小限の特権アクセスを強制できます。 Microsoft Entra ID は、アプリケーションにトークンを発行するタイミングを決定します。
アプリケーションがアクセスする必要がある企業リソースを顧客が理解すると、アクセス要求を正しく許可または拒否できます。 たとえば、アプリケーションが Microsoft SharePoint にアクセスする必要がある場合は、顧客が適切なアクセス許可を付与できるように、この要件を文書化します。
次のステップ
- 標準ベースの開発手法 では、サポートされている標準とその利点の概要が示されます。
- ID に対するゼロ トラスト アプローチを使用してアプリを構築すると 、アクセス許可とアクセスのベスト プラクティスの概要が提供されます。
- 「トークンのカスタマイズ」では、Microsoft Entra トークンで受け取ることができる情報について説明しています。 最小限の特権でアプリケーションのゼロ トラスト セキュリティを強化しながら、トークンをカスタマイズし、柔軟性と制御を向上させる方法について説明します。
- シングルテナント アプリとマルチテナント アプリでサポートされている ID とアカウントの種類 では、Microsoft Entra テナントのユーザー、Microsoft Entra テナントのユーザー、または個人用 Microsoft アカウントを持つユーザーのみをアプリで許可するかどうかを選択する方法について説明します。
- API 保護では、登録を通じて API を保護し、アクセス許可と同意を定義し、ゼロ トラストの目標を達成するためのアクセスを強制するためのベスト プラクティスについて説明します。
- 承認のベスト プラクティスは 、アプリケーションに最適な承認、アクセス許可、および同意モデルを実装するのに役立ちます。