プライバシー&クッキー
このサイトはクッキーを使用しています。 継続することにより、あなたはそれらの使用に同意します。 Cookieの制御方法など、詳細についてはこちらをご覧ください。
SharePoint2010には、2種類の認証が用意されています。 クラシック認証とクレームベース認証。 既定では、SharePoint2010では従来の認証(windows)です。 この記事では、要求ベース認証について説明します。 ここでは、Sql Serverを使用して、要求ベース認証でデータベースからデータを格納または取得します。 また、active directoryを使用して要求ベース認証を構成することもできます。
:
- ユーザー情報を保持するための個別のカスタムデータベースの作成
- 新しいSQLログインユーザーの作成
- データベース内のメンバシッププロバイダーの構成
- クレーム認証を使用するWebアプリケーションの作成
- 接続文字列/メンバシップおよびロールプロバイダーのIIS設定
- テストユーザーの作成
- FBAの問題のトラブルシューティング
ユーザー情報を保持するための個別のカスタムデータベースの作成:
- SQL Server Management Studio2008または2008R2を開きます。
- Windows認証を使用してSharePointインスタンスに接続します。
- データベースを右クリックして新しいデータベースを作成します->新しいデータベースと名前を付けますFBADB
新しいSQLログインユーザーを作成します:
- SQL Server Management Studioで、セキュリティノードを展開します。
- ログインを右クリック->新しいログインを選択…
- 新しいログインウィンドウが表示されます。 ログイン名を”FBAUser”と入力します。
- SQL Server認証を選択します。 パスワードを入力し、パスワードを確認します。
- 左サイドナビゲーションからのサーバーロールでは、デフォルトでpublicが選択されています。 必要に応じて、sysadminチェックボックスを選択します。
- ユーザーマッピングをクリックします。 [FBADBデータベース]を選択します。
- FBADBデータベースの次のデータベースロールを選択します:
- aspnet_membership_fullaccess
- aspnet_roles_fullaccess
- dbowner
- public
- [ステータス]をクリックします。 データベースエンジンに接続する権限を付与として選択し、有効にしてログインします。
- OKをクリックして新しいログインを作成します。
- 今すぐSQL management studioを閉じて、それを再度開きます。
- そして、WINDOWS認証の代わりにSQL認証を選択します。
- FBAUserの作成時に指定したfbauserとパスワードを入力します。
- 接続してみてください。 正常に接続された場合は、次の手順に進みます。新しいFBAユーザーとSQL serverを接続できない場合は、オブジェクトエクスプローラーからサーバー名を右クリックします->再起動をクリックします。 Sql serverサービスをリセットすると、SQL認証を使用してFBAユーザーに接続できます。
データベース内のメンバシッププロバイダの設定:
- に行くC:\Windows\Microsoft.NET\Framework\v2.0.50727 パスと”aspnet_regsql”をダブルクリックします。exe”
- 起動しますAsp.net SQL Serverスタートアップウィザードウィンドウ。 [次へ]をクリックします。
- [アプリケーションサービス用のSQL Serverの構成]オプションを選択し、[次へ]をクリックします。
- サーバーテキストボックスにSql serverインスタンス名を入力します。 Windows認証オプションを選択します。 その後、データベースドロップダウンからFBADBデータベースを選択します。 [次へ]をクリックします。
- 次に設定を確認し、”次へ”をクリックします。
- これで、fbadbデータベースがメンバシップとロールプロバイダで構成されました。 “終了”をクリックしてウィンドウを閉じます。
クレーム認証を使用するWebアプリケーションを作成する:
- 次に、デフォルトの従来の認証ではなく、ユーザーが認証を要求する新しいwebアプリケーションを作成します。
- SharePoint2010で新しいwebアプリケーションを作成します。
- スタート->SharePoint2010製品->SharePoint2010サーバーの全体管理に移動します。
- アプリケーション管理の下でWebアプリケーションの管理を選択します。
- リボンから新規ボタンをクリックします。
- 新しいアプリケーションの作成ウィンドウで、要求認証オプションを選択します。 適切なIIS webサイト名を入力します。
- フォーム認証を有効にする(FBA)オプションが選択されていることを確認します。 提供するAsp.net メンバー名をFBAMembershipProvider、役割プロバイダーをFBARoleProviderとして指定します。
- もサービスアカウントの管理を使用します。 残りの設定はそのままにしておきます。 [OK]をクリックして新しいwebアプリケーションを作成します。
- webアプリケーションが正常に作成されると、サイトコレクションを作成するように要求されます。
- サイトコレクションのリンクをクリックして、新しいwebアプリケーション内にサイトコレクションを作成します。
- 管理アカウントとしてタイトルとサイトコレクションのプライマリ所有者を入力します。 または、メンバシップと役割を構成した後で、webアプリケーションへのサイトコレクションを作成することもできます。
接続文字列/メンバーシップおよび役割プロバイダーのIIS設定:
- 今、私たちは三つのwebでメンバーシップとロールタグを設定する必要があります。———
1. Webアプリケーション
2. サーバーの全体管理
3. サービストークン
- START->Run->Runコマンドでinetmgrと入力してIISマネージャーを開きます。
- FBAを実装しようとしているwebアプリケーションを選択します。 左側の木から。
- 右側の画面から接続文字列をクリックします。
- ConnStringという名前の新しい接続文字列を追加します。
- 接続文字列を定義した後、今、我々はメンバシッププロバイダを追加する必要があります。 Fbamembershipproviderをfba webアプリケーションの作成時に指定したメンバーシッププロバイダー名として指定します。
- メンバシッププロバイダを追加するには、IISマネージャの右側の画面からProviderオプションを選択します。
- 同じ方法で、Provider optionを使用して役割プロバイダーを追加できます。 ドロップダウンからロールプロバイダを選択し、FBA webアプリケーションの作成時に与えたようにFBARoleProviderという名前を付けます。
- 同じ手順に従って、SharePointサーバーの全体管理およびS E C UritytokenserviceapplicationからSharePoint webサービスの下に接続文字列/メンバーシップおよび役割プロバイダーを追加します。
- 上記の手順を完了したら、最後の三つのweb。configsファイルは以下のようになります:
FBA Webアプリケーションのweb。コンフィグ:
- FBA webアプリケーションのweb。設定ファイルは以下の下で利用可能ですc:\inetpub\wwwroot\wss\virtualdirectories\port webアプリケーションまたは名前の数。
<connectionStrings>
<connectionString=”Server=”を追加します。\SharePoint;データベース=FBADB;ユーザー ID=FBAUser;パスワード=パスワード@123″名前=”ConnString” />
</コネクションストリングス>
<会員defaultProvider=”i”>
<プロバイダ>
<名前=”i”タイプ=”マイクロソフトを追加します。——-管理。主張。SPClaimsAuthMembershipProvider,Microsoft.SharePoint、バージョン=14.0.0.0、カルチャ=ニュートラル、PublicKeyToken=71e9bce111e9429c” />
<名前=”FBAMembershipProvider”タイプ=”システムを追加します。ウェブ…セキュリティ。SqlMembershipProvider,システム.Web、バージョン=2.0.0。0、文化=ニュートラル、PublicKeyToken=b03f5f7f11d50a3a”applicationName=”/”connectionStringName=”ConnString”enablePasswordReset=”false”enablePasswordRetrieval=”false”passwordFormat=”Clear”requiresQuestionAndAnswer=”false”requiresUniqueEmail=”false” />
</プロバイダ>
</メンバーシップ>
<roleManager defaultProvider=”c”enabled=”true”cacheRolesInCookie=”false”>
<プロバイダ>
<名前=”c”タイプ=”マイクロソフトを追加します。——-管理。主張。SPClaimsAuthRoleProvider、マイクロソフト。SharePoint、バージョン=14.0.0。0、カルチャ=ニュートラル、PublicKeyToken=71e9bce111e9429c” />
<名前=”FBARoleProvider”タイプ=”システムを追加します。ウェブ…セキュリティ。SqlRoleProvider、システム。Web,Version=2.0.0.0,Culture=neutral,PublicKeyToken=b03f5f7f11d50a3a”applicationName=”/”connectionStringName=”ConnString” />
</プロバイダ>
</roleManager>
SharePointサーバーの全体管理のWeb。コンフィグ:
- SharePointサーバーの全体管理のweb。設定ファイルは以下の下で利用可能ですc:\inetpub\wwwroot\wss\virtualdirectories\port Sharepoint centralアプリケーションの数。
<connectionStrings>
<connectionString=”Server=”を追加します。\SharePoint;Database=FBADB;User ID=FBAUser;Password=password@123″name=”ConnString” />
</コネクションストリングス>
<roleManager>
<プロバイダ>
<名前=”FBARoleProvider”タイプ=”システムを追加します。ウェブ…セキュリティ。SqlRoleProvider、システム。Web、バージョン=2.0.0。0,Culture=neutral,PublicKeyToken=b03f5f7f11d50a3a”applicationName=”/”connectionStringName=”ConnString” />
</providers>
</roleManager>
<membership>
<providers>
<名前=”FBAMembershipProvider”タイプ=”システムを追加します。ウェブ…セキュリティ。SqlMembershipProvider,システム.Web、バージョン=2.0.0。0、文化=ニュートラル、PublicKeyToken=b03f5f7f11d50a3a”applicationName=”/”connectionStringName=”ConnString”enablePasswordReset=”false”enablePasswordRetrieval=”false”passwordFormat=”Clear”requiresQuestionAndAnswer=”false”requiresUniqueEmail=”false” />
</プロバイダ>
</メンバーシップ>
SecurityServicetokenApplicationのWeb。コンフィグ:
- webを見つけることができます。以下のパスで設定:
C:\Program Files\Common Files\Microsoft Shared\Web Server Extensions\14\WebServices\SecurityToken
<connectionStrings>
<connectionString=”Server=”を追加します。\SharePoint;Database=FBADB;User ID=FBAUser;Password=password@123″name=”ConnString” />
</コネクションストリングス>
<roleManager>
<プロバイダ>
<名前=”FBARoleProvider”タイプ=”システムを追加します。ウェブ…セキュリティ。SqlRoleProvider、システム。Web、バージョン=2.0.0。0,Culture=neutral,PublicKeyToken=b03f5f7f11d50a3a”applicationName=”/”connectionStringName=”ConnString” />
</providers>
</roleManager>
<membership>
<providers>
<名前=”FBAMembershipProvider”タイプ=”システムを追加します。ウェブ…セキュリティ。SqlMembershipProvider,システム.Web、バージョン=2.0.0。0、文化=ニュートラル、PublicKeyToken=b03f5f7f11d50a3a”applicationName=”/”connectionStringName=”ConnString”enablePasswordReset=”false”enablePasswordRetrieval=”false”passwordFormat=”Clear”requiresQuestionAndAnswer=”false”requiresUniqueEmail=”false” />
</プロバイダ>
</会員制>
- </systemの完了後にConnectionStringタグを追加してください。web>および<構成>タグ内。 また、メンバシップとロールプロバイダタグは<システム内に追加する必要があります。ウェブ>タグ。
- ユーザー選択ウィンドウを使用してFBAユーザーを検索するには、webアプリケーションとサーバーの全体管理のwebの次の行を追加します。のような設定ファイル:
<ピープルピッカーワイルドカード>
<クリア/>
<キー=”AspNetSqlMembershipProvider”値を追加します=”%” />
<キー=”FBAMembershipProvider”値を追加します=”%” />
</PeoplePickerWildcards>
テストユーザーの作成:
- これで、FBA webアプリケーションをテストする準備が整いました。 テスト用に、webアプリケーションにログインするテストユーザーを作成できます。
- membership seederツールを使用して、FBADBにテストユーザーを追加できます。 以下の画面は、FBADBに1つまたは複数のテストユーザーを追加する方法を示しています。 Membership seederツールの接続文字列を更新し、memerbshipseederを実行するだけです。exe
- 以下のURLからメンバーシップシーダーをダウンロードできます:
http://cks.codeplex.com/releases/view/7450
- スタート->SharePoint2010productsからSharePointサーバーの全体管理を開きます。
- FBA webアプリケーションでは既にサイトコレクションが作成されています。 次に、サイトコレクションの管理者として新しいテストユーザーを追加する必要があります。
- アプリケーション管理->サイトコレクション->サイトコレクション管理の変更に移動します。
- fba webアプリケーションを選択し、ユーザー選択ウィンドウを使用してサイトコレクション管理者として新しいテストユーザーを追加します。
- ブラウザにFBA webアプリケーションのURLを入力し、新しいテストユーザーでログインします。 FBA webアプリケーションのデフォルトページにリダイレクトされます。
- FBAサイトにアクセスするには、FBAユーザーに許可を与える必要があります。
- アプリケーション管理->Webアプリケーションの管理->FBAサイトを選択します。
- リボンからユーザーポリシーをクリックします。
- ユーザーの追加リンクをクリックします。
- デフォルトとしてゾーンを選択します。
- 次へをクリックします
- 新しいテストFBAユーザーの追加ユーザー選択ウィンドウからユーザー領域を選択します。
- 権限の選択ボックスからフルコントロールチェックボックスを選択します。
- 終了をクリックします。
- 今、新しいテストFBAユーザーを使用してFBAサイトにログインします。
:
- テストFBAユーザーの資格情報を入力してFBAサイトにログインできない場合は、ミックスモード認証が有効かどうかを確認してください。ミックスモード(SQL sererまたはWindows)を有効にするには、サーバー接続を右クリックします->プロパティ->セキュリティ->SQL ServerとWindows認証を選択します->OKをクリッ
- FBAテストユーザーでログインした後にアクセス拒否の問題が発生した場合。 次に、fbadbという名前のメンバーシップデータベース用に作成した新しいFBAユーザーログインを使用してsql server management studioに接続できることを確認します。