Nawiązując do artykuły z SDN Oracle – http://developers.sun.com/identity/reference/techart/restwebservices.html – “Securing REST Web Services with OAuth” (Malla Simhachalam, with contributions from Rick Palkovic, August 2009) można zauważyć potrzebą zabezpieczenia protokołu REST. Najpopularniejsze rozwiązania to zabezpieczenie na poziomie transportowym (Transport-level Security tzw. TLS/SSL) ale wymaga on podania konta/hasła użytkownika lub innej delegacji jego tożsamości. Nie jest to bezpieczne, ponieważ użytkownik odkrywa serwisowy swoje poświadczenia. Dlatego stosuje się otwarty protokół OAuth (OAuth website) i pozwala użytkownikowi (service consumer) na bezpieczny (sprawdzany przez stronę trzecią) dostęp do serwera (service provider) bez konieczności ujawniania swoich poświadczeń. A tak realnie to wykorzystywane są dwie biblioteki:
- Project Jersey (implementacja specyfikacji JAX-RS (JSR 311 API) for REST web services) wraz z rozszerzeniami OAuth,
- OpenSSO – implementacja SUN tzw. identity access management for the enterprise
To wszystko “chodzi” na serwerze aplikacyjnym Glassfish i bazie Derby (ta służy do przechowywania żetonów identyfikacyjnych)
Źródło: http://developers.sun.com/identity/reference/techart/restwebservices.html