Opened 10 years ago

Closed 8 years ago

Last modified 8 years ago

#1599 closed enhancement (fixed)

Convert authentication plug-in system to an extension point

Reported by: Nicklas Nordborg Owned by: Nicklas Nordborg
Priority: minor Milestone: BASE 3.3
Component: core Version:
Keywords: Cc:

Description

Instead of specifying a class name (and jar path if patched with #1575) the base.config can simply reference the id of an extensions to that extension point. If only a single extension exists, that extension should be used automatically. The change also mean that the authenticator interface should be changed.

Change History (12)

comment:2 Changed 10 years ago by Nicklas Nordborg

Milestone: BASE 3.0BASE Future Release

comment:3 Changed 8 years ago by Nicklas Nordborg

Milestone: BASE Future ReleaseBASE 3.3
Owner: changed from everyone to Nicklas Nordborg
Status: newassigned

comment:4 Changed 8 years ago by Nicklas Nordborg

(In [6423]) References #1599: Convert authentication plug-in system to an extension point

Created extension point for authentication. Extensions should implement the AuthenticationAction interface. The old Authenticator interface is deprecated but it should not be difficult to convert existing authenticators to the new system. Login information is now sent using LoginRequest object via the AuthenticationContext object.

comment:5 Changed 8 years ago by Nicklas Nordborg

(In [6424]) References #1599: Convert authentication plug-in system to an extension point

Avoid calling deprecated methods.

Added OldAuthenticationWrapperFactory for backwards compatibility with old external authentication implementations.

comment:6 Changed 8 years ago by Nicklas Nordborg

(In [6425]) References #1599: Convert authentication plug-in system to an extension point

Re-designed the authentication process a bit to make it possible to return more information about the authentication back to the core.

Authentication managers should now return a AutheniticatedUser object instead of AuthenticationInformation (which is deprecated).

Introduced AuthenticationMethod which is stored in the SessionControl for potential use by client applications to allow/disallow user actions based on the authentication method used.

Introduced ExtraUserInformation which also allow extended properties to be synchronized with user accounts.

comment:7 Changed 8 years ago by Nicklas Nordborg

(In [6426]) References #1599: Convert authentication plug-in system to an extension point

Adding extension point for customizing the login form.

comment:8 Changed 8 years ago by Nicklas Nordborg

(In [6427]) References #1599: Convert authentication plug-in system to an extension point

Adding some more capabilities to the AuthenticationContext, SessionControl and LoginRequest that makes it possible to query for a list of users and internal login based on the user id (saves a query to the database).

comment:9 Changed 8 years ago by Nicklas Nordborg

(In [6428]) References #1599: Convert authentication plug-in system to an extension point

Added a boolean flag to extended-properties.xml file to make it possible to mark some properties as editable by an administrator only.

comment:10 Changed 8 years ago by Nicklas Nordborg

(In [6429]) References #1599: Convert authentication plug-in system to an extension point

Updated documentation.

comment:11 Changed 8 years ago by Nicklas Nordborg

Resolution: fixed
Status: assignedclosed

comment:12 Changed 8 years ago by Nicklas Nordborg

(In [6437]) References #1599: Convert authentication plug-in system to an extension point

Need to override login method in PluginSessionControl to prevent a plug-in from swithcing to another user.

Note: See TracTickets for help on using tickets.