Description
OACC (pronounced Oak) is an advanced Java Application Security Framework. OACC provides a high-performance access control API that provides permission based authorization services for Java application objects.
It has support for hierarchical domains, super users, permission inheritance and impersonation.
In a nutshell, OACC allows your application to enforce security by answering the question:
OACC Framework alternatives and similar libraries
Based on the "Security" category.
Alternatively, view OACC Framework alternatives based on common mentions on social networks and blogs.
-
Cryptomator
Cryptomator for Windows, macOS, and Linux: Secure client-side encryption for your cloud storage, ensuring privacy and control over your data. -
pac4j
Security engine for Java (authentication, authorization, multi frameworks): OAuth, CAS, SAML, OpenID Connect, LDAP, JWT... -
Themis by Cossack Labs
Easy to use cryptographic framework for data protection: secure messaging with forward secrecy and secure data storage. Has unified APIs across 14 platforms. -
Nimbus JOSE+JWT
JSON Web Token (JWT) implementation for Java with support for signatures (JWS), encryption (JWE) and web keys (JWK). -
Vault
Secures, stores, and tightly controls access to tokens, passwords, certificates, API keys, and other secrets. It handles leasing, key revocation, key rolling, and auditing. Through a unified API, users can access an encrypted Key/Value store and network encryption-as-a-service, or generate AWS IAM/STS credentials, SQL/NoSQL databases, X.509 certificates, SSH credentials, and more.
CodeRabbit: AI Code Reviews for Developers

* Code Quality Rankings and insights are calculated and provided by Lumnify.
They vary from L1 to L5 with "L5" being the highest.
Do you think we are missing an alternative of OACC Framework or a related project?
README
OACC Java Application Security Framework
What is OACC?
OACC - pronounced [oak] - is a fully featured API to both enforce and manage your application's authentication and authorization needs.
In a nutshell, OACC provides permission-based authorization services and allows your application to enforce security by answering the question:
Is entity 'A' allowed to perform action 'p' on entity 'B'?
Features
Fully implemented API
All the functionality to manage your application's security model, out of the box.Single access-control paradigm
Always operate at the resource level. Manage permissions exclusively between resources.Flexible security model
Secure any operation between your domain objects and the actors on them.Permission delegation
Authorize subjects to delegate their permissions to others with GRANT OPTIONS.Identity delegation
Authorize an authenticated subject to securely "impersonate" another subject.Efficient query methods
Find resources by permission with efficient symmetric query methods.
Learn more about all of OACC's authorization and authentication features on the Features page of the project website.
License
OACC is open source software released under the commercial friendly Apache License, Version 2.0.
Supported Environments
OACC persists all security relationships in database tables and currently supports the following databases:
- IBM DB2 10.5
- Microsoft SQL Server 12.0 (2014)
- Oracle 11g R2
- PostgreSQL 9.3
- HSQLDB 2.3
- MySQL 5.6 / MariaDB 10.0
- SQLite 3.8
OACC is compatible with Java™ SE 7 (Java™ version 1.7.0), or higher.
Get Started
The easiest way to include the latest OACC release into your project is to declare the following Maven coordinates as a dependency in your POM file:
<dependency>
<groupId>com.acciente.oacc</groupId>
<artifactId>acciente-oacc</artifactId>
<version>2.0.0</version>
</dependency>
To install, configure and initialize the OACC database, please refer to the Get Started Tutorial on the project website.
The SecureTodo sample application illustrates how to integrate OACC into a Java application and how to address several real-world authorization scenarios. The writeup is also available in the Github repository that contains the full source code.
Documentation
You can find more information about OACC, including the latest Javadocs, releases, and tutorials on the project website: oaccframework.org.
About Acciente
Acciente, LLC is a software company located in Scottsdale, Arizona specializing in systems architecture and software design for medium to large scale software projects.
*Note that all licence references and agreements mentioned in the OACC Framework README section above
are relevant to that project's source code only.