Les Hazlewood's blog

Apache Shiro Stormpath Integration!

Stormpath is pleased to announce a formal integration with Apache Shiro, a leading Java security framework with over 200,000 downloads.

This integration allows an Apache Shiro-enabled application use the Stormpath cloud Identity Management service for all authentication and access control needs. Shiro has been growing exponentially in 2012 and we are excited to provide a useful plugin – for free!

 

Explosive Growth in Apache Shiro 

Top Six Reasons to Use API Keys (and How!)

While working on the redesign for our new Stormpath dashboard, our head of Marketing asked a good question:

I just saw a video on Devloper API experience where the presenter's strong recommendations (per work on the Google APIs) was that APIs not require an API key. Since we already support authenticating users with username/password to Stormpath, would it be feasible for us to eliminate the concept of an API Key? I want to remove as much complexity as possible from the getting started process. 

Unfortunately, whoever advocated this viewpoint (of not using API keys) probably didn't manage a secure system (possibly because they didnt need to?).   So I thought I would share my thoughts on why Stormpath secures our API with API Keys (and so do others, like Amazon Web Services, and you should too). I also included some best practices for how we handle API keys.

How LinkedIn Could Have Secured Hacked Passwords

Various sources reported today that LinkedIn suffered a major security breach: allegedly, 6.5 million hashed passwords were leaked by a Russian hacker.

But this naturally raises big concerns for web developers: if one of the largest social networks, with all of their engineers, could have a password security breach,

How do I keep user passwords secure?

Spring MVC REST Exception Handling Best Practices (part 1)

If you're already using Spring to build your application, and you need to serve a ReST API, Spring MVC can be a good choice to write your REST endpoints.

However, representing errors or problems cleanly in a RESTful way may not be immediately obvious since Spring MVC is so often referenced for building user interfaces. Because there is no direct UI concept in REST APIs, how then do you use Spring MVC to represent errors or problems in a clean and intuitive way?

Strong Password Hashing: Part 2

In my first post on Strong Password Hashing, we discussed that the solution for the most common way to secure passwords, even with the possibility of brute force attacks, was to incorporate a computation time component.  This technique essentially makes the password hashing process computationally expensive such that an attacker using brute force would have to spend a relatively enormous amount of time attacking the passwords.

Pages

Subscribe to RSS - Les Hazlewood's blog