Professional Project Competency Management

API Authentication
(click image to enlarge)
/images/0000/1511/Picture_33.png

The login to this system is unique in that it authenticates against another .NET system using SOAP.

I wrote an API module that adds behavior to a NLA class, so things like NLA.process_login(u, p) can be called to do all of the grunt work of the web-service authentication.

When a user logs in, the system will authenticate against the other system, getting back either the SOAP representation of the user or nil. If a user is returned, the system then checks to see if that particular user was cached in the local DB. If not, the user is cached; if it was already there, the user is synchronized with the data provided by NLA. This ensures that profiles and such are maintained across both systems.

I probably had the most fun working and testing the API/authentication module than anything else in the application. I love writing wrappers like that in Ruby.

by Ryan Heath Last updated 1 day ago

Copyright © 2009 Ryan Heath | Services | Resumé A Ruby on Rails production with strict XHTML and valid CSS.

This portfolio is a Formed Function. Formed Function LLC | @formedfunction

Portfolio Management