Microsoft ADFS-SAML 操作手順
運用シナリオ
Active Directory Federation Services(ADFS)は、Microsoft の Windows Server 上で提供される Active Directory Federation Services です。ADFS は、新しい認証技術であり、1セッションで複数のWebアプリケーションのユーザー認証を可能にします。ユーザー SSO を利用して、ADFS を HAP と統合し、ADFS アカウントによるコンソール管理リソースが利用できます。
前提条件
- Windows Server サーバーを用意してください(本手順は Windows Server 2012 R2 用ですが、Windows Server 2016/2019 では一部仕様が異なります)。
- サーバー内で以下の設定作業を行ってください。
- DNS サーバー:認証要求先を正しいフェデレーションサービスに解決します。
- Active Directory Domain Services(AD DS):ドメインユーザーやドメインデバイスなどのオブジェクトの作成・検索・変更機能を提供します。
- Active Directory Federation Service(AD FS):SSO リライングパーティ構成機能と、構成済みリライングパーティへの SSO 認証機能を提供します。
手順
Microsoft AD のインストールと展開
補足説明
Microsoft AD のインストールと展開が完了している場合は、ステップ1〜5は省略できます。
- サーバーで Server Manager > Dashboard に進み、Add roles and features をクリックします(下図参照)。

- Next をクリックし続け、Install をクリックしてインストールを完了します(下図参照)。

- インストール完了後、Promote this server to a domain controller をクリックします(下図参照)。

- Deployment Configuration ページで Add a new forest を選択し、Root ドメイン名として testdomain.com を入力します(下図参照)。

- Domain Controller Options ページでパスワード情報を入力し、Next から Install をクリックしてインストールを完了します。(下図参照)

CA のインストール
- クラウドサーバーで Server Manager > Dashboard へ進み、Add roles and features をクリックします(下図参照)。

- Next を繰り返し、Server Roles ページで Active Directory Certificate Services を選択します(下図参照)。

- Next をクリックし、AD CS-Server Roles ページで Certification Authority、Certification Authority Web Enrollment を選択します(下図参照)。

- Next をクリックし、Results ページで下記情報をクリックし、AD CS 設定を構成します(下図参照)。

- Next をクリックし、Role Services で下記情報を選択、Next をクリックします(下図参照)。

- Setup Type ページで Enterprise CA を選択します(下図参照)。

- CA Type ページで Root CA を選択します(下図参照)。

- Private Key ページで新規秘密鍵を作成します(下図参照)。

- Certificate Database ページで情報を入力し、Next をクリックします(下図参照)。

http://localhost/certsrvにアクセスし、CA が正常にインストールされたことを確認します(下図参照)。
ADFS サービスのインストール
ADFS の構成前に、コンピュータまたはユーザー・指定端末への認証証明書の発行が必要です。ADFS インストール前に証明書の作成・構成を行います。本手順では IIS を利用して証明書を申請します。
- Server Manager > Tools から IIS Manager を選択します。

- IIS Manager で Server Certificates をクリックします(下図参照)。

- Server Certificates ページで Create Certificate Request をクリックします(下図参照)。

http://localhost/certsrvへアクセスし、Request a certificate > advanced certificate request > using a base-64-encoded を選択します(下図参照)。

- 証明書申請ページで、保存済み証明書ファイル(adserver2.txt)内容を入力欄にコピーし、テンプレートとして「Web server」を選び Submit をクリックします(下図参照)。

- 申請後、Download certificate をクリックします(下図参照)。

- サーバー証明書ページで Complete Certificate Request をクリックし、ステップ6でダウンロードした証明書を選択します(下図参照)。

- Website > Default Web Site Home ページで右クリックし、Edit Bindings を選択します(下図参照)。

- Web サイトバインディングページで Add をクリックし、Type には https、IP アドレスは all unassigned、Port は 443、SSL証明書は adserver2.cert を選択します(下図参照)。

- サーバーで Server Manager > Dashboard に移動し Add roles and features をクリック、デフォルト選択で Next をクリックします。
- サーバーロール選択ページで Active Directory Federation Services を選択し、Next をクリックします(下図参照)。

- ウィザードページで Install をクリックします(下図参照)。

- インストール進捗ページで Configure the federation service on this server をクリックします(下図参照)。

- ウィザードページで Next をクリックします(下図参照)。

- Service Properties ページで必要事項を入力し Next をクリックします(下図参照)。

- Service Account ページで既存ドメインユーザーアカウントあるいはグループ管理サービスアカウントを選び Select をクリックします(下図参照)。

- データベースを指定し Next をクリックします( 下図参照)。

- ブラウザで
https://adserver2.testdomain.com/FederationMetadata/2007-06/FederationMetadata.xmlにアクセスし、インストールが正常に完了したか確認します(下図参照)。
ユーザー SSO 設定
- サーバーブラウザで
https://adserver2.testdomain.com/FederationMetadata/2007-06/FederationMetadata.xmlにアクセスし、XML ソースデータをローカルにダウンロードします。コマンドラインでエクスポートも可能です(下図参照)。
- SAML2連携設定を有効化し、ステップ1で保存したXMLファイル(ドッキングドキュメントで
idp.xmlと名称)を指定して設定・マウントします。 - サーバーで ADFS 管理ページを開き、Trust Relationships > Relying Party Trusts を選択し、右クリックで Add Relying Party Trust を選び Start をクリックします。ステップ2のジョイン トメタデータアドレス・メタデータアドレスを追加し、Next を繰り返しクリックします(下図参照)。

- リモート XML アドレス設定はこちらで行います。HAP システムの場合、一般的に
{server}/orgsso/metadata.xmlです。

- Next を繰り返しクリックします。

- 設定完了後、
https://adserver2.testdomain.com/adfs/ls/idpinitiatedsignonにアクセスし、信頼済みサイトを確認できます(下図参照)。
SP 向け SAML アサーション属性設定
- マッピングルールを追加します(下図参照)。

- ルールテンプレートを選択し、必要に応じてカスタマイズまたは既存ルールを選択します(下図参照)。

- 例として、ユーザーID・氏名・メールアドレスの3項目の属性マッピングルールを設定し、アカウント作成のために提出します(下図参照)。

ユーザー SSO ログイン
- ブラウザで
{server}/orgsso/ssoにアクセスします(下図参照)。 - SAMLRequest を
https://adserver2.testdomain.com/adfs/ls/?SAMLRequest=xxxへリダイレクトします(下図参照)。 - adserver2 のユーザー名とパスワードを入力してシステムログインを完了します(下図参照)。
