Checks answer whether one subject has one permission on one resource, while lookups search for all subjects or resources that satisfy a permission relationship. Lookups usually cost more because they must explore more subproblems and often traverse intersections or exclusions. For load testing, both should be represented because they stress different parts of the system.
Why This Matters for Security Teams
Authorization performance testing is not just about speed. It is about proving that the permission model behaves correctly when the system is under pressure and when identity data is large, messy, and unevenly distributed. A simple check path should be fast and predictable, while a lookup path can expand into broad searches across subjects, resources, roles, or policy exceptions. That difference matters because the slow path often becomes the hidden bottleneck during audit workflows, access review jobs, and admin consoles. NHI-heavy environments make this sharper: NHIs outnumber human identities by 25x to 50x in modern enterprises, and Ultimate Guide to NHIs — What are Non-Human Identities explains why the identity surface grows so quickly. In practice, teams usually discover lookup latency only after production reporting, not during design-time capacity planning.How It Works in Practice
A check answers a narrow question: does this subject have this permission on this resource right now? A lookup asks the system to discover all matching subjects, resources, or relationships for a permission pattern. That means checks usually exercise a single authorization decision path, while lookups exercise search, filtering, intersection, and sometimes exclusion logic across much larger data sets. For performance testing, that difference changes the test plan:- Use checks to measure decision latency for app requests, API calls, and policy evaluation at the point of use.
- Use lookups to measure administrative queries, access review screens, entitlement discovery, and reporting workloads.
- Test both under realistic cardinality, because a lookup over thousands of service accounts behaves very differently from a lookup over a small group.
- Include cache-hit and cache-miss cases, since lookups often depend on indexes, materialized views, or denormalised relationship graphs.
Common Variations and Edge Cases
Tighter authorization testing often increases harness complexity, so teams have to balance fidelity against test cost. A small service may treat checks and lookups as nearly identical, but that assumption fails once policy evaluation depends on graph traversal, relationship intersections, or negative constraints. Current guidance suggests a few practical distinctions:- If the user experience is request driven, prioritise checks.
- If the user experience includes dashboards, admin search, or access reviews, prioritise lookups.
- If policies include inherited roles or delegated administration, treat lookups as a separate scalability risk.
- If service accounts and API keys are the dominant identities, include large entitlement sets because lookup cost grows with identity volume.
Standards & Framework Alignment
This section maps relevant standards and security frameworks to the operational risks and controls described in this guidance.
OWASP Non-Human Identity Top 10 address the attack and risk surface, while NIST CSF 2.0, NIST AI RMF and NIST Zero Trust (SP 800-207) set the governance and control requirements practitioners need to meet.
| Framework | Control / Reference | Relevance |
|---|---|---|
| OWASP Non-Human Identity Top 10 | NHI-02 | Checks and lookups both expose NHI authorization paths and performance bottlenecks. |
| NIST CSF 2.0 | PR.AC-1 | Authorization testing validates that access decisions are enforced as intended. |
| NIST AI RMF | Reliable authorization systems need measured performance and operational monitoring. | |
| NIST Zero Trust (SP 800-207) | Zero Trust requires runtime decisions that are validated for both correctness and speed. |
Benchmark both decision checks and relationship lookups against NHI-02 using realistic identity and entitlement volumes.
Related resources from NHI Mgmt Group
- What is the difference between declarative authorization policies and embedding permission checks directly in application code?
- What is the difference between role-based access control and attribute-based access control in AI agent authorization?
- What is the difference between early-stage mobile app testing and enterprise-grade mobile security assurance?
- What is the difference between admin-time authorization and run-time authorization?
Deepen Your Knowledge
Reviewed and updated by the NHIMG editorial team on September 1, 2026.
NHI Mgmt Group — the #1 independent authority on Non-Human Identity, IAM, and Agentic AI security. nhimg.org