Azure Managed Service Column <Azure運用コラム>

Azure AD(Azure Active Directory)を活用してシングルサインオンを実現するアプリケーション管理

Category: 実践編

2022.11.17

アプリ開発者のアカウント管理負担の軽減や効率化、生産性の向上にはAzure ADのアプリケーション管理機能を活用しよう

Azure AD を利用してアプリケーション管理をする目的は様々ありますが、複数のアプリケーションへのシングルサインオンを実現したいという目的を持っている場合が多いのではないでしょうか。

アプリケーションには、 SaaS 型のクラウドサービスや PaaS 型の Web アプリケーション、 laaS 型の仮想マシンなどがあり、それぞれ独自のユーザー名やパスワードを使用していると、複数のアプリにまたがってユーザーの追加や削除をする場合、管理上の負担が大きくなります。

Azure AD ではクラウド内の ID 情報を一元化することで、シングルサインオンを実現できる機能を提供しています。本記事では、アプリケーション開発者を対象に承認・認証を簡略化し、コーディングを迅速に開始できるように Azure AD が提供するアプリ登録やアプリ連携について解説し、シングルサインオンの実現方法について解説します。

1.Azure ADのアプリケーション管理とは

従来、企業で使用するアプリケーションはオンプレミス環境で構築され、社内のネットワークに限定したアクセス制限や接続デバイスの管理をするだけで十分でした。しかし近年、テレワークの普及や SaaS をはじめとしたクラウドサービスの利用拡大を背景に、社外からのアクセスに対するユーザーの認証認可が必要となってきています。

さらに、一度サインインすると複数のアプリケーションへのアクセスを可能とするシングルサインオンの実現ができると、ビジネスに寄与する生産性の向上につなげられます。

開発者はオンプレミスやクラウドなど複数のアプリケーションを効率的に管理する仕組みを、アプリ開発時に実装する必要があります。

Azure ADを活用してできるアプリケーション管理とは

Azure AD は、アプリーションを開発するうえで必要となる各種アプリケーションへのアクセス管理や一元管理を実現する多くの機能やライブラリを提供しています。

独自で作成したアプリケーションを Azure AD に登録させると、一度サインインするだけで開発者が作成した他のアプリへもアクセスできるようになり、アプリケーションの作成やトラブルシュート時に活用することが可能です。

Azure AD(Azure Active Directory)を活用してシングルサインオンを実現するアプリケーション管理

図版出典:Microsoft 公式サイト

Azure AD が提供するアプリケーション管理の方法はいくつかありますが、独自でアプリケーションを開発する場合、第一歩として Azure AD へのアプリ登録の実施を推奨します。

次章以降では、安全かつ効率的にアプリケーション管理を実施するための Azure AD の機能を紹介していきます。

2.アプリ登録とは

アプリケーションへのアクセス制御をする方法として「アプリ登録」があります。本章では、独自のアプリケーションと Azure AD を統合するアプリ登録について、紹介します。

Azure ADと統合するためのアプリ登録について

Azure AD では、 Office365 など多くのアプリケーションは既に事前統合されており、最小限の作業で使用が可能です。ただ独自のアプリケーションの場合は、アプリ登録の機能を使い、Azure AD と連携するプロセスが必要です。アプリ登録の際は、アプリケーションへアクセスできるユーザーやアプリからアクセスできるリソースなどのアクセスポリシーの設定を行います。

具体的には「このアプリケーションにアクセスするユーザーには多要素認証を要求する」など、Azure AD の強固なアカウント制御機能と連携し、そのアプリに対するアクセス制御を構成します。

アプリ登録の機能は、一般的な用語では「サービス プリンシパル」と呼ばれています。
Azure AD でアプリ登録を行うと同時にサービス プリンシパルが作成され、登録されたアプリの ID とパスワードの認証を委任してくれます。 Azure AD の条件付きアクセスを適用できるため、セキュリティ面の強化につなげられます。

3.Azure ADのアプリ連携とは

Azure AD では、独自で開発したアプリケーションと様々なクラウドサービスをアプリ連携させることで、 Azure AD に一度サインインするだけでアクセス許可が割り当てられたリソースへのアクセスを可能とします。

本章ではアプリ連携可能なアプリの種類とアプリ連携の方法について、詳しく解説します。

連携可能なアプリの種類

Azure AD で事前統合されているアプリケーションや、独自に開発したアプリケーションなど多様な種類のアプリケーションと連携できます。主な種類は以下の通りです。

  • SaaS 型のクラウドサービス
  • PaaS の Web アプリケーション
  • IaaS の仮想マシンで動作するアプリケーション
  • オンプレミスの Web アプリケーション
  • 開発中のアプリケーション など

アプリを連携する方法

アプリ連携は、 Azure AD ギャラリーに記載されたアプリケーションであれば、ポータルサイトのギャラリーに表示されたアプリのアイコンをクリックするだけで簡単に設定が可能です。

ギャラリーに属していないアプリケーションや独自で開発したアプリケーションを、 Azure AD で連携する場合は、以下の流れを実施します。

  1. Azure Active Directory 管理センターに、管理者アカウントでサインイン
  2. エンタープライズ アプリケーションから「独自のアプリケーションの作成」を選択
  3. 連携したいアプリの目的別に、以下の 3 つの項目から選択
    • ・開発に使用するアプリ連携を行う場合、「開発中のアプリケーション」を選択
    • ・ギャラリーにはないベンダーのサードパーティアプリケーションを企業内で使用したい場合、「ギャラリー以外のアプリケーション」を選択
    • ・オンプレミスのアプリケーションへ安全にアクセスしたい場合、「オンプレミスのアプリケーション」を選択
  4. アプリケーションが Azure AD と正常に統合できているか確認

4. Azure ADでシングルサインオンを実現する

ここまで、Azure AD と様々なアプリケーションとの連携について紹介してきましたが、連携したアプリケーション間でシングルサインオンが実現できると、さまざまなメリットを享受できます。

シングルサインオンの役割とメリット

Azure AD のアカウント管理・アクセス制御の機能とシングルサインオンを組合せることで、得られる利点について紹介します。

アカウント(ID・パスワード)管理

複数のアプリケーションのサインイン時に単一の ID 、パスワードを利用できるため、管理負荷の削減やパスワード紛失のリスクを軽減できます。

アクセス制御

条件付きアクセスの適用により、ユーザーの状態やデバイスの評価による認証ができる ため、セキュリティ面の強化につながります。

Azure ADのシングルサインオンを実現する仕組み

Azure AD では、 Azure AD で保護されたリソースへアクセスを行うために、 OAuth 2.0(以下、 OAuth )と呼ばれるプロトコルを利用しています。

OAuth は、 Azure AD にアプリを登録することで、 Azure AD で保護されたリソースへのアクセス許可( API へのアクセス許可)を行います。アプリケーションはユーザー委任(ユーザーへの権限要求)とアプリケーション権限(アプリケーション権限のアクセス許可)を保持しています。

<アプリケーションの権限>

アプリケーションの権限

図版出典:Microsoft 公式サイト

アプリケーションは認証サーバ( Azure AD )にトークン要求を行い、アクセストークンを取得します。取得したアクセストークンを使って、アプリは保護されたリソースにアクセスを行います。 OAuth の構成要素は、以下の画像をご覧ください。

<OAuth の API へのアクセス許可フロー>

OAuth の API へのアクセス許可フロー

図版出典:Microsoft 公式サイト

ユーザーは、一度 Azure AD にサインインすると、その認証に紐づけられている複数のリソースへもアクセスできるようになり、シングルサインオンの仕組みを実現できます。

5.まとめ

Azure AD ではクラウド内の ID 情報を一元化することで、シングルサインオンを実現できる機能を提供しています。独自のアプリケーションを Azure AD に登録し、連携することで、効率的なアプリ開発を遂行できるため、アプリ開発者は活用することが推奨されます。そのための費用算出や導入における具体的なアドバイスなどは、専門家へのご相談をお勧めします。

Azure の導入を相談したい

Azure導入支援サービス

Azure 導入支援サービス

Microsoft Azure 導入の具体的な方法の検討や技術検証を専門家にサポートいたします。

Free

資料ダウンロード

課題解決に役立つ詳しいサービス資料はこちら

資料ダウンロード
  • Azure導入支援・構築・運用サービス総合カタログ

    Microsoft Azure サービスの導入検討・PoC、設計、構築、運用までを一貫してご支援いたします。
    Azure導入・運用時のよくあるお悩み、お悩みを解決するためのアールワークスのご支援内容・方法、ご支援例などをご確認いただけます。

Microsoft Azureを利用したシステムの設計・構築を代行します。お客様のご要件を実現する構成をご提案・実装いたします。

Azure導入個別相談会(無料)

Contactお問い合わせ

お見積もり・ご相談など、お気軽にお問い合わせください。

single.php