この記事では、PaaSのウェブおよびモバイルアプリケーションのセキュリティを守るためのAzure App Serviceのセキュリティベストプラクティスをまとめて紹介します。 MicrosoftはこれらのベストプラクティスをAzureおよびAzureの顧客との経験から導き出しました。
Azure App Serviceは、あらゆるプラットフォームやデバイス向けにウェブやモバイルアプリを作成し、クラウドやオンプレミスからどこでもデータに接続できるプラットフォーム・アズ・ア・サービス(PaaS)を提供するサービスです。 App Service には、以前に Azure Websites と Azure Mobile Services として個別に提供されていた Web とモバイルの機能が含まれています。 さらに、ビジネス プロセスの自動化やクラウド API のホストに利用できる新しい機能も備えています。 単一の統合サービスである App Service により、Web、モバイル、および統合シナリオで豊富な機能セットを利用できます。
Microsoft Entra IDによる認証
App Service は、ID プロバイダーに対して OAuth 2.0 サービスを提供します。 OAuth 2.0 は、Web アプリケーション、デスクトップ アプリケーション、および携帯電話に特定の認証フローを提供しながら、クライアント開発者のシンプル性を実現することに焦点を当てています。 Microsoft Entra IDは、OAuth 2.0 を使用して、モバイル アプリケーションと Web アプリケーションへのアクセスを承認できるようにします。 詳細については、「Azure App Serviceの認証と認可」をご覧ください。
役割に基づいてアクセスを制限する
アクセスの制限は、データ アクセスにセキュリティ ポリシーを適用する必要がある組織にとって、絶対に欠かせないものです。 Azure ロールベースアクセス制御(Azure RBAC)を使って、ユーザー、グループ、アプリケーションに、必要性の知る必要性や最小権限のセキュリティ原則などの特定の範囲で権限を割り当てます。 アプリケーションへのアクセス許可についての詳細は、「Azure role-based access control(Azure RBAC)とは何か」をご覧ください。
キーを保護します
サブスクリプション キーを紛失してしまえば、いかにセキュリティが優れていても関係ありません。 Azure Key Vaultは、クラウド アプリケーションとサービスで使用される暗号化キーとシークレットを保護するのに役立ちます。 Key Vaultを使うことで、認証鍵、ストレージアカウント鍵、データ暗号化鍵など、鍵や秘密を暗号化できます。ハードウェアセキュリティモジュール(HSM)によって保護されたキーを用いてPFXファイルやパスワードを取得できます。 さらに安心感を高めたい場合には、HSM でキーのインポートや生成を行うことができます。 Key Vaultを使用して、自動更新で TLS 証明書を管理することもできます。 詳細については、「Azure Key Vaultとは何か」をご覧ください。
受信ソース IP アドレスを制限します
App Service Environments には、ネットワークセキュリティグループ(NSG)を通じて受信元のIPアドレスを制限する仮想ネットワーク統合機能があります。 Azure仮想ネットワーク(VNet)に馴染みがない方のために説明すると、多くのAzureリソースをインターネットでないルーティング可能なネットワークに配置し、そのアクセスを自分で管理できます。 詳細については、「アプリを Azure 仮想ネットワークと統合する」を参照してください。
Windows上の App Service の場合は、web.configを構成して IP アドレスを動的に制限することもできます。詳細については、「Dynamic IP Security」を参照してください。
次のステップ
この記事では、PaaS の Web アプリケーションとモバイル アプリケーションをセキュリティ保護するための、App Service の一連のセキュリティ ベスト プラクティスについて説明しました。 PaaS デプロイのセキュリティ保護の詳細については、次のリンク先をご覧ください。
- PaaS デプロイのセキュリティ保護
Azure