OpenID AuthenticationHandlerPage edited by Felix MeschbergerChanges (15)
Full ContentOpenID AuthenticationHandler
AuthenticationHandler implementation | AuthenticationHandlerFeedback implementation | Phase 1: Form Submission | Phase 2: Authenticated Requests | Configuration | Integration with Jackrabbit | Security Considerations
The OpenID Authentication Handler supports authentication of request users using the OpenID authentication protocol. If the user has successfully authenticated with his OpenID provider a signed OpenID identity is further used to identify the user. Since generally an OpenID identity is an URL and URLs may not be used as JCR user names, an association mechanism is used by the OpenID authentication handler to associate an OpenID identity with an existing JCR user: The OpenID identity URL is set as the value of a JCR user property. When a user authenticates with his OpenID identity the matching user searched for by looking for a match in this property. NOTE: This association currently only works with Jackrabbit (or Jackrabbit based repositories) because user management is not part of the JCR 2 specification and the OpenID authentication handler uses the Jackrabbit UserManager to find users by a user property value. The OpenID Authentication Handler is maintained in the Sling SVN AuthenticationHandler implementation
AuthenticationHandlerFeedback implementation
Phase 1: Form SubmissionThe form is rendered by redirecting the client to the URL indicated by the form.login.form configuration parameter. This redirection request may accompanyied by the following parameters:
The Form Based Authentication handlers supports the following request parameters submitted by the HTML form:
The OpenID Authentication Handler provides a default login form registered at /system/sling/openid/login. Phase 2: Authenticated RequestsWork in progress .... ConfigurationThe OpenID AuthenticationHandler is configured with configuration provided by the OSGi Configuration Admin Service using the org.apache.sling.openidauth.OpenIdAuthenticationHandler service PID.
Integration with JackrabbitThe OpenID authentication handler can be integrated in two ways into the Jackrabbit authentication mechanism which is based on JAAS LoginModule. One integration is by means of a LoginModulePlugin which plugs into the extensible LoginModule architecture supported by the Sling Jackrabbit Embedded Repository bundle. The other integration option is the trusted_credentials_attribute mechanism supported by the Jackrabbit DefaultLoginModule. By setting the trusted_credentials_attribute parameter of the Jackrabbit DefaultLoginModule and the openid.user.attr configuration property of the OpenID Authentication Handler to the same value, the existence of an attribute of that name in the SimpleCredentials instance provided to the Repository.login method signals pre-authenticated credentials, which need not be further checked by the DefaultLoginModule. Security ConsiderationsWork in progress .... OpenIDAuthentication has some limitations in terms of security:
To prevent eavesdroppers from sniffing the credentials or stealing the Cookie a secure transport layer should be used such as TLS/SSL, VPN or IPSec.
Change Notification Preferences
View Online
|
View Changes
|
Add Comment
|
- [CONF] Apache Sling Website > OpenID AuthenticationHandler confluence
- [CONF] Apache Sling Website > OpenID AuthenticationHand... confluence
- [CONF] Apache Sling Website > OpenID AuthenticationHand... confluence
- [CONF] Apache Sling Website > OpenID AuthenticationHand... confluence
- [CONF] Apache Sling Website > OpenID AuthenticationHand... confluence
- [CONF] Apache Sling Website > OpenID AuthenticationHand... confluence
- [CONF] Apache Sling Website > OpenID AuthenticationHand... confluence
- [CONF] Apache Sling Website > OpenID AuthenticationHand... confluence
- [CONF] Apache Sling Website > OpenID AuthenticationHand... confluence
