Cyberkern
Roles & tenants3 minSource review 05.10.2026

Testing access control and tenant isolation

A customer portal must assign data and functions to the right people. Prepare meaningful authorisation testing for software products, managed systems and business applications.

The question authorisation testing answers

Authentication establishes an identity. Authorisation then determines which action that identity may perform on a particular record. OWASP recommends checking these rules on every request and denying access by default when no appropriate permission exists.

For a software provider, the business questions are specific: can customer A edit only their own orders? May a read-only project role export files? Can support staff access only the customers assigned to them? A working sign-in process does not answer those questions. [2]

A small matrix makes expectations explicit

We recommend starting with the functions that matter most to the business. The planning matrix below is not a test result or a description of a real customer application. It illustrates how expected permissions can be recorded clearly before testing.

  • List the permitted actions and data boundaries for each role.
  • Record the owner or tenant of each test dataset.
  • Treat reading, editing, deleting and exporting as separate actions.
  • Include exceptional permissions, temporary grants and role changes.
Illustrative expected-permissions matrix for a customer portal
Test identityExpected permitted accessExpected restriction
Customer ARead their own approved documentsDocuments belonging to customer B
Read-only project roleView assigned project informationChange or delete project information
Authorised support roleSupport the customer area approved for the engagementCustomer areas outside that assignment

Prepare suitable accounts and test data

The test environment needs distinguishable identities and records. For object access, OWASP describes several users with separately owned objects and, where relevant, different privileges as a useful basis.

Provide meaningful test data for the agreed workflows. Empty accounts, for example, offer little basis for examining document exports. Record which data belongs to which account and which functions are actually used in production. Share credentials only through the agreed secure channel.

Project owners should confirm expected permissions with the person responsible for the business process before testing starts. If the product and support teams disagree about what a role is meant to do, an unexpected result cannot be classified confidently as a defect. [1]

Distinguish sign-in, passkeys and sessions from permissions

Assess workflows across the routes people use

A portal may provide the same information through its interface, an API and an export function. Include the relevant routes together in the scope. Hiding a menu item does not establish that the corresponding action is blocked on the server.

For IT providers serving several customers, we also recommend recording responsibility: who authorises the testing, who operates the application and who decides the business rules? Permission from one customer does not automatically cover other customers on a shared service. Make those test boundaries explicit.

Choose the right scope between an external check and a penetration test

Make results usable for the people fixing them

A useful finding connects the tested role, the action, the affected data boundary and the expected rule. The development team can then understand the observed difference without first reconstructing the entire permissions design.

For retesting, also identify the software version and permission relationship to be checked again. After a correction, the legitimate workflow still matters. Blocking every request may stop an unauthorised action while also making the required feature unusable.

Record combinations that were not tested separately. This keeps the result useful for release decisions and subsequent changes. The required depth follows the agreed application functions; an external configuration check alone cannot establish these permission relationships.

Turn findings into clear remediation and retesting decisions

Related reading

Sources & further reading

  1. OWASP WSTG v4.2 · Testing for Insecure Direct Object References
  2. OWASP Cheat Sheet Series · Authorization

Primary sources checked on 05.10.2026.

Sources and limitations are identified in the article.

Related assessment

Pentesting & Attack Emulation

Explore the service scope

Contact

Please do not send credentials or confidential information.

* Required field