From df49b1dd7182f2c2205912a637cf02e91eec7ab5 Mon Sep 17 00:00:00 2001 From: Ziad Sawalha Date: Wed, 1 Jun 2011 05:06:51 -0500 Subject: Support POST /tokens only - issue #5 --- README.md | 8 ++++++-- docs/guide/src/docbkx/identitydevguide.xml | 6 +++--- keystone/content/identitydevguide.pdf | Bin 287930 -> 285331 bytes keystone/db/sqlalchemy/api.py | 1 + keystone/server.py | 9 ++++----- 5 files changed, 14 insertions(+), 10 deletions(-) diff --git a/README.md b/README.md index 8c4e45f7..d9f2ed35 100644 --- a/README.md +++ b/README.md @@ -199,7 +199,7 @@ in troubleshooting: # Get a token for a tenant - $ curl -d '{"passwordCredentials": {"username": "joeuser", "password": "secrete", "tenant": "1234"}}' -H "Content-type: application/json" http://localhost:8081/v2.0/tokens + $ curl -d '{"passwordCredentials": {"username": "joeuser", "password": "secrete", "tenantId": "1234"}}' -H "Content-type: application/json" http://localhost:8081/v2.0/tokens #### Load Testing @@ -207,7 +207,7 @@ in troubleshooting:
    # Create post data
 
-   $ echo '{"passwordCredentials": {"username": "joeuser", "password": "secrete", "tenant": "1234"}}' > post_data
+   $ echo '{"passwordCredentials": {"username": "joeuser", "password": "secrete", "tenantId": "1234"}}' > post_data
 
    # Call Apache Bench
 
@@ -230,6 +230,10 @@ Initial support for using keystone as nova's identity component has been started
 
 Assuming you added the test data using bin/sampledata.sh, you can then use joeuser/secrete
 
+## SWIFT Integration
+
+See swift-quick-start.txt in docs folder
+
 ## I want OpenStack (all of it)
 
 To get an opinionated install of nova, keystone, dashboard and glance using openstack apis:
diff --git a/docs/guide/src/docbkx/identitydevguide.xml b/docs/guide/src/docbkx/identitydevguide.xml
index cb67b683..5af5c532 100644
--- a/docs/guide/src/docbkx/identitydevguide.xml
+++ b/docs/guide/src/docbkx/identitydevguide.xml
@@ -60,7 +60,7 @@
 	
 	API v2.0
 	Keystone - OpenStack Identity
-	2011-05-27
+	2011-06-01
 	
 		
 			Copyright details are filled in by the template.
@@ -756,7 +756,7 @@ Host: identity.api.openstack.org/v1.1/
 			   
 				  &GET; 
 				 /tenants
-				 Get a list of tenants accessible with suplied token.
+				 Get a list of tenants accessible with supplied token.
 			   
 			 
 			 
@@ -865,7 +865,7 @@ Host: identity.api.openstack.org/v1.1/
 			 
 			   
 				  &GET; 
-				 /tokens
+				 /tokens/tokenId
 				 Validate a token.
 			   
              
diff --git a/keystone/content/identitydevguide.pdf b/keystone/content/identitydevguide.pdf
index ce4207aa..b3a7f978 100644
Binary files a/keystone/content/identitydevguide.pdf and b/keystone/content/identitydevguide.pdf differ
diff --git a/keystone/db/sqlalchemy/api.py b/keystone/db/sqlalchemy/api.py
index 6676c101..a0ad533b 100644
--- a/keystone/db/sqlalchemy/api.py
+++ b/keystone/db/sqlalchemy/api.py
@@ -711,6 +711,7 @@ def user_role_add(values):
 
 
 def user_tenant_create(values):
+    #TODO(ZIAD): Update model / fix this
     user_tenant_ref = models.UserTenantAssociation()
     user_tenant_ref.update(values)
     user_tenant_ref.save()
diff --git a/keystone/server.py b/keystone/server.py
index 6f4a333b..678f71eb 100644
--- a/keystone/server.py
+++ b/keystone/server.py
@@ -573,10 +573,8 @@ class KeystoneAPI(wsgi.Router):
 
         # Token Operations
         mapper.connect("/v2.0/tokens", controller=auth_controller,
-                       action="authenticate")
-        mapper.connect("/v2.0/tokens/{token_id}", controller=auth_controller,
-                        action="delete_token",
-                        conditions=dict(method=["DELETE"]))
+                       action="authenticate",
+                       conditions=dict(method=["POST"]))
 
         # Tenant Operations
         tenant_controller = TenantController(options)
@@ -639,7 +637,8 @@ class KeystoneAdminAPI(wsgi.Router):
         # Token Operations
         auth_controller = AuthController(options)
         mapper.connect("/v2.0/tokens", controller=auth_controller,
-                       action="authenticate")
+                       action="authenticate",
+                       conditions=dict(method=["POST"]))
         mapper.connect("/v2.0/tokens/{token_id}", controller=auth_controller,
                         action="validate_token",
                         conditions=dict(method=["GET"]))
-- 
cgit