権限の評価
Access Analyzer を使用する場合の権限の評価基準です。
評価階層
選択したユーザー、グループ、ロールの権限は、次の階層で評価されます。
- ビジネスルール:ビジネスルールとは、レコードが表示、挿入、更新、または削除されるとき、またはテーブルに対してクエリが実行されるときに実行する、サーバー側スクリプトです。
- アクセスハンドラー:プラットフォーム上の非表示のソースコードを使用する内部システムチェックです。
- データフィルタリング:データフィルターは、インスタンスの既存のアクセス制御ルール (ACL) と連携して機能するように設計されたアクセス制御の形式です。データフィルターでは読み取り操作のみがサポートされます。
- アクセス制御リスト (ACL):アクセス制御リスト (ACL) のルールは、まず要件のセットをユーザーに要求し、その後でユーザーとやり取りできるようにすることで、データへのアクセスを制限します。ACL 内では、次の階層が評価されます。
- ロール
- セキュリティ属性
- 条件
- スクリプト
Access Analyzer を使用して、選択したユーザー、ロール、またはグループのアクセス権と権限を分析できます。権限は、次のルールタイプに基づいて評価されます。
- テーブルレベルの評価 (Table Level Evaluation):テーブルレベルの評価には、ロールとセキュリティ属性の ACL が使用されます。
- レコードまたはフィールドレベルの評価 (Record or Field level Evaluation):レコードまたはフィールドレベルの評価には、ロール、セキュリティ属性、条件、およびスクリプトレベルの ACL が使用されます。
- UI ページ:準備完了操作のみをサポートします。読み取りレベルの ACL のみが評価されます。
- REST エンドポイント (REST Endpoint):実行操作のみをサポートします。実行レベルの ACL のみが評価されます。
アクセス結果の重要なフィールドの詳細は次のとおりです。
- スクリプトの存在
- アクセス結果の凡例
- 評価プロセス
- IAccessHandler
- データフィルター
- アクセス制御リストのルール
スクリプトの存在
ステータスのアラートアイコンは ACL にスクリプトが存在することを示します。ハイライト表示された ACL を確認して、最終的なアクセス権を把握します。これらの制御を評価する方法の詳細を把握し、アクセスを決定するロジックを確認するには、「Access Analyzer のデバッグログ」を参照してください。
Access Analyzer の凡例
アクセスと権限を分析する際、評価プロセスの一部として凡例が表示されます。凡例は次のとおりです。
- [合格] アクセスが許可されました
- [ブロック済み] アクセスが拒否されました
- [スキップ] 評価しませんでした
- [未定義] ルールが見つかりませんでした
評価プロセス
評価プロセスは、ユーザーの代理操作を行い、リソースに対するアクセス制御リスト (ACL) 権限を決定することによって実行されます。次のチェックが true と評価された場合、権限ルールにより、指定されたリソースへのアクセスが有効になります。
- IAccessHandler は「合格」と評価されるか、空または未定義である必要がある
- データフィルターは「合格」と評価されるか、空または未定義である必要がある
- アクセス制御ルール (ACL) が「合格」と評価される
IAccessHandler
プラットフォーム上の非表示のソースコードを使用する内部システムチェック。IAccessHandler は、ACL を評価せずにリソースへのアクセスを許可または拒否できます。IAccessHandler が無視されると、ACL が評価されます。
IAccessHandler チェックは変更できません。たとえば、IAccessHandler 実装は読み取りアクセスなどのアプリケーションリソースのアクセスチェックに使用されます。
データフィルター
データフィルターは、インスタンスの既存のアクセス制御ルール (ACL) と連携して機能するように設計されたアクセス制御の形式です。
アクセス制御リストのルール
アクセス制御リスト (ACL) のルールは、まず要件のセットをユーザーに要求し、その後でユーザーとやり取りできるようにすることで、データへのアクセスを制限します。