Difference between revisions of "KeystoneR1"
Line 6: | Line 6: | ||
== Summary == | == Summary == | ||
[[OpenStack]] Identity service (Keystone; https://launchpad.net/keystone). | [[OpenStack]] Identity service (Keystone; https://launchpad.net/keystone). | ||
+ | |||
+ | Proposed API Spec ([[DevGuide]]; https://github.com/khussein/keystone/raw/master/keystone/content/identitydevguide.pdf) | ||
See also: [[AuthMiddlewareSpec]]; http://wiki.openstack.org/openstack-authn | See also: [[AuthMiddlewareSpec]]; http://wiki.openstack.org/openstack-authn | ||
Line 36: | Line 38: | ||
=== Release 1 - Early June 2011 === | === Release 1 - Early June 2011 === | ||
− | Rackspace Auth protocol, endpoints, | + | Rackspace Auth protocol, endpoints, tenants, multiple-tenenats per user |
+ | |||
+ | Use case data flow:https://github.com/khussein/keystone/raw/master/docs/design/flow_diagram.png | ||
+ | |||
+ | Proposed API Spec: https://github.com/khussein/keystone/raw/master/keystone/content/identitydevguide.pdf | ||
=== Code Changes === | === Code Changes === | ||
− | + | New code for Keystone service. | |
− | |||
− | |||
− | + | Adapters and patches to Nova, Swift, and Glance | |
− | |||
− | |||
− | |||
== Test/Demo Plan == | == Test/Demo Plan == | ||
− | + | Tests will be included in code. | |
− | |||
− | |||
− | |||
− | |||
== BoF agenda and discussion == | == BoF agenda and discussion == | ||
− | + | See project Keystone; https://launchpad.net/keystone on Launchpad for list of links to Etherpad and other discussions. | |
---- | ---- | ||
[[Category:Spec]] | [[Category:Spec]] |
Revision as of 16:48, 24 May 2011
- Launchpad Entry: KeystoneSpec; https://blueprints.launchpad.net/keystone/+spec/openstack-identity-service
- Created:
- Contributors: ziad-sawalha, jorgew, khussein, anotherjesse
Summary
OpenStack Identity service (Keystone; https://launchpad.net/keystone).
Proposed API Spec (DevGuide; https://github.com/khussein/keystone/raw/master/keystone/content/identitydevguide.pdf)
See also: AuthMiddlewareSpec; http://wiki.openstack.org/openstack-authn
See also: AuthSpec; http://wiki.openstack.org/AuthnAuthz
Release Note
This first release is intended to address existing use cases for authentication and identity in Nova and Swift (and planned integration with Glance and other core or affiliated services). The goal is to be able to download the set of OpenStack services and be able to run them as an integrated suite. Keystone will provide the common identity components (user store, authentication service, endpoint management, and middleware to integrate with services.
Rationale
For OpenStack to be a cohesive suite, a common identity store and integration middleware is needed.
User stories
- As someone considering OpenStack, I can download the code, follow simple instructions, and get the stack up and running to test the capabilities and APIs and play around with the dashboard and mobile apps without heavy, external dependencies.
- As a service developer, I don't need to develop authentication code. I just plug in the Keystone middleware and my service can support a variety of pluggable authentication protocols and identity providers.
Assumptions
Design
Python service modeled after other OpenStack services. Using pluggable protocol and backend model (see Burrow), WSGI, and eventlet.
Support RackspaceAuth; http://docs.rackspacecloud.com/files/api/v1/cfdevguide_d5/content/ch03s01.html protocol.
AnyScale - runs on one laptop and can be scaled for production load.
Implementation
Release 1 - Early June 2011
Rackspace Auth protocol, endpoints, tenants, multiple-tenenats per user
Use case data flow:https://github.com/khussein/keystone/raw/master/docs/design/flow_diagram.png
Proposed API Spec: https://github.com/khussein/keystone/raw/master/keystone/content/identitydevguide.pdf
Code Changes
New code for Keystone service.
Adapters and patches to Nova, Swift, and Glance
Test/Demo Plan
Tests will be included in code.
BoF agenda and discussion
See project Keystone; https://launchpad.net/keystone on Launchpad for list of links to Etherpad and other discussions.