Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

JCR authentication is based on ServletCredentials that are passed through from the REST endpoint. The place to start looking at this is the SessionFactory, which retrieves the transaction session or formulates a repository login attempt from the servlet request. Repository logins are based on a extensible credentials object. In ModeShape logins may be implemented by many implementations of an AuthenticationProvider interface. Fedora includes an ServletAuthenticationProvider that checks requests for a Fedora user role of either fedoraUser or fedoraAdmin before permitting Session creation.

Extension Point: AuthenticationProvider

The AuthenticationProvider is a ModeShape interface that allows implementations to authenticate JCR sessions on the basis of custom credentials.

See https://docs.jboss.org/author/display/MODE/Custom+authentication+providers

Reference Implementation: ServletAuthenticationProvider

Fedora ships with a AuthenticationProvider that checks for proper Fedora user roles before Session creation.

 

Authorization (DRAFT)

Fedora 4 will intercept JCR operations in order to enforce policies that are based on the Fedora object model and other node characteristics. While a single Fedora API call may span several JCR operations, these will be joined by a JCR transaction and may all fail together due to a permission check.

...