今回は、DesktopSSOが出来るところまでやってみる。
スクリーンショット取るよりスクリーンキャプチャの方が楽だったので途中まで作ってみた。
- 前提条件
- OpenAMが動いているマシンのDNSサーバはActiveDirectory配下のDNSサーバであること
- OpenAMのホスト名
- openam.lan.tatsuya.info
- ADドメイン名
- lan.tatsuya.info
- ドメインコントローラのホスト名
- dc01.lan.tatsuya.info
- OpenAMとADを連携させるためのユーザをAD上に作成しておく
- ユーザ名:openamsso
- パスワード:Password1234
キータブファイルの作成
以下のコマンドを、ドメインコントローラ上のコマンドプロンプトで実行し、キータブファイルを作成します。
このファイルはあとで、OpenAMが必要とするので、OpenAMが動いているマシンに移動しておきます。
ktpass.exe -out keytab -pass Password1234 -mapuser openamsso \ -princ HTTP/openam.lan.tatsuya.info@LAN.TATSUYA.INFO \ -ptype KRB5_NT_PRINCIPAL -target LAN.TATSUYA.INFO -kvno 0 -crypto RC4-HMAC-NT
OpenAMの設定
- OpenAMにamadminとしてログイン
- 「アクセス制御」タブを開く
- 「/(最上位のレルム)」を開く
- 「認証」タブを開く
- 「モジュールインスタンス」から「新規」を開く
- 「名前」は「DesktopSSO」とし、「タイプ」から「WindowsデスクトップSSO」を選び、「了解」をクリック
- 再び「モジュールインスタンス」から先ほど作成した「DesktopSSO」を開く
- 以下のパラメータを設定し、「保存」をクリック
- サービス主体:HTTP/openam.lan.tatsuya.info@LAN.TATSUYA.INFO
- Keytabファイル名:先ほど生成したキータブファイルを置いた場所をフルパスで
- Kerberos レルム:LAN.TATSUYA.INFO
- Kerberos サーバー名:dc01.lan.tatsuya.info
- ドメイン名を含む主体を返す:認証時に利用するユーザ名を foobar にするか foobar@LAN.TATSUYA.INFO にするか
- 「認証連鎖」から「新規」を開く
- 「名前」は「SSO」とし、「了解」をクリック
- 「追加」をクリックし、以下のパラメータを設定し、「保存」をクリック
- インスタンス:DesktopSSO
- 条件:十分
条件の意味はこの記事が参考になります:OpenAMが提供する様々な認証方式 (1/4):CodeZine
- 「コア」の「組織認証設定」を「SSO」に変更し、「保存」をクリック
- 「対象」タブを開く
- ユーザの「新規」をクリックし、以下のパラメタを設定し、「了解」をクリック
- ID:AD上のユーザ名
ドメイン名を含む主体を返すにチェックを付けた場合は完全修飾で - 性:foobar
- フルネーム:foobar
- パスワード・パスワード(確認):password
デスクトップSSOを利用するだけなら、このパスワードは使いません。
- ID:AD上のユーザ名
ここまでの設定で、デスクトップSSOが動作するはずです。
ゾーンがイントラネットになるURLでOpenAMにアクセスすると、自動的に認証され、ユーザ情報が編集出来る画面が表示されます。