yahoo-eng-team team mailing list archive
-
yahoo-eng-team team
-
Mailing list archive
-
Message #65853
[Bug 1687593] Re: Create OAUTH request token gives 401 error when request url is admin endpoint
The functional tests that we added to verify this fix are being run
against the stable branches, causing them to break because neither
stable/ocata or stable/newton have the fix posted here. This was found
and reported in https://bugs.launchpad.net/keystone/+bug/1704148.
** Also affects: keystone/ocata
Importance: Undecided
Status: New
** Also affects: keystone/newton
Importance: Undecided
Status: New
** Changed in: keystone/newton
Status: New => In Progress
** Changed in: keystone/ocata
Status: New => In Progress
** Changed in: keystone/newton
Importance: Undecided => High
** Changed in: keystone/ocata
Importance: Undecided => High
** Changed in: keystone
Importance: Undecided => Medium
** Changed in: keystone/newton
Assignee: (unassigned) => Lance Bragstad (lbragstad)
** Changed in: keystone/ocata
Assignee: (unassigned) => Lance Bragstad (lbragstad)
--
You received this bug notification because you are a member of Yahoo!
Engineering Team, which is subscribed to OpenStack Identity (keystone).
https://bugs.launchpad.net/bugs/1687593
Title:
Create OAUTH request token gives 401 error when request url is admin
endpoint
Status in OpenStack Identity (keystone):
Fix Committed
Status in OpenStack Identity (keystone) newton series:
In Progress
Status in OpenStack Identity (keystone) ocata series:
In Progress
Status in python-keystoneclient:
In Progress
Bug description:
Create request token API returns 401 error when the request URL is
admin endpoint.
Error scenario:
URL used to generate OAUTH signature and for POST request is Keystone admin endpoint
http://<keystone ip:port>/identity_admin/v3/OS-OAUTH1/request_token
Working scenario:
When the URL used to generate OAUTH signature is public endpoint, then the response is 201.
http://<keystone ip:port>/identity/v3/OS-OAUTH1/request_token
Endpoints in devstack for identity:
ocata@ocata-VirtualBox:~/devstack$ openstack endpoint list | grep identity
| 549f73e17b0e471e95176bb508561bb3 | RegionOne | keystone | identity | True | internal | http://192.168.56.101/identity |
| 739cda51666f4ab197241beac5c5c14c | RegionOne | keystone | identity | True | admin | http://192.168.56.101/identity_admin |
| a0eb39c0ecff46c3b61bc6184c42bc13 | RegionOne | keystone | identity | True | public | http://192.168.56.101/identity
Steps to reproduce the problem:
Run the python script in the below link (by changing the necessary credentials and IP address)
https://pastebin.com/AqL9674n
If #L38 is modified to public endpoint (http://<keystone
ip:port>/identity/v3/OS-OAUTH1/request_token), the status code is 201.
Seems like Keystone code verifies the OAUTH signature using Public
endpoint irrespective of the request URL.
To manage notifications about this bug go to:
https://bugs.launchpad.net/keystone/+bug/1687593/+subscriptions
References