Skip to main content
  • Log in
  • Manage Cookies
projects.eclipse.org
Download
  • Projects
  • Working Groups
  • Members
  • Community
    • Marketplace
    • Events
    • Planet Eclipse
    • Newsletter
    • Videos
    • Blogs
  • Participate
    • Report a Bug
    • Forums
    • Mailing Lists
    • Wiki
    • IRC
    • Research
  • Eclipse IDE
    • Download
    • Learn More
    • Documentation
    • Getting Started / Support
    • How to Contribute
    • IDE and Tools
    • Newcomer Forum
  • More
      • Community

      • Marketplace
      • Events
      • Planet Eclipse
      • Newsletter
      • Videos
      • Blogs
      • Participate

      • Report a Bug
      • Forums
      • Mailing Lists
      • Wiki
      • IRC
      • Research
      • Eclipse IDE

      • Download
      • Learn More
      • Documentation
      • Getting Started / Support
      • How to Contribute
      • IDE and Tools
      • Newcomer Forum
  1. Home
  2. Projects
  3. Eclipse EE4J
  4. Eclipse Exousia
  5. Eclipse Exousia
  6. Creation Review

Eclipse Exousia Creation Review

Type: 
Creation
State: 
Successful
End Date of the Review Period: 

Reviews run for a minimum of one week. The outcome of the review is decided on this date. This is the last day to make comments or ask questions about this review.

Wednesday, April 21, 2021
Project: 
Eclipse Exousia
Proposal: 

Eclipse Exousia

Parent Project: 
Eclipse EE4J
Background: 

Many Jakarta specifications have a standalone implementation, but not all. Jakarta Authorization is a spec that does not have a standalone implementation. Instead an implementation is embedded within GlassFish, which is for the advancement and maintenance of the spec suboptimal. As project lead of Jakarta Authorization and as a GlassFish committer I've created an initial standalone project based on the GlassFish embedded code, which can be used to seed the new project with.

As that code comes from the GlassFish project, which is already at Eclipse, this is largely a restructuring review. We will split the implementation out from the existing GlassFish project into its own separate Eclipse open source project. Specifically, the directory containing the implementation code for the default authorization module (https://github.com/eclipse-ee4j/glassfish/tree/master/appserver/security/inmemory.jacc.provider) and the algorithms (https://github.com/eclipse-ee4j/glassfish/tree/master/appserver/security/core-ee/src/main/java/com/sun/enterprise/security/authorize among others) will be split from the GlassFish project into a separate repository managed by the new project.

Scope: 

Eclipse Exousia provides an implementation of the Jakarta Authorization specification.

Description: 

Eclipse Exousia implements Jakarta Authorization, a technology that defines a low-level SPI for authorization modules, which are repositories of permissions facilitating subject based security by determining whether a given subject has a given permission, and algorithms to transform security constraints for specific containers (such as Jakarta- Servlet or Enterprise Beans) into these permissions.

Eclipse Exousia provides default implementations of these authorization modules and algorithms, as defined and mandated by the Jakarta Authorization specification.

Why Here?: 

Eclipse EE4J is the home of GlassFish. The restructured code should remain in the same community, just in a separate project.

Initial Contribution: 

The project's existing code will come from https://github.com/omnifaces/exousia This repositry on its turn has been created from a combination of my own code and the above mentioned code from the GlassFish project. For instance, see files such as these: https://github.com/omnifaces/exousia/blob/master/src/main/java/org/omnifaces/exousia/permissions/RolesToPermissionsTransformer.java

Licenses: 
Eclipse Public License 2.0
一 (Secondary) GNU General Public License, version 2 with the GNU Classpath Exception
Project Scheduling: 

The initial contribution will be made immidiately after the project has been approved. The first build will be expected in a few weeks, after which the intention is to remove the code that was moved to this project from GlassFish, and add a dependency from GlassFish to this project.

Future Work: 

The functionality to add will follow the requirements of the Jakarta Authorization specification, which on its turn will largely follow the requirements and direction set by the Jakarta platform specification and the Jakarta Security specification.

Community growth around the project is thought to be faciliatated by the fact that the standalone implementation will also work on servlet containers like Apache Tomcat, Piranha Cloud and potentially Eclipse Jetty. The project will not intend to provide features not covered by the Jakarta Authorization specification, but instead will make sure that it integrates well with servers like GlassFish and Tomcat.

People
Project Leads: 
Arjan Tijms
Committers: 
Arjan Tijms
Guillermo González de Agüero
Gurkan Erdogdu
Mentors: 
Ivar Grimstad
  • Sign in to post comments.
  • Sign in to post comments.
Incubating - Eclipse Exousia

Related Projects

Related Projects:

  • Eclipse EE4J
    • Eclipse Soteria
    • Jakarta Authorization™

Project Hierarchy:

  • Eclipse EE4J
  • Eclipse Exousia

Tags

Build Technologies
  • Maven
Other Tags
  • authorization security

Eclipse Foundation

  • About Us
  • Contact Us
  • Donate
  • Members
  • Governance
  • Code of Conduct
  • Logo and Artwork
  • Board of Directors

Legal

  • Privacy Policy
  • Terms of Use
  • Copyright Agent
  • Eclipse Public License
  • Legal Resources

Useful Links

  • Report a Bug
  • Documentation
  • How to Contribute
  • Mailing Lists
  • Forums
  • Marketplace

Other

  • IDE and Tools
  • Projects
  • Working Groups
  • Research@Eclipse
  • Report a Vulnerability
  • Service Status

Copyright © Eclipse Foundation. All Rights Reserved.

Back to the top