The Keystone middleware architecture supports a common authentication protocol in use between the OpenStack projects. By using Keystone as a common authentication and authorization mechanism, the OpenStack project can plug in to existing authentication and authorization systems in use by existing environments.
The auth_token middleware is no longer hosted in Keystone and has moved to the keystonemiddleware project. The documentation regarding authentication middleware can be found there.