シングルサインオンの構成
SharePoint Server 2007のシングルサインオン機能の構成の仕方をレポートします。
1.Microsoft Single Sign-On Serviceを実行するシングルサインオンをするためには、すべてのフロントエンドWebサーバー上で「Microsoft Single Sign-On Service」(以降「SSOサービス」と表記)を実行する必要があります。
SSOサービスはWindowsサービスなので、各サーバーのサービスマネージャから実行することになります。

ここでひとつ注意ですが、SSOサービスを実行するユーザーアカウントには何かと決まりがあるようです。
以下ルール5点をヘルプから抜粋しました。
- ドメイン ユーザー アカウント。グループ アカウントは使用できません。
- SharePoint サーバー ファーム アカウント。
- 暗号化キー サーバー上のローカル管理者グループのメンバ (暗号化キー サーバーは SSO サービスを開始する最初のサーバーです)。
- Microsoft SQL Server を実行するコンピュータのセキュリティ管理者グループおよび DB 作成者グループのメンバ。
- シングル サインオン管理者アカウントと同じか、またはシングル サインオン管理者アカウントであるグループ アカウントのメンバ。
上記条件に合うユーザーアカウントをSSOサービスのアカウントに設定してから実行してください。
私の場合はドメインのAdministratorを設定しておきました。
2.[シングルサインオン設定の管理]ページを表示
SSOサービスの実行が完了したら、SharePointの[サーバー構成の管理]→[シングルサインオンの管理]をクリックして[シングルサインオン設定の管理]ページに遷移します。

この操作は、SSOサービスを実行しているサーバーにログインして、そのサーバー上で行う必要があります。
それ以外のところから操作しようとするとアクセス拒否のエラーになります。
また、SSOサービスが起動していないと下の画像のように、メニューがグレーアウト状態で表示されます。
こんなときは、SSOサービスが起動していないということなので、SSOサービスを起動させてからこのページに戻ってきてください。

3.シングルサインオンサーバーの設定をする
[シングルサインオン設定の管理]→[サーバー設定の管理]をクリックし、[シングルサインオンのサーバー設定の管理]ページに設定します。

[シングルサインオンのサーバー設定の管理]ページでは、SSOサーバーとして動作するために必要な設定をします。

[シングルサインオンの管理者アカウント]では、シングルサインオンの構成をおこなうことができるアカウントを設定します。
ここに指定できるアカウントは、以下の条件を満たすアカウントのみとなります。
以下、ヘルプから抜粋
- Windows グローバル グループまたは個人のユーザー アカウント。このアカウントは、ドメイン ローカル グループ アカウントまたは配布リストにすることはできません。
- ユーザーが指定されている場合は、シングル サインオン サービス アカウント。グループが指定されている場合は、シングル サインオン サービス アカウントはそのグループのメンバである必要があります。
- ユーザーが指定されている場合は、シングル サインオンの構成アカウント。グループが指定されている場合は、シングル サインオンの構成アカウントはそのグループのメンバである必要があります。
- SharePoint サーバー全体管理サイトのリーダー SharePoint グループのメンバ。
- グループが指定されている場合、シングル サインオンを管理するためにグループに追加されたすべてのユーザーは、暗号化キー サーバーのローカル Administrators グループのメンバである必要がある。
[企業アプリケーション定義の管理者アカウント]では、SSO先となるシステムへのシングルサインオンの設定をすることができるアカウントを設定します。
ここに指定できるアカウントは、以下の条件を満たすアカウントのみとなります。
以下、ヘルプから抜粋
- Windows グローバル グループまたは個人のユーザー アカウント。このアカウントは、ドメイン ローカル グループ アカウントまたは配布リストにすることはできません。
- SharePoint サーバー全体管理サイトのリーダー SharePoint グループのメンバ。
私は、どちらのアカウントもドメインのAdministratorにしてしまいました。
[データベース]セクションの[サーバー名]には、SSOの情報を保持するデータベースを作成する先となるサーバーの名前を、[データベース名]には、SSOデータベースの名前を指定します。
[タイムアウト設定]セクションの[チケットのタイムアウト時間]には、SSO処理のタイムアウト時間(実際にはSSO用のチケットが無効になる時間)を指定します。
[次より古い査定ログの削除]には、査定ログにSSOのログを記録しておく時間を指定します。
が、査定ログってなんでしょう・・・。
SPS2003と同じであれば、これはSSO専用のログでSSOデータベースに記録されるようです。
以上の設定が完了したら、[OK]ボタンを押して[シングルサインオン設定の管理]ページに戻ります。
4.暗号化キーを作成する
[シングルサインオン設定の管理]→[暗号化キーの管理]をクリックし、[暗号化キーの管理]ページに遷移します。
[暗号化キーの作成]ボタンをクリックします。

すると[暗号化キーの作成]ページが表示されるので、[OK]ボタンをクリックして、暗号化キーを作成します。

暗号化キーが作成されるまで時間がかかります。
出来上がったことを確認できたら、[シングルサインオン設定の管理]ページに戻ります。
5.企業アプリケーション(SSO先システム)を登録する
[シングルサインオン設定の管理]→[企業アプリケーション定義の設定の管理]をクリックし、[企業アプリケーション定義の管理]ページに遷移します。
[新しいアイテム]をクリックし、[企業アプリケーション定義の作成]ページに遷移します。

[企業アプリケーション定義の作成]ページでは、SSO先となるシステムに対して、どのように認証を行うかとどのような情報を引き継ぐかを登録します。


[アプリケーションと連絡先の情報]には、SSO先のシステムの名前や連絡先を入れます。
なお、ここで入れた[アプリケーション名]がSSOの処理をプログラミングする際にSSO先を識別するための名前になります。
[アカウントの種類]では、ユーザー毎に異なるIDでログインする必要がある場合は「個人」を、複数のユーザーをまとめていくつかのグループIDでログインする場合は「グループ」を、すべてのユーザーがひとつの特権ユーザーでログインする場合は「制限付きアカウントを使用するグループ」を指定します。
大方「個人」を選択することになるでしょう。
[Windows認証]は、SSO先のシステムがWindows認証に対応している場合にチェックを付けます。
[ログオンアカウント情報]では、SSO先のシステムに初めて接続する際に、ユーザーに入力してもらう必要のある項目を定義します。
以上の設定が完了したら、[OK]ボタンを押して[企業アプリケーション定義の管理]ページに戻ります。
リストに先ほど追加した企業アプリケーションが登録されたことを確認できます。

[シングルサインオン設定の管理]ページに戻ります。
以上で、SSOの構成が完了しました!
あとは、SSO用のプログラムを書いたり、Excel ServiceなどでSSOを使ったりするだけです。