Tech Due Diligence SEC-4: Authorization and Access Control
What This Control Requires
The assessor evaluates the authorisation model, including role-based or attribute-based access control implementation, the principle of least privilege, API-level authorisation enforcement, and the prevention of privilege escalation and insecure direct object references.
In Plain Language
Authentication tells you who someone is. Authorisation decides what they are allowed to do. Getting this wrong means users can see data they should not see, perform actions above their role, or access other users' resources entirely.
In a DD review, we examine how your authorisation model works in practice: is it RBAC, ABAC, or something custom? How are roles and permissions defined and managed? Critically, is authorisation enforced at the API and service level, or only in the UI? We check for Insecure Direct Object Reference (IDOR) vulnerabilities, review the admin access model and separation of privileges, and verify whether authorisation decisions are logged for audit purposes.
IDOR vulnerabilities are among the most common and impactful findings in due diligence. These occur when a user can access another user's resources simply by changing an ID in an API call. We specifically test for this by checking whether API endpoints validate that the authenticated user actually has rights to the requested resource, not merely that they are logged in.
How to Implement
Choose an authorisation model that fits your application's complexity. Role-Based Access Control (RBAC) is the right starting point for most products: define roles (admin, manager, member, viewer), map permissions to each role, and enforce those permissions at the application layer. If your requirements are more nuanced, consider Attribute-Based Access Control (ABAC), which evaluates multiple attributes (role, resource ownership, time, location) for each decision.
Enforce authorisation at the API and service level, never just the UI. Hiding a button in the frontend is not security - users can call your APIs directly. Every endpoint that accesses or modifies data must verify the authenticated user holds the right permissions.
Prevent IDOR vulnerabilities by validating resource ownership on every single request. When a user hits /api/documents/123, check not just that they are authenticated but that document 123 actually belongs to their organisation or that they have explicit access. Never rely on ID obscurity for security.
Apply least privilege rigorously: users get the minimum permissions their role requires, admin access is time-limited and separately authenticated, service accounts have narrowly scoped permissions, and permissions are reviewed when roles change.
Log all authorisation decisions, particularly denials and privilege changes. These logs are essential for security monitoring, incident investigation, and compliance auditing.
Test authorisation thoroughly. Write automated tests that verify users cannot access resources or perform actions outside their role. Include authorisation testing in your penetration test scope. Test horizontal privilege escalation (user A accessing user B's data at the same privilege level) as well as vertical escalation (a regular user reaching admin functions).
Maintain an audit trail for permission changes: who granted or revoked access, when, and why. For sensitive permission changes, implement approval workflows.
Evidence Your Auditor Will Request
- Authorisation model documentation (roles, permissions, enforcement points)
- API-level authorisation enforcement implementation evidence
- IDOR prevention measures and testing results
- Access control testing as part of penetration test or dedicated assessment
- Authorisation audit logging configuration
Common Mistakes
- Authorisation enforced only at the UI level; API endpoints lack permission checks
- IDOR vulnerabilities present: users can access others' resources by changing IDs
- Admin functionality accessible without proper authorisation checks
- No audit logging of authorisation decisions or permission changes
- Roles are too coarse; all users effectively have the same permissions
Related Controls Across Frameworks
Frequently Asked Questions
RBAC or ABAC: which should we implement?
How should we handle IDOR prevention?
Track Tech Due Diligence compliance in one place
AuditFront helps you manage every Tech Due Diligence control, collect evidence, and stay audit-ready.
Start Free Assessment