OpenID Integration Add-on

I have published initial support for integrating Vaadin and OpenID in the Directory:
http://vaadin.com/directory#addon/openid-integration

Using this Add-on, you can let your users use OpenID to log in to your Vaadin application using e.g. their Google or Yahoo logins.

This Add-on is in a very early development stage, but the most critical functionality is already working. An incomplete TODO-list includes:

  1. Support for OpenID attributes, e.g. asking the OpenID provider to provide the email address or name of the logged in user.
  2. Caching of OpenID discovery requests to avoid the same HTTP round trips every time a login URL is generated.
  3. A user interface for using a preconfigured OpenID provider or letting the user enter their own OpenID.

Please refer to the OpenidTestApplication class for an example on how to use the integration.

At this point, feedback, bug reports and feature requests can be entered in this forum thread.

Very interesting. Given that you are under the Apache license, I presume you don’t mind letting us browse the source ? Can you add a link to the source in your entry for the Vaadin add-on ?

The source code in is included in the .jar-file in the Directory.

Perhaps you should include the words “authenticate” and “authentication” in your description, so this Add-on will appear when people search more generally.

Thank you for the suggestion! I have now rephrased parts of the description to include some relevant keywords.

I can also give a little teaser: 2 out of the 3 items on the TODO list are almost completed. You can expect version 0.2.0 with OpenID attributes and discovery caching within a week.

Good work! I will follow your work and consider including it in my application. Thank you!

As promised, version 0.2.0 has now been uploaded to the directory.

The main visible change is that the integration now supports
OpenID Attribute Exchange
, letting you ask the OpenID provider for some basic information (e.g. email address, name and country) about the logged in user. Inclusion of the feature has also caused a breaking change in the API, although that should be expected considering the matureness of the code. No further breakages are planned, though I can’t promise anything.

The new version also includes caching of discovery results, which should help improve the performance.

I’m also considering changing the packaging in an upcoming release to include the required third party OpenID library. Would you prefer having the library .jar file included in a .zip file or would you prefer having the library included in the addon .jar using
Jar Jar Links
? I’m leaning towards using jarjar as the usage of the library is fully internal to the addon and should according to my plans never be exposed to the library user.

Do you plan to continue developing this addon? Have you considered using github to track the changes and for easier collaboration?
Thanks for the useful software!

Yes, I do have some plans for additional features, e.g. building a default UI for selecting from one of the most popular OpenID providers or entering your own OpenID string. I have however been busy with other projects recently.

Regarding project hosting, I’ve been considering using GitBug or Google’s project hosting with svn.

Hi Leif
I have tried the Plugin and have some comments about the plugin

  1. The plugin seems to work. I tested the class OpenidTestApplication and got it running.

  2. About the zip file with dependencies.
    It seems not to be necessary to add the zip file to the plugin
    Adding dependency

    com.dyuproject
    dyuproject-openid
    1.1.7

    Made my test work.

  3. I would like to see screenshuts added to the plugin, so we can see what the plugin produces

  4. I would like to see the OpenidTestApplication in an stand alone demo pom, so that the plugin only contained the pluging running code.
    Honestly I am not so familier with other Vaadin plugins, if they contains demo code as well, then let be.

  5. As you write selecting OpenId vendor. Yes that is a want to have feature.

  6. Potentially using a openid selector javascript library. (http://code.google.com/p/openid-selector/)
    What could be the core reason for having a vaadin component

  7. Support for login process. Message screen to show users on howto enter an OpenId etc.

  8. Support for session integration. There must be some way to make the browser understand that it is authetication information that is wanted. So the browser can auto fill in OpenId for the domain.

All together I think there is room for making a more complete versions 0.3 … to 1.0

Best regards
Anders

Hello. Can this add-on work with other OpenId provider as OpenASelect?

Thanks.

Hello, I was using this add-on with vaadin 6, and I would like to use it with vaadin 7, unfortunately it needs to be ‘linked’ with a Vaadin application… (or LegacyApplication)

would it be possible to have this add on to work with an UI class instead ?

Thanks !