レッスン 1: このチュートリアルの権限の設定
このチュートリアルを実行する前に、チュートリアルで使用するコンピューターを設定する必要があります。さらに、Adventure Works Cycles の架空の従業員のログイン情報を変更する属性を作成し、行レベル セキュリティ権限を設定できるようにする必要があります。通常、ユーザー独自のセキュリティ フィルターを設定するときに、このレッスンの手順を実行する必要はありません。そのユーザーのグループ権限とユーザー権限およびログイン アカウントはそれまでに設定され、レポート モデルが配置されるためです。
注 |
---|
このチュートリアルでは、チュートリアルで使用するサーバーとクライアントのコンピューターが同じであることが前提となっています。 |
このチュートリアル用にコンピューターを設定するには、このレッスンで次のことを実行する必要があります。
このチュートリアルを実行するコンピューターの管理ツールを使用して、一時的なユーザー アカウントを 2 つ作成します。AdventureWorks2008R2 サンプル データベースには、Rachel Valdez (Rachel0) と Garrett Vargas (Garrett1) という架空ユーザーが既に存在します。後のレッスンではこれらの一時的なユーザー アカウントを使用して、このチュートリアルの結果を確認します。
これらの架空ユーザーには、カタログ ロールとシステム ロールを割り当てて、レポート サーバーとレポート マネージャーにアクセスする権限を付与します。
レポート モデルを変更し、レポート サーバーに配置します。セキュリティ フィルターの機能を正確に示すために、架空ユーザーを AdventureWorks2008R2 データベースから、コンピューターに作成した一時的なユーザー アカウントにマッピングする新しいフィールドを作成する必要があります。
レポート モデルが AdventureWorks2008R2 データベースへのアクセスに使用する新しいログインを作成します。
重要 |
---|
これらの設定は、このチュートリアルでのみ使用します。SQL Server の実稼働環境は異なる方法で設定されるので、このレッスンの手順はセキュリティ フィルターの設定時には必要ありません。このチュートリアルが完了したら、これらの設定を元に戻してください。 |
コンピューターのユーザー アカウントを作成するには
[スタート] ボタンをクリックし、[コントロール パネル]、[管理ツール] の順にポイントして、[コンピューターの管理] をクリックします。
[コンピューターの管理 (ローカル)] ペインで、[ローカル ユーザーとグループ] をダブルクリックします。
[ユーザー] フォルダーを右クリックし、[新しいユーザー] をクリックします。
[新しいユーザー] ダイアログ ボックスが表示されます。
[ユーザー名] ボックスに、「Rachel0」と入力します。
[氏名] ボックスに、「Rachel Valdez」と入力します。
[説明] ボックスに、「Account used for the Model Security tutorial」と入力します。
[パスワード] ボックスに、「Pass12,Word」と入力します。
注 コンピューターをさらに安全にするために、強力なパスワードを常に使用してください。強力なパスワードとは、英字、数字、記号をすべて含む 7 文字以上のパスワードです。
[パスワードの確認入力] ボックスに、「Pass12,Word」と入力します。
[ユーザーは次回ログイン時にパスワードを変更する] チェック ボックスをオフにして、[作成] をクリックします。
Rachel0 がユーザー一覧に追加されます。[新しいユーザー] ダイアログ ボックスは表示されたままになっています。
[ユーザー名] ボックスに、「Garrett1」と入力します。
[氏名] ボックスに、「Garrett Vargas」と入力します。
[説明] ボックスに、「Account used for the Model Security tutorial」と入力します。
[パスワード] ボックスに、「Pass12,Word」と入力します。
[パスワードの確認入力] ボックスに、「Pass12,Word」と入力します。
[ユーザーは次回ログイン時にパスワードを変更する] チェック ボックスをオフにして、[作成] をクリックします。
Garrett1 がユーザー一覧に追加されます。
[閉じる] をクリックします。
次に、これらのユーザーにレポート サーバーに対する権限を付与します。
カタログ ロールを新しいユーザーに割り当てるには
レポート ビルダーを起動するには、Microsoft Internet Explorer 6 以降を起動します。
Web ブラウザーのアドレス バーに、レポート マネージャーの URL を入力します。既定の URL は、http://<ComputerName>/reports です。
[プロパティ] タブをクリックします。
[新しいロールの割り当て] をクリックします。
注 ロールの割り当てでは、レポート サーバーにあるアイテムに対してユーザーまたはグループが実行できるタスクを指定します。
[グループ名またはユーザー名] ボックスに、「<コンピューター名>\Rachel0」と入力します。
[ブラウザー] と [レポート ビルダー] のチェック ボックスをオンにします。
[OK] をクリックします。
[新しいロールの割り当て] をクリックします。
[グループ名またはユーザー名] ボックスに、「<コンピューター名>\Garrett1」と入力します。
[ブラウザー] と [レポート ビルダー] のチェック ボックスをオンにします。
[OK] をクリックします。
システム ロールを新しいユーザーに割り当てるには
レポート マネージャーのグローバル ツール バーで、[サイトの設定] をクリックします。
[サイトの設定] ページが表示されます。
注 [サイトの設定] を利用できない場合は、サイト設定にアクセスする権限がありません。管理者に連絡してください。
[セキュリティ] セクションで、[サイト全体のセキュリティを構成] をクリックします。
[新しいロールの割り当て] をクリックします。
[グループ名またはユーザー名] ボックスに、「<コンピューター名>\Rachel0」と入力します。
[システム ユーザー] チェック ボックスをオンにします。
注 システム ロールによって、ユーザーまたはグループにレポート マネージャーへのアクセス権が付与されます。ロールには、実行可能なタスクまたはアクションが記述されています。
[OK] をクリックします。
[新しいロールの割り当て] をクリックします。
[グループ名またはユーザー名] ボックスに、「<コンピューター名>\Garrett1」と入力します。
[システム ユーザー] チェック ボックスをオンにします。
[OK] をクリックします。
これで、作成した架空ユーザーは、レポート サーバーにあるアイテムにアクセスし、レポート サーバーを実行しているコンピューターにログオンできるようになりました。
SQL Server Management Studio を起動するには
[スタート] ボタンをクリックし、[すべてのプログラム] をポイントします。次に、[Microsoft SQL Server 2008 R2] をポイントし、[SQL Server Management Studio] をクリックします。
[サーバーへの接続] ダイアログ ボックスが表示されます。表示されない場合は、オブジェクト エクスプローラーで [接続] をクリックし、[データベース エンジン] を選択します。
[サーバーの種類] ボックスで、[データベース エンジン] を選択します。
[サーバー名] ボックスで、このチュートリアルで使用するデータベース サーバーを選択します。
[接続] をクリックします。
SQL Server Management Studio ウィンドウが開きます。次に、AdventureWorks2008R2 データベースへのログインを作成し、モデルがこの架空ログインを使用してデータベースにアクセスできるようにします。
セキュリティ ログインを作成するには
オブジェクト エクスプローラーで、指定したサーバーの [セキュリティ] ノードを展開します。
[ログイン] を右クリックして [新しいログイン] をクリックします。
[ログイン - 新規作成] ダイアログ ボックスが表示されます。
[ログイン名] ボックスに、「TutorialLogin」と入力します。
[SQL Server 認証] オプションをクリックします。
[パスワード] ボックスに、「Pass1Word」と入力します。
注 コンピューターをさらに安全にするために、強力なパスワードを常に使用してください。強力なパスワードとは、英字、数字、記号をすべて含む 7 文字以上のパスワードです。また、チュートリアルが完了したらこのログインを必ず削除してください。
[パスワードの確認入力] ボックスに、「Pass1Word」と入力します。
[パスワード ポリシーを適用する] チェック ボックスをオンにします。
[パスワードの期限を適用する] チェック ボックスをオフにします。
[既定のデータベース] ボックスで、[AdventureWorks2008R2] を選択します。
[OK] をクリックします。
TutorialLogin が [ログイン] 一覧に追加されます。このレッスンの前の手順で作成した架空ユーザーは、このログインを使用して AdventureWorks2008R2 データベースにアクセスします。次に、このログインに db_datareader 権限を割り当てる必要があります。
AdventureWorks2008R2 セキュリティ ユーザーを作成するには
オブジェクト エクスプローラーで、指定したサーバーの [データベース] ノードを展開します。
AdventureWorks2008R2 のデータベース ノードを展開します。
[セキュリティ] をダブルクリックします。
[ユーザー] を右クリックし、[新しいユーザー] をクリックします。
[データベース ユーザー - 新規] ダイアログ ボックスが表示されます。
[ユーザー名] ボックスに、「TutorialLogin」と入力します。
[ログイン名] ボックスに、「TutorialLogin」と入力します。
[既定のスキーマ] ボックスに、「db_datareader」と入力します。
[データベース ロールのメンバーシップ] 領域で、[db_datareader] チェック ボックスをオンにします。
[OK] をクリックします。
次に、Business Intelligence Development Studio でレポート モデル サンプルを開き、新しい属性を作成し、新しいログインを使用するようにデータ ソースのログイン情報を変更し、モデルを配置します。
レポート モデル サンプルを開くには
[スタート] ボタンをクリックし、[すべてのプログラム]、[Microsoft SQL Server 2008 R2] の順にポイントして、[Business Intelligence Development Studio] をクリックします。
[ファイル] メニューの [開く] をポイントし、[プロジェクト/ソリューション] をクリックします。
[プロジェクトを開く] ダイアログ ボックスで、SQL Server 2008 R2 サンプルをインストールした場所に移動します。これらのサンプルは、既定では C:\Program Files\Microsoft SQL Server\100\Samples にインストールされています。
[Reporting Services] をダブルクリックします。
[Model Samples] をダブルクリックします。
[Adventure Works Model] をダブルクリックします。
Adventure Works Model.sln を選択し、[開く] をクリックします。
ソリューション エクスプローラーで、Adventure Works.smdl をダブルクリックします。
レポート モデル サンプルがモデル デザイナーに表示されます。次に、データベースのログイン情報を、このレッスンの前の手順で設定したログイン情報に置き換える新しい式を作成します。
属性を作成するには
モデル デザイナーのツリー ビューで、[Employee] エンティティを右クリックし、[新規作成] をポイントして [式] をクリックします。
[式の定義] ダイアログ ボックスが開きます。
[関数] タブをクリックし、[テキスト] 関数ノードを展開します。
[Replace] 関数をダブルクリックします。
Replace 関数が式のボックスに追加されます。
[フィールド] タブをクリックします。
[フィールド] ボックスで、[Login ID] をダブルクリックします。
[式] ボックスで、find が Login ID に置換されます。
式ボックスで、[replace] を選択し、「"adventure-works"」と入力します。
注 置換する必要があるログイン情報は Adventure-Works です。二重引用符も含めるようにします。
式ボックスで、[string] を選択し、「"コンピューター名"」と入力します。
注 これは、Rachel0 と Garrett1 のアカウントの設定に使用したコンピューターの名前です。二重引用符も含めるようにします。式は、REPLACE(Login_ID, "adventure-works", "<コンピューター名>") のようになります。
[OK] をクリックします。
[式の定義] ダイアログ ボックスが閉じます。
[NewExpression] 属性を右クリックし、[名前の変更] をクリックして、「Login ID2」と入力します。
次のレッスンで行レベル セキュリティ フィルターを適用するときに、この新しい属性を使用します。
[Login ID2] を選択します。
プロパティ ペインで、Nullable プロパティを探します。
下矢印をクリックして、[True] を選択します。
Replace 関数は Null を返すことができるので、Nullable プロパティは True に設定する必要があります。
データ ソース接続を変更するには
ソリューション エクスプローラーで、Adventure Works.ds ファイルをダブルクリックします。
[データ ソース デザイナー] ダイアログ ボックスが表示されます。
[編集] をクリックします。
[接続マネージャー] ダイアログ ボックスが表示されます。
[SQL Server 認証を使用] をクリックします。
[ユーザー名] ボックスに、「TutorialLogin」と入力します。
[パスワード] ボックスに、「Pass1Word」と入力します。
接続を確認するには、[接続テスト] をクリックします。
[OK] をクリックし、再度 [OK] をクリックします。
[データ ソース デザイナー] ダイアログ ボックスを終了するには、[OK] をクリックします。
これでレポート モデルを配置できるようになりました。
[ファイル] メニューの [すべてを保存] をクリックします。
注 Adventure Works.ds ファイルが既にレポート サーバーに配置されている場合、既定のプロパティを変更しない限り、資格情報は更新されません。既定のプロパティを変更するには、[Adventure Works Model] プロジェクトを右クリックし、[プロパティ] をクリックします。[Adventure Works Model プロパティ ページ] ダイアログ ボックスで、[OverwriteDataSources] ボックスをクリックし、[True] を選択します。
レポート モデル サンプルを配置するには
ソリューション エクスプローラーで [Adventure Works Model] プロジェクトを右クリックして、[配置] をクリックします。
モデルがレポート サーバーに配置されます。モデルが表示された状態で、Business Intelligence Development Studio を開いたままにします。
重要 モデルの配置に成功したことを確認するには、[エラー一覧] タブを表示します。エラーが発生した場合は、次に進む前に問題のトラブルシューティングを行う必要があります。
次の手順
これでコンピューターにユーザー アカウント、権限、およびカスタマイズされたログインが設定されたので、このチュートリアルを完了できます。これまでに、2 つの架空ユーザーを作成し、レポート サーバー上の適切なカタログ ロール権限とシステム ロール権限をこれらのユーザーに割り当てました。また、レポート モデル サンプルを配置し、AdventureWorks2008R2 データベースの読み取りにモデルが使用する、カスタマイズされたログインを作成しました。この架空ユーザーを後で使用して、行レベル セキュリティを割り当てます。
重要 |
---|
このチュートリアルを完了した後は、ユーザー アカウントをローカル コンピューターから削除し、付与した権限をすべて削除してください。 |
次のレッスンでは、Adventure Works のレポート モデル サンプルを開き、モデル デザイナーで既定のセキュリティ フィルターを作成します。「レッスン 2: 行レベル セキュリティの属性の作成」を参照してください。