Security クラス
名前空間
使用方法
現在のユーザーの作成、参照、更新、または更新/挿入のアクセス権限のコンテキストでは、Security クラスのメソッドを使用して、次の操作を行います。
- クエリおよびサブクエリの結果から非表示の項目を削除する
- 例外を発生することなく、DML 操作の前にアクセスできない項目を削除する
- 信頼されないソースからのデシリアライズされた sObject をサニタイズする
Security のメソッド
Security のメソッドは次のとおりです。
stripInaccessible(accessCheckType, sourceRecords, enforceRootObjectCRUD)
ソースレコードから、現在のユーザーの項目レベルセキュリティチェックに失敗した項目が除外された sObject のリストを作成します。このメソッドでは、オブジェクトレベルのアクセス権チェックを適用するオプションも提供されます。
署名
public static System.SObjectAccessDecision stripInaccessible(System.AccessType accessCheckType, List<SObject> sourceRecords, Boolean enforceRootObjectCRUD)
パラメーター
- accessCheckType
- 型: System.AccessType
- AccessType 列挙の値を使用します。このパラメーターは、実行される項目レベルのアクセスチェックの種別を決定します。現在のユーザーの項目レベルのアクセス権を確認するには、Schema.DescribeFieldResult メソッド — isCreatable()、isAccessible()、または isUpdatable() を使用します。
- sourceRecords
- 型: List<SObject>
- 現在のユーザー操作のコンテキストで、アクセスできない項目についてチェックされる sObject のリスト。
- enforceRootObjectCRUD
- 型: Boolean
- オ���ジェクトレベルのアクセスチェックを実行するかどうかを示します。このパラメーターが true に設定されていて、アクセスチェックが失敗した場合、メソッドは例外をスローします。この省略可能なパラメーターのデフォルト値は true です。
戻り値
例
この例では、ユーザーに商談の Probability 項目を作成する権限はありません。
stripInaccessible(accessCheckType, sourceRecords)
署名
public static System.SObjectAccessDecision stripInaccessible(System.AccessType accessCheckType, List<SObject> sourceRecords)
パラメーター
- accessCheckType
- 型: System.AccessType
- AccessType 列挙の値を使用します。このパラメーターは、実行される項目レベルのアクセスチェックの種別を決定します。現在のユーザーの項目レベルのアクセス権を確認するには、Schema.DescribeFieldResult メソッド — isCreatable()、isAccessible()、または isUpdatable() を使用します。
- sourceRecords
- 型: List<SObject>
- 現在のユーザー操作のコンテキストで、アクセスできない項目についてチェックされる sObject のリスト。
戻り値
例
この例では、ユーザーにキャンペーンの ActualCost 項目を読み取る権限はありません。