Open棟梁Project - マイクロソフト系技術情報 Wiki
目次  †
概要  †
特権(アクセス許可)
- 特権にアクセス レベルを設定、
 
- 部署やチームを作成、ユーザを追加し、
 
- セキュリティ ロールを使用する。
 
補完モデル  †
監査機能  †
データやシステム構成(設定、セキュリティ構成)に加えられた変更・変更したユーザを記録する。
メリット  †
- カスタマイズ作業内容の把握、プロセスに従って作業しているかを確認できる。
 
- 弱体化したセキュリティ構成変更を特定するのに役立つ。
 
- 設定を変更前の値に戻す場合に役立つ。
 
デメリット  †
- SQLServerに設定が必要になる。
 
- 追加データが生成され運用コストが増加する。
 
フィールド セキュリティ  †
- システム エンティティ、カスタム エンティティのフィールドの表示・編集等のアクセスを制限
 
- レコードレベルのセキュリティロールとは異なり、
より詳細なフィールド レベルのユーザ アクセス許可を制御 
スコープ  †
クライアント  †
すべてのクライアント
表示・編集方法  †
すべての表示・編集方法
- レポート
 
- 簡易表示
 
- グラフ
 
- フィルタービュー
 
- データ インポート ウィザード
 
- 監査ログ、重複データ検出
 
- SDKからのアクセス
 
実装方法  †
フィールド カスタマイズ フォームでフィールド セキュリティを有効にできる。
フィールド セキュリティを有効にした場合  †
動作  †
UIの変更  †
- フォーム エディター
ラベルに鍵マークが表示され、一部のユーザはアクセスできないフィールドであることをシステム カスタマイザーに知らせる。 
- フォーム
ラベルに鍵マークが表示され、一部のユーザはアクセスできないフィールドであることをユーザに知らせる。
- 編集アクセス許可が無い場合、
フィールド横に南京錠マークが表示され、読み取り専用であることをユーザに知らせる。 
- 表示アクセス許可が無い場合、
南京錠マークに加え、フィールド値が****で表示され、読み取り不可であることをユーザに知らせる。 
 
- ビュー
- 表示アクセス許可が無い場合、
フィールドは空になる? 
 
フィールド セキュリティ プロファイル  †
システム管理者以外のユーザにアクセス許可を与える。
設定方法  †
- アクセス許可の種類
- 読み取り:フィールドのデータを参照可能。
 
- 更新:アップデート時にフィールドのデータを入力可能。
 
- 作成:インサート時にフィールドのデータを入力可能。
 
 
- アクセス許可の設定方法
- ユーザやチームをフィールド セキュリティ プロファイルに追加する。
 
- フィールド セキュリティ プロファイルにフィールドと対応するアクセス許可を設定する。
 
 
システム管理者フィールド セキュリティ プロファイル  †
このプロファイルは、
- すべてのフィールド セキュリティを有効にしたフィールドへのアクセス許可がある。
 
- ユーザ・チームの追加
- システム管理者ユーザ・チームが自動的に追加される。
 
- その他、任意のユーザ・チームを手動で追加できる。
 
 
- 削除不可能
- プロファイル自体
 
- プロファイルに追加されたシステム管理者ユーザ・チーム
 
 
- ソリューションのフィールド セキュリティ プロファイル一覧に表示されない。
 
フィールド セキュリティ プロファイルの作成  †
- フィールド セキュリティ プロファイルの作成
- フィールド セキュリティを有効にしたフィールドを含むソリューションを開く
 
- ソリューション エクスプローラーで[フィールド セキュリティ プロファイル]をクリックする。
 
- メニューバーで[新規]をクリックする。
 
- 新しいプロファイルの名前・説明を入力する。
 
- ツールバーの[保存]をクリックする。
 
 
- フィールド セキュリティ プロファイルにユーザ・チームを追加
- フィールド セキュリティ プロファイルのナビゲーション ウィンドウで[ユーザ] or [チーム]をクリックする。
 
- メニュー バーの[追加]をクリックする。
 
- プロファイルに追加するユーザ・チームを選択する。
 
- [選択]をクリックし[選択したレコード]ボックスに追加。
 
- [追加]をクリックする。
 
- 手順を繰り返してプロファイルにユーザ・チームを追加する。
 
 
- フィールドのアクセス許可の設定
- フィールド セキュリティ プロファイルのナビゲーション ウィンドウで[フィールドのアクセス許可]をクリックする。
 
- アクセス許可を変更するフィールドを選択する(複数選択可能)。
 
- メニューバーの[編集]をクリックする。
 
- アクセス許可の種類([読み取りを許可]、[更新を許可]、[作成を許可])の
ドロップダウンリストから[あり] or [なし]を選択する。 
- [OK]をクリックする。
 
- 手順を繰り返してフィールドにアクセス許可を設定する。
 
 
- [フィールド セキュリティ プロファイル]ツール バーの[保存して閉じる]をクリックする。
 
