Two-Point Authorization Engine with Revocable Sharing for Multitenant Environments
DOI:
https://doi.org/10.15407/intechsys.2026.03.102Keywords:
access control, authorization, multi-tenancy, resource scoping, cross-tenant sharing, access tokens, row-level security, .NETAbstract
Multi-tenant software-as-a-service (SaaS) platforms that contain tenant-partitioned data require authorization systems which cover scenarios where classic flat role-based access control (RBAC) fails. Specifically, these systems need to provide access to individual resources rather than whole sets of resources, controlled cross-tenant sharing, and account-less share links which can be revoked at any time. We present access-kit, an in-process authorization engine for the .NET platform built on an explicit model: principals, “area:verb” actions, composable deny-wins policy statements with inheritance, and a resource hierarchy. Enforcement is a co-designed pair of mechanisms which consist of an application-pipeline gate that rejects unauthorized actions outright and an object-relational mapper (ORM) row filter that filters the data to only include rows which are permitted to the current principal. The gate publishes per-request scope which is consumed by row filter, and this scope keeps the two mechanisms in agreement and therefore keeping error reporting consistent. As a result, a write on a readable-but-not-writable resource is refused as a forbidden action rather than disguised as a missing resource, preventing the existence of the resource from being leaked. In the developed framework, each request acts in a single active tenant, so access resolves to one flat statement set. Cross-tenant access is achieved by pulling the grants the active tenant owns, and a caller switches workspace (re-minting its token) to act in another permitted tenant. Account-less sharing is implemented by issuing a revocable, table-backed capability token. We give an analytic cost model and an evaluation measured on PostgreSQL: a batch chain-walk resolves effective access in a number of database round trips that is independent of how many grants a principal holds, and we compare it with a naive baseline and a single-query recursive-CTE alternative. The per-request cost is dominated by this resolution, while the in-memory gate adds negligible overhead; the cost model and measurements are given in Section 5. The engine is implemented as a generalized reference implementation with adapters for Entity Framework Core, MediatR, and ASP.NET Core.
References
Chong F., Carraro G., Wolter R. Multi-Tenant Data Architecture. Microsoft Developer Network, 2006.
Ferraiolo D.F., Sandhu R., Gavrila S., Kuhn D.R., Chandramouli R. Proposed NIST standard for role-based access control. ACM Transactions on Information and System Security, 2001, Vol. 4 (3), 224–274. https://doi.org/10.1145/501978.501980
Sandhu R.S., Coyne E.J., Feinstein H.L., Youman C.E. Role-based access control models. Computer, 1996, Vol. 29 (2), 38–47. https://doi.org/10.1109/2.485845
OWASP Foundation. OWASP API Security Top 10 API1:2023 Broken Object Level Authorization. 2023. URL: https://owasp.org/API-Security/ [Accessed Jun. 2026]
Hardy N. The Confused Deputy: or why capabilities might have been invented. ACM SIGOPS Operating Systems Review, 1988, Vol. 22 (4), 36–38. https://doi.org/10.1145/54289.871709
Hu V.C., Ferraiolo D., Kuhn R., et al. Guide to Attribute Based Access Control (ABAC) Definition and Considerations. NIST Special Publication 800-162, 2014. https://doi.org/10.6028/NIST.SP.800-162
Pang R., et al. Zanzibar: Google’s Consistent, Global Authorization System. USENIX Annual Technical Conference (ATC), 2019, 33–46.
OpenFGA Authors. OpenFGA: a high-performance and flexible authorization/permission engine. Cloud Native Computing Foundation, documentation, 2024. URL: https://openfga.dev [Accessed Jun. 2026]
Luo Y., et al. Casbin: an authorization library that supports access control models like ACL, RBAC, ABAC. Documentation, 2024. URL: https://casbin.org [Accessed Jun. 2026]
Oso Security. Polar: a declarative logic language for authorization. Documentation, 2024. URL: https://www.osohq.com [Accessed Jun. 2026]
Okta.Auth0. Auth0 Fine-Grained Authorization (FGA). Documentation, 2024. URL: https://auth0.com/fine-grained-authorization [Accessed June 2026]
Amazon Web Services. AWS Identity and Access Management User Guide policies and ABAC. 2024. URL: https://docs.aws.amazon.com/IAM/latest/UserGuide/ [Accessed Jun. 2026]
Cutler J.W., et al. Cedar: a New Language for Expressive, Fast, Safe, and Analyzable Authorization. ACM on Programming Languages, 2024, Vol. 8 (OOPSLA1), 670–697. https://doi.org/10.1145/3649835
Open Policy Agent Authors. Open Policy Agent (OPA) and the Rego policy language. Cloud Native Computing Foundation, documentation, 2024. URL: https://www.openpolicyagent.org [Accessed Jun. 2026]
Dennis J.B., Van Horn E.C. Programming semantics for multiprogrammed computations. Communications of the ACM, 1966, Vol. 9 (3), 143–155. https://doi.org/10.1145/365230.365252
Birgisson A., Politz J.G., Erlingsson Ú., Taly A., Vrable M., Lentczner M. Macaroons: Cookies with Contextual Caveats for Decentralized Authorization in the Cloud. Network and Distributed System Security Symposium (NDSS), 2014. https://doi.org/10.14722/ndss.2014.23212
PostgreSQL Global Development Group. PostgreSQL Documentation Row Security Policies. 2024. URL: https://www.postgresql.org/docs/current/ddl-rowsecurity.html [Accessed Jun. 2026]
Microsoft. Entity Framework Core Global Query Filters. Documentation, 2024. URL: https://learn.microsoft.com/ef/core/querying/filters [Accessed Jun. 2026]
Hardt D. (Ed.). RFC 6749: The OAuth 2.0 Authorization Framework. IETF, 2012, 75 p. https://doi.org/10.17487/RFC6749
Jones M., Nadalin A., Campbell B., Bradley J., Mortimore C. RFC 8693: OAuth 2.0 Token Exchange. IETF, 2020. https://doi.org/10.17487/RFC8693
Downloads
Published
How to Cite
Issue
Section
License
Copyright (c) 2026 Copyright Holder is the publisher of the Paper (The Institute of Information Technologies and Systems of the NAS of Ukraine), and/or the publisher of the Paper (PH "Akademperiodika" of the NAS of Ukraine), to that the The Institute of Information Technologies and Systems of the NAS of Ukraine on the basis of a sublicense publishing agreement granted the right to publish the work and the right to indicate the publisher after the copyright sign.

This work is licensed under a Creative Commons Attribution-NonCommercial-NoDerivatives 4.0 International License.
The paper is an Open Access under the CC BY-NC-ND 4.0 license - Attribution-NonCommercial-NoDerivatives 4.0 International.