How to design authentication in a thick client, to be fail safe?

Posted by Jay on Stack Overflow See other posts from Stack Overflow or by Jay
Published on 2010-06-15T22:20:45Z Indexed on 2010/06/15 22:22 UTC
Read the original article Hit count: 220

Here's a use case:

I have a desktop application (built using Eclipse RCP) which on start, pops open a dialog box with 'UserName' and 'Password' fields in it. Once the end user, inputs his UserName and Password, a server is contacted (a spring remote-servlet, with the client side being a spring httpclient: similar to the approaches here.), and authentication is performed on the server side.

A few questions related to the above mentioned scenario:

  1. If said this authentication service were to go down, what would be the best way to handle further proceedings? Authentication is something that I cannot do away with. Would running the desktop client in a "limited" mode be a good idea? For instance, important features/menus/views will be disabled, rest of the application will be accessible?
  2. Should I have a back up authentication service running on a different machine, working as a backup?
  3. What are the general best-practices in this scenario? I remember reading about google gears and how it would let you edit and do stuff offline - should something like this be designed?

Please let me know your design/architectural comments/suggestions. Appreciate your help.

© Stack Overflow or respective owner

Related posts about java

Related posts about best-practices