SharePoint 2010 からSharePoint Web アプリケーションに認証モードが導入されました。
SharePoint Web アプリケーション作成時には、クラシック認証モードとクレームベース認証モードのいずれかを指定する必要があります。
SharePoint 2010 ではマイクロソフトの推奨はクレームベース認証モードではありますが、GUI (サーバー全体管理サイト)から作成する場合は既定値が クラッシック認証だったことや他のカスタム ソリューションとの関係もあり、実際にはクラシック認証モードにしているケースも多いようです。
SharePoint 2013では認証モードはクレームベース認証モードが主体であり、クラシック認証モードは基本的に使用しません。そうでないと Office Web Apps など、様々な機能が利用できません。 たとえば、SharePoint 2013 では OAuth 2.0 がサポートされていますが、このプロトコルを使うにはクレームベース認証モードになっていなければなりません。したがって、SharePoint 2013 で SharePoint Web アプリケーションをGUI から作成する場合、認証モードの選択画面がそもそもありません。最初からクレームベース認証モードです。
SharePoint 2013 の新規導入は別として、こうした観点から、今後既存環境をアップグレードをすることを視野に入れておく場合は、できるだけクレームベース認証にしておいた方がよいと言えます。特にカスタム ソリューションを構築しているのであればクレームベース認証モードで動作するよう十分に動作検証をし、アップグレードに備える必要があります。※ここで述べているのはあくまでも認証モードのことであり、認証方法ではありません。クレームベース認証モードでは、Windows 認証、フォームベース認証、SAMLトークンベース認証のいずれかを使用できます。
認証モードの確認
現在利用している SharePoint Web アプリケーションの認証モードを確認するには[サーバー全体管理]サイトから確認できます。ただし、切り替えは Windows PowerShell からしか行えません。そのため Windows PowerShellからの確認方法と認証モードの切り替え方法を整理しておくことは大切です。
設定を確認する
現在のSharePoint Web アプリケーションがクレームベース認証モードになっているかどうかは、次のコマンドを実行します。True になっていれば、クレームベース認証モードです。False の場合はクラシック認証モードです。
$webApp= Get-SPWebApplication http://sp2013
$webApp.UseClaimsAuthentication
[SharePoint 2010 の場合] クレームベース認証モードに変更する (※クラシック認証にするには$false を設定する)
SharePoint 2013 に移行する前に先にSharePoint 2010上で認証モードを変更しておくには次のコマンドを実行します。
$webApp= Get-SPWebApplication http://sp2013
$webApp.UseClaimsAuthentication=$true;
$webApp.Update()
[SharePoint 2013 の場合] クレームベース認証モードに変更する
SharePoint 2010 からの移行では、データベース アタッチを行います。先に SharePoint 2013 上でSharePoint Web アプリケーションを既定のクレームベース認証で作成したあと、SharePoint 2010 で利用していたコンテンツDBをアタッチします。その後、アタッチしたコンテンツDBがクラッシック認証モードとなっていた場合は、次のコマンドを実行します。
Convert-SPWebApplication -Identity "http://sp2013"
-To Claims -Retain Permissions
詳細については下記の記事を参照してください。
コメント