ADFS(エーディーエフエス)とは | 意味や読み方など丁寧でわかりやすい用語解説
ADFS(エーディーエフエス)の意味や読み方など、初心者にもわかりやすいように丁寧に解説しています。
読み方
日本語表記
アクティブ ディレクトリ フェデレーションサービス (アクティブ ディレクトリ フェデレーションサービス)
英語表記
ADFS (エーディーエフエス)
用語解説
ADFSとは、Active Directory Federation Servicesの略称である。これは、マイクロソフトが提供するWindows Serverの役割の一つであり、異なる組織やシステム、そしてクラウドサービス間で、ユーザーの認証情報を安全に連携させるための基盤を提供する技術である。具体的には、一度認証すれば複数のアプリケーションやサービスにログインできるシングルサインオン(SSO)を実現し、さらに組織の境界を超えてユーザーのアイデンティティ(身元)を共有する「アイデンティティフェデレーション」を可能にする。
今日のIT環境では、企業は自社システムだけでなく、様々なクラウドサービスや外部のパートナー企業が提供するサービスを利用することが一般的である。このような状況において、ユーザーがサービスごとに異なるIDとパスワードを管理し、その都度ログインを繰り返すことは、利便性を損なうだけでなく、パスワードの使い回しや忘れといったセキュリティリスクを高める要因にもなる。ADFSは、このような課題を解決するために設計された。企業内のActive Directoryを認証基盤とし、信頼関係を確立した外部サービスに対して、ユーザーの認証結果と属性情報を安全に提供することで、シームレスなアクセス環境を提供するのがADFSの主要な役割である。
詳細について解説する。ADFSが実現するアイデンティティフェデレーションの核となる概念は「信頼関係(Trust Relationship)」と「要求ベースの認証(Claims-based Authentication)」である。
まず、信頼関係とは、異なる組織やシステム間で、互いに相手の認証情報を信用し、それに基づいてアクセスを許可する合意のことである。ADFSを導入する組織は、自らが「アイデンティティプロバイダー(IdP)」となり、ユーザーの身元を保証する。そして、利用する外部アプリケーションやクラウドサービスは「サービスプロバイダー(SP)」または「証明書利用者(Relying Party)」と呼ばれ、IdPが発行する認証情報を信頼してユーザーにサービスを提供する。ADFSは、このIdPとしての役割を担い、社内のActive Directoryに格納されているユーザー情報を活用して認証を行う。
認証の基本的な流れは次のようになる。ユーザーがサービスプロバイダー(例: SalesforceやMicrosoft 365など)にアクセスすると、サービスプロバイダーはユーザーが未認証であることを確認し、ADFS(アイデンティティプロバイダー)へ認証を要求するリダイレクトをユーザーのWebブラウザに指示する。ユーザーのブラウザはADFSにアクセスし、ADFSはユーザーをActive Directoryに対して認証する。認証が成功すると、ADFSはユーザーのID情報や属性情報(氏名、メールアドレス、所属グループなど)を含んだ「セキュリティトークン」を発行する。このトークンは、SAML(Security Assertion Markup Language)やWS-Federation、OpenID Connectといった標準的なプロトコルに準拠しており、暗号化とデジタル署名によって改ざんやなりすましが防止されている。ユーザーのブラウザは、このセキュリティトークンを携えて再びサービスプロバイダーにアクセスし、トークンを提示する。サービスプロバイダーは、ADFSと事前に確立した信頼関係に基づいてトークンの署名を検証し、トークンに含まれるユーザーの属性情報をもとにアクセス権限を判断し、サービスへのアクセスを許可する。この一連の流れをユーザーは意識することなく、一度のログインで複数のサービスにアクセスできるのがシングルサインオンである。
ADFSのもう一つの重要な要素である「要求ベースの認証」とは、従来のIDとパスワードによる認証に加え、ユーザーの特定の「属性」を「要求(Claim)」として捉え、認証トークンに含めてやり取りする認証方式である。例えば、「ユーザー名が〇〇である」「メールアドレスが△△である」「部署が□□である」といった情報が要求として表現される。サービスプロバイダーは、これらの要求に基づいて、ユーザーに提供するサービスやアクセスできるリソースを動的に制御できる。これにより、アプリケーション側でユーザー情報を重複して管理する必要がなくなり、認証と認可の管理を分離できるため、セキュリティの向上と管理の簡素化が図れる。
ADFSは、主に以下のコンポーネントで構成される。
- フェデレーションサービス (Federation Service): ADFSの主要な役割を担うサーバーであり、セキュリティトークンの発行、要求の処理、信頼関係の管理などを行う。
- Webアプリケーションプロキシ (WAP) または ADFSプロキシ: ネットワークの境界に配置され、インターネットからの認証要求を内部のフェデレーションサービスに安全に転送する役割を持つ。内部ネットワークを外部からの直接アクセスから保護する。
- 属性ストア: ユーザーの認証情報や属性情報を保持するデータベースであり、通常は既存のActive Directoryが利用される。
ADFSは、オンプレミスのActive Directoryとクラウドサービスを連携させるための強力なツールであり、特にMicrosoft 365やAzure ADとの連携において重要な役割を果たす。企業はADFSを利用することで、既存のActive Directoryのユーザー管理をそのままに、クラウド時代に求められるセキュアで利便性の高い認証基盤を構築できる。これにより、管理者はユーザー管理の負担を軽減し、ユーザーは利便性の向上を享受できる。一方で、ADFSサーバー自体の可用性やセキュリティ、証明書の管理など、導入・運用には専門的な知識と継続的なメンテナンスが必要となる点も理解しておくべきである。