セキュリティ ロールとフィールド セキュリティ  †
セキュリティの対象と制御方法  †
特定のレコードのフィールドに対してユーザに許可されるアクセスは、
以下の3種類のセキュリティの対象と制御方法をANDしたものになる。
AND  †
- セキュリティ ロール・共有は、フィールド セキュリティを拡張しない。
 
- 共有はセキュリティ ロールのスコープを拡大するが、
- ユーザのアクセス許可は拡張しない。
 
- アクセス レベルは拡張しない(ユーザ レベル以上が持っていない特権は変更できない)。
 
 
- フィールド セキュリティは
 
- レコードの特権(アクセス許可)を拡張しない。
 
- レコードのアクセス レベルを拡張しない。
 
アクセス チーム テンプレート  †
- アクセス チームを作成し同僚をレコードに簡単にリンクすることで通常持たないアクセス許可を与える。
 
- 共有(アクセス レベルは適用されない)に似ているが、こちらの方が中央のアクセス許可の定義を容易に適用可能。
 
共有の問題解決  †
アクセス チーム テンプレートは、以下の共有の問題を解決する。
問題  †
- 共有の度に、共有するユーザに[共有]ダイアログ ボックスを使用してアクセス許可を付与する必要がある。
 
- [共有]ダイアログ ボックスを開かないと、共有されたレコードに誰がアクセスできるか判断できない。
 
解決  †
[共有]ダイアログ ボックスを開く必要がない。
- システム カスタマイザーの用意したアクセス許可セットを使用して、
共有するユーザに迅速にアクセス許可を付与することができる。 
- 迅速に、共有レコードにアクセス可能なユーザの確認と編集ができる。
- レコードに対するアクセス権を持つユーザの一覧を出力できる。
 
- 特権を持つユーザは、一覧からのユーザとアクセス権を変更できる。
 
 
アクセス チーム テンプレートの構成  †
- エンティティのアクセス チームを有効にして変更を公開する。
 
- アクセス チーム テンプレートを作成してアクセス許可を定義する。
 
- エンティティのフォームでユーザ追加して表示するサブグリッドを追加する。
 
- このサブグリッドは、1つのアクセス チーム テンプレートに関連付けられる。
 
アクセス チーム テンプレートの設定内容  †
- 名前
 
- 説明
 
- アクセス権
- 削除
 
- 追加
 
- ,etc(セキュリティ ロールや共有で称されるアクセス許可と同じ)
 
 
- 対象エンティティ
- 1つのエンティティに複数のアクセス チーム テンプレートを作成できる。
 
- この最大値は、PowerShellで変更可能
- MaxAutoCreatedAccessTeamsPerEntity?:定義可能なアクセス チーム テンプレート数
 
- MaxEntitiesEnabledForAutoCreatedAccessTeams?:有効にできるアクセス チーム テンプレート数
 
 
 
アクセス チームの生成  †
- アクセス チームは、ユーザをサブグリッドに追加することで自動生成される。
- この操作は”レコードにアクセス チーム メンバを追加する”と言う。
 
 
- ”アクセス チーム メンバを追加する”ユーザは、
- レコードにレコードに対する共有特権が必要。
 
- アクセス チーム テンプレートに含まれるすべてのアクセス許可が必要。
 
- 標準の共有でも、共有するユーザの持っている以上のアクセス許可は付与できない。
 
 
- ”アクセス チーム メンバに追加される”ユーザは、
- アクセス チーム テンプレートに含まれるすべてのユーザ レベルのアクセス許可が必要。
 
- 標準の共有では、共有されるユーザの持っている以上のアクセス許可を付与できる。
 
 
- アクセス チーム テンプレートに共有特権があると、
すべてのアクセス チーム メンバは、アクセス チーム メンバを追加できるようになる。 
- アクセス チームにより、
- レコード レベルでは、各ユーザと個別に共有されなくなる。
 
- しかし、エンティティ レベルでは、各ユーザと個別の共有が可能のままである。
エンティティのコマンド バーをカスタマイズして、共有用のボタンを削除/非表示にすることはできる。
これは、エンティティのコマンド バーを定義するリボンXMLのカスタマイズにより行う。 
 
- アクセス チーム名は、
"レコードGUID" + "サブグリッドに関連付けられたアクセス チーム テンプレートのGUID" になる。 
- これにより生成されるチームの
- 種類は、アクセス チームとなり、
 
- [システムで管理されている]プロパティは、"はい"に設定される。
 
- この設定のチームは、チームの既定のビューでは表示されない。
 
 
監査機能  †
監査機能のレベル  †
3つのレベルで監査機能を有効にできる。
組織レベル  †
- 有効化:[設定] ---> [管理] ---> [システムの設定] ---> [監査]
 
- 用途:システム レベルの変更が監査対象になり、不正な変更、誤った変更の判断・修正を支援する。
 
エンティティ レベル  †
フィールド レベル  